qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Tim Wiederhake <twiederh@redhat.com>
To: qemu-devel@nongnu.org
Cc: "Philippe Mathieu-Daudé" <philmd@linaro.org>,
	"Daniel P . Berrangé" <berrange@redhat.com>,
	"Paolo Bonzini" <pbonzini@redhat.com>,
	"Michael S . Tsirkin" <mst@redhat.com>,
	"Tim Wiederhake" <twiederh@redhat.com>
Subject: [PATCH v2 05/10] target/i386: Translate feature_word_info to yaml
Date: Fri,  8 Sep 2023 14:45:29 +0200	[thread overview]
Message-ID: <20230908124534.25027-6-twiederh@redhat.com> (raw)
In-Reply-To: <20230908124534.25027-1-twiederh@redhat.com>

This is the data file that will be used to generate the C code.
All information, including the comments, is preserved.

Signed-off-by: Tim Wiederhake <twiederh@redhat.com>
---
 target/i386/feature_word_info.yaml | 695 +++++++++++++++++++++++++++++
 1 file changed, 695 insertions(+)
 create mode 100644 target/i386/feature_word_info.yaml

diff --git a/target/i386/feature_word_info.yaml b/target/i386/feature_word_info.yaml
new file mode 100644
index 0000000000..cd6cdc8053
--- /dev/null
+++ b/target/i386/feature_word_info.yaml
@@ -0,0 +1,695 @@
+- index: FEAT_1_EDX
+  cpuid:
+    eax: '1'
+    reg: R_EDX
+  feat_names:
+    0: fpu
+    1: vme
+    2: de
+    3: pse
+    4: tsc
+    5: msr
+    6: pae
+    7: mce
+    8: cx8
+    9: apic
+    11: sep
+    12: mtrr
+    13: pge
+    14: mca
+    15: cmov
+    16: pat
+    17: pse36
+    18: pn          # Intel psn
+    19: clflush     # Intel clfsh
+    21: ds          # Intel dts
+    22: acpi
+    23: mmx
+    24: fxsr
+    25: sse
+    26: sse2
+    27: ss
+    28: ht          # Intel htt
+    29: tm
+    30: ia64
+    31: pbe
+  tcg_features: TCG_FEATURES
+  type: CPUID_FEATURE_WORD
+
+- index: FEAT_1_ECX
+  cpuid:
+    eax: '1'
+    reg: R_ECX
+  feat_names:
+    0: pni          # Intel,AMD sse3
+    1: pclmulqdq
+    2: dtes64
+    3: monitor
+    4: ds-cpl
+    5: vmx
+    6: smx
+    7: est
+    8: tm2
+    9: ssse3
+    10: cid
+    12: fma
+    13: cx16
+    14: xtpr
+    15: pdcm
+    17: pcid
+    18: dca
+    19: sse4.1
+    20: sse4.2
+    21: x2apic
+    22: movbe
+    23: popcnt
+    24: tsc-deadline
+    25: aes
+    26: xsave
+    # 27: osxsave
+    28: avx
+    29: f16c
+    30: rdrand
+    31: hypervisor
+  tcg_features: TCG_EXT_FEATURES
+  type: CPUID_FEATURE_WORD
+
+# Feature names that are already defined on feature_name[] but are set on
+# CPUID[8000_0001].EDX on AMD CPUs don't have their names on feat_names below.
+# They are copied automatically to features[FEAT_8000_0001_EDX] if and only if
+# CPU vendor is AMD.
+- index: FEAT_8000_0001_EDX
+  cpuid:
+    eax: '0x80000001'
+    reg: R_EDX
+  feat_names:
+    # 0: fpu
+    # 1: vme
+    # 2: de
+    # 3: pse
+    # 4: tsc
+    # 5: msr
+    # 6: pae
+    # 7: mce
+    # 8: cx8
+    # 9: apic
+    11: syscall
+    # 12: mtrr
+    # 13: pge
+    # 14: mca
+    # 15: cmov
+    # 16: pat
+    # 17: pse36
+    # 19: Linux mp
+    20: nx
+    22: mmxext
+    # 23: mmx
+    # 24: fxsr
+    25: fxsr-opt
+    26: pdpe1gb
+    27: rdtscp
+    29: lm
+    30: 3dnowext
+    31: 3dnow
+  tcg_features: TCG_EXT2_FEATURES
+  type: CPUID_FEATURE_WORD
+
+- index: FEAT_8000_0001_ECX
+  cpuid:
+    eax: '0x80000001'
+    reg: R_ECX
+  feat_names:
+    0: lahf-lm
+    1: cmp-legacy
+    2: svm
+    3: extapic
+    4: cr8legacy
+    5: abm
+    6: sse4a
+    7: misalignsse
+    8: 3dnowprefetch
+    9: osvw
+    10: ibs
+    11: xop
+    12: skinit
+    13: wdt
+    15: lwp
+    16: fma4
+    17: tce
+    19: nodeid-msr
+    21: tbm
+    22: topoext
+    23: perfctr-core
+    24: perfctr-nb
+  # TOPOEXT is always allowed but can't be enabled blindly by "-cpu host", as
+  # it requires consistent cache topology info to be provided so it doesn't
+  # confuse guests.
+  no_autoenable_flags: CPUID_EXT3_TOPOEXT
+  tcg_features: TCG_EXT3_FEATURES
+  type: CPUID_FEATURE_WORD
+
+- index: FEAT_C000_0001_EDX
+  cpuid:
+    eax: '0xC0000001'
+    reg: R_EDX
+  feat_names:
+    2: xstore
+    3: xstore-en
+    6: xcrypt
+    7: xcrypt-en
+    8: ace2
+    9: ace2-en
+    10: phe
+    11: phe-en
+    12: pmm
+    13: pmm-en
+  tcg_features: TCG_EXT4_FEATURES
+  type: CPUID_FEATURE_WORD
+
+- index: FEAT_KVM
+  cpuid:
+    eax: KVM_CPUID_FEATURES
+    reg: R_EAX
+  feat_names:
+    0: kvmclock
+    1: kvm-nopiodelay
+    2: kvm-mmu
+    3: kvmclock2
+    4: kvm-asyncpf
+    5: kvm-steal-time
+    6: kvm-pv-eoi
+    7: kvm-pv-unhalt
+    9: kvm-pv-tlb-flush
+    11: kvm-pv-ipi
+    12: kvm-poll-control
+    13: kvm-pv-sched-yield
+    14: kvm-asyncpf-int
+    15: kvm-msi-ext-dest-id
+    24: kvmclock-stable-bit
+  tcg_features: TCG_KVM_FEATURES
+  type: CPUID_FEATURE_WORD
+
+- index: FEAT_KVM_HINTS
+  cpuid:
+    eax: KVM_CPUID_FEATURES
+    reg: R_EDX
+  feat_names:
+    0: kvm-hint-dedicated
+  # KVM hints aren't auto-enabled by -cpu host, they need to be explicitly
+  # enabled in the command-line.
+  no_autoenable_flags: ~0U
+  tcg_features: TCG_KVM_FEATURES
+  type: CPUID_FEATURE_WORD
+
+- index: FEAT_SVM
+  cpuid:
+    eax: '0x8000000A'
+    reg: R_EDX
+  feat_names:
+    0: npt
+    1: lbrv
+    2: svm-lock
+    3: nrip-save
+    4: tsc-scale
+    5: vmcb-clean
+    6: flushbyasid
+    7: decodeassists
+    10: pause-filter
+    12: pfthreshold
+    13: avic
+    15: v-vmsave-vmload
+    16: vgif
+    25: vnmi
+    28: svme-addr-chk
+  tcg_features: TCG_SVM_FEATURES
+  type: CPUID_FEATURE_WORD
+
+- index: FEAT_7_0_EBX
+  cpuid:
+    eax: '7'
+    ecx: '0'
+    needs_ecx: 'true'
+    reg: R_EBX
+  feat_names:
+    0: fsgsbase
+    1: tsc-adjust
+    2: sgx
+    3: bmi1
+    4: hle
+    5: avx2
+    7: smep
+    8: bmi2
+    9: erms
+    10: invpcid
+    11: rtm
+    14: mpx
+    16: avx512f
+    17: avx512dq
+    18: rdseed
+    19: adx
+    20: smap
+    21: avx512ifma
+    22: pcommit
+    23: clflushopt
+    24: clwb
+    25: intel-pt
+    26: avx512pf
+    27: avx512er
+    28: avx512cd
+    29: sha-ni
+    30: avx512bw
+    31: avx512vl
+  tcg_features: TCG_7_0_EBX_FEATURES
+  type: CPUID_FEATURE_WORD
+
+- index: FEAT_7_0_ECX
+  cpuid:
+    eax: '7'
+    ecx: '0'
+    needs_ecx: 'true'
+    reg: R_ECX
+  feat_names:
+    1: avx512vbmi
+    2: umip
+    3: pku
+    # 4: ospke
+    5: waitpkg
+    6: avx512vbmi2
+    8: gfni
+    9: vaes
+    10: vpclmulqdq
+    11: avx512vnni
+    12: avx512bitalg
+    14: avx512-vpopcntdq
+    16: la57
+    22: rdpid
+    24: bus-lock-detect
+    25: cldemote
+    27: movdiri
+    28: movdir64b
+    30: sgxlc
+    31: pks
+  tcg_features: TCG_7_0_ECX_FEATURES
+  type: CPUID_FEATURE_WORD
+
+- index: FEAT_7_0_EDX
+  cpuid:
+    eax: '7'
+    ecx: '0'
+    needs_ecx: 'true'
+    reg: R_EDX
+  feat_names:
+    2: avx512-4vnniw
+    3: avx512-4fmaps
+    4: fsrm
+    8: avx512-vp2intersect
+    10: md-clear
+    14: serialize
+    16: tsx-ldtrk
+    # 18: pconfig
+    19: arch-lbr
+    22: amx-bf16
+    23: avx512-fp16
+    24: amx-tile
+    25: amx-int8
+    26: spec-ctrl
+    27: stibp
+    28: flush-l1d
+    29: arch-capabilities
+    30: core-capability
+    31: ssbd
+  tcg_features: TCG_7_0_EDX_FEATURES
+  type: CPUID_FEATURE_WORD
+
+- index: FEAT_7_1_EAX
+  cpuid:
+    eax: '7'
+    ecx: '1'
+    needs_ecx: 'true'
+    reg: R_EAX
+  feat_names:
+    4: avx-vnni
+    5: avx512-bf16
+    7: cmpccxadd
+    10: fzrm
+    11: fsrs
+    12: fsrc
+    21: amx-fp16
+    23: avx-ifma
+  tcg_features: TCG_7_1_EAX_FEATURES
+  type: CPUID_FEATURE_WORD
+
+- index: FEAT_7_1_EDX
+  cpuid:
+    eax: '7'
+    ecx: '1'
+    needs_ecx: 'true'
+    reg: R_EDX
+  feat_names:
+    4: avx-vnni-int8
+    5: avx-ne-convert
+    8: amx-complex
+    14: prefetchiti
+  tcg_features: TCG_7_1_EDX_FEATURES
+  type: CPUID_FEATURE_WORD
+
+- index: FEAT_7_2_EDX
+  cpuid:
+    eax: '7'
+    ecx: '2'
+    needs_ecx: 'true'
+    reg: R_EDX
+  feat_names:
+    5: mcdt-no
+  tcg_features: TCG_7_2_EDX_FEATURES
+  type: CPUID_FEATURE_WORD
+
+- index: FEAT_8000_0007_EDX
+  cpuid:
+    eax: '0x80000007'
+    reg: R_EDX
+  feat_names:
+    8: invtsc
+  tcg_features: TCG_APM_FEATURES
+  type: CPUID_FEATURE_WORD
+  unmigratable_flags: CPUID_APM_INVTSC
+
+- index: FEAT_8000_0008_EBX
+  cpuid:
+    eax: '0x80000008'
+    reg: R_EBX
+  feat_names:
+    0: clzero
+    2: xsaveerptr
+    9: wbnoinvd
+    12: ibpb
+    14: ibrs
+    15: amd-stibp
+    17: stibp-always-on
+    24: amd-ssbd
+    25: virt-ssbd
+    26: amd-no-ssb
+    28: amd-psfd
+  tcg_features: TCG_8000_0008_EBX
+  type: CPUID_FEATURE_WORD
+  unmigratable_flags: '0'
+
+- index: FEAT_8000_0021_EAX
+  cpuid:
+    eax: '0x80000021'
+    reg: R_EAX
+  feat_names:
+    0: no-nested-data-bp
+    2: lfence-always-serializing
+    6: null-sel-clr-base
+    8: auto-ibrs
+  tcg_features: '0'
+  type: CPUID_FEATURE_WORD
+  unmigratable_flags: '0'
+
+- index: FEAT_XSAVE
+  cpuid:
+    eax: '0xd'
+    ecx: '1'
+    needs_ecx: 'true'
+    reg: R_EAX
+  feat_names:
+    0: xsaveopt
+    1: xsavec
+    2: xgetbv1
+    3: xsaves
+    4: xfd
+  tcg_features: TCG_XSAVE_FEATURES
+  type: CPUID_FEATURE_WORD
+
+- index: FEAT_XSAVE_XSS_LO
+  cpuid:
+    eax: '0xD'
+    ecx: '1'
+    needs_ecx: 'true'
+    reg: R_ECX
+  type: CPUID_FEATURE_WORD
+
+- index: FEAT_XSAVE_XSS_HI
+  cpuid:
+    eax: '0xD'
+    ecx: '1'
+    needs_ecx: 'true'
+    reg: R_EDX
+  type: CPUID_FEATURE_WORD
+
+- index: FEAT_6_EAX
+  cpuid:
+    eax: '6'
+    reg: R_EAX
+  feat_names:
+    2: arat
+  tcg_features: TCG_6_EAX_FEATURES
+  type: CPUID_FEATURE_WORD
+
+- index: FEAT_XSAVE_XCR0_LO
+  cpuid:
+    eax: '0xD'
+    ecx: '0'
+    needs_ecx: 'true'
+    reg: R_EAX
+  migratable_flags: XSTATE_FP_MASK | XSTATE_SSE_MASK | XSTATE_YMM_MASK | XSTATE_BNDREGS_MASK
+    | XSTATE_BNDCSR_MASK | XSTATE_OPMASK_MASK | XSTATE_ZMM_Hi256_MASK | XSTATE_Hi16_ZMM_MASK
+    | XSTATE_PKRU_MASK
+  tcg_features: ~0U
+  type: CPUID_FEATURE_WORD
+
+- index: FEAT_XSAVE_XCR0_HI
+  cpuid:
+    eax: '0xD'
+    ecx: '0'
+    needs_ecx: 'true'
+    reg: R_EDX
+  tcg_features: ~0U
+  type: CPUID_FEATURE_WORD
+
+- index: FEAT_ARCH_CAPABILITIES
+  msr: MSR_IA32_ARCH_CAPABILITIES
+  feat_names:
+    0: rdctl-no
+    1: ibrs-all
+    2: rsba
+    3: skip-l1dfl-vmentry
+    4: ssb-no
+    5: mds-no
+    6: pschange-mc-no
+    7: tsx-ctrl
+    8: taa-no
+    13: sbdr-ssdp-no
+    14: fbsdp-no
+    15: psdp-no
+    17: fb-clear
+    24: pbrsb-no
+  # FEAT_ARCH_CAPABILITIES only affects a read-only MSR, which cannot be read
+  # from user mode.  Therefore, it has no impact on any user-mode operation,
+  # and warnings about unsupported features do not matter.
+  tcg_features: ~0U
+  type: MSR_FEATURE_WORD
+
+- index: FEAT_CORE_CAPABILITY
+  msr: MSR_IA32_CORE_CAPABILITY
+  feat_names:
+    5: split-lock-detect
+  type: MSR_FEATURE_WORD
+
+- index: FEAT_PERF_CAPABILITIES
+  msr: MSR_IA32_PERF_CAPABILITIES
+  feat_names:
+    13: full-width-write
+  type: MSR_FEATURE_WORD
+
+- index: FEAT_VMX_PROCBASED_CTLS
+  msr: MSR_IA32_VMX_TRUE_PROCBASED_CTLS
+  feat_names:
+    2: vmx-vintr-pending
+    3: vmx-tsc-offset
+    7: vmx-hlt-exit
+    9: vmx-invlpg-exit
+    10: vmx-mwait-exit
+    11: vmx-rdpmc-exit
+    12: vmx-rdtsc-exit
+    15: vmx-cr3-load-noexit
+    16: vmx-cr3-store-noexit
+    19: vmx-cr8-load-exit
+    20: vmx-cr8-store-exit
+    21: vmx-flexpriority
+    22: vmx-vnmi-pending
+    23: vmx-movdr-exit
+    24: vmx-io-exit
+    25: vmx-io-bitmap
+    27: vmx-mtf
+    28: vmx-msr-bitmap
+    29: vmx-monitor-exit
+    30: vmx-pause-exit
+    31: vmx-secondary-ctls
+  type: MSR_FEATURE_WORD
+
+- index: FEAT_VMX_SECONDARY_CTLS
+  msr: MSR_IA32_VMX_PROCBASED_CTLS2
+  feat_names:
+    0: vmx-apicv-xapic
+    1: vmx-ept
+    2: vmx-desc-exit
+    3: vmx-rdtscp-exit
+    4: vmx-apicv-x2apic
+    5: vmx-vpid
+    6: vmx-wbinvd-exit
+    7: vmx-unrestricted-guest
+    8: vmx-apicv-register
+    9: vmx-apicv-vid
+    10: vmx-ple
+    11: vmx-rdrand-exit
+    12: vmx-invpcid-exit
+    13: vmx-vmfunc
+    14: vmx-shadow-vmcs
+    15: vmx-encls-exit
+    16: vmx-rdseed-exit
+    17: vmx-pml
+    20: vmx-xsaves
+    25: vmx-tsc-scaling
+    26: vmx-enable-user-wait-pause
+  type: MSR_FEATURE_WORD
+
+- index: FEAT_VMX_PINBASED_CTLS
+  msr: MSR_IA32_VMX_TRUE_PINBASED_CTLS
+  feat_names:
+    0: vmx-intr-exit
+    3: vmx-nmi-exit
+    5: vmx-vnmi
+    6: vmx-preemption-timer
+    7: vmx-posted-intr
+  type: MSR_FEATURE_WORD
+
+- index: FEAT_VMX_EXIT_CTLS
+  msr: MSR_IA32_VMX_TRUE_EXIT_CTLS
+  feat_names:
+    2: vmx-exit-nosave-debugctl
+    #9: VMX_VM_EXIT_HOST_ADDR_SPACE_SIZE is copied from the LM CPUID bit.
+    12: vmx-exit-load-perf-global-ctrl
+    15: vmx-exit-ack-intr
+    18: vmx-exit-save-pat
+    19: vmx-exit-load-pat
+    20: vmx-exit-save-efer
+    21: vmx-exit-load-efer
+    22: vmx-exit-save-preemption-timer
+    23: vmx-exit-clear-bndcfgs
+    25: vmx-exit-clear-rtit-ctl
+    29: vmx-exit-load-pkrs
+  type: MSR_FEATURE_WORD
+
+- index: FEAT_VMX_ENTRY_CTLS
+  msr: MSR_IA32_VMX_TRUE_ENTRY_CTLS
+  feat_names:
+    2: vmx-entry-noload-debugctl
+    9: vmx-entry-ia32e-mode
+    13: vmx-entry-load-perf-global-ctrl
+    14: vmx-entry-load-pat
+    15: vmx-entry-load-efer
+    16: vmx-entry-load-bndcfgs
+    18: vmx-entry-load-rtit-ctl
+    22: vmx-entry-load-pkrs
+  type: MSR_FEATURE_WORD
+
+- index: FEAT_VMX_MISC
+  msr: MSR_IA32_VMX_MISC
+  feat_names:
+    5: vmx-store-lma
+    6: vmx-activity-hlt
+    7: vmx-activity-shutdown
+    8: vmx-activity-wait-sipi
+    29: vmx-vmwrite-vmexit-fields
+    30: vmx-zero-len-inject
+  type: MSR_FEATURE_WORD
+
+- index: FEAT_VMX_EPT_VPID_CAPS
+  msr: MSR_IA32_VMX_EPT_VPID_CAP
+  feat_names:
+    0: vmx-ept-execonly
+    6: vmx-page-walk-4
+    7: vmx-page-walk-5
+    8: vmx-ept-uc
+    14: vmx-ept-wb
+    16: vmx-ept-2mb
+    17: vmx-ept-1gb
+    20: vmx-invept
+    21: vmx-eptad
+    22: vmx-ept-advanced-exitinfo
+    25: vmx-invept-single-context
+    26: vmx-invept-all-context
+    32: vmx-invvpid
+    40: vmx-invvpid-single-addr
+    41: vmx-invvpid-single-context
+    42: vmx-invvpid-all-context
+    43: vmx-invvpid-single-context-noglobals
+  type: MSR_FEATURE_WORD
+
+- index: FEAT_VMX_BASIC
+  msr: MSR_IA32_VMX_BASIC
+  feat_names:
+    54: vmx-ins-outs
+    55: vmx-true-ctls
+  # Just to be safe - we don't support setting the MSEG version field.
+  no_autoenable_flags: MSR_VMX_BASIC_DUAL_MONITOR
+  type: MSR_FEATURE_WORD
+
+- index: FEAT_VMX_VMFUNC
+  msr: MSR_IA32_VMX_VMFUNC
+  feat_names:
+    0: vmx-eptp-switching
+  type: MSR_FEATURE_WORD
+
+- index: FEAT_14_0_ECX
+  cpuid:
+    eax: '0x14'
+    ecx: '0'
+    needs_ecx: 'true'
+    reg: R_ECX
+  feat_names:
+    31: intel-pt-lip
+  tcg_features: TCG_14_0_ECX_FEATURES
+  type: CPUID_FEATURE_WORD
+
+- index: FEAT_SGX_12_0_EAX
+  cpuid:
+    eax: '0x12'
+    ecx: '0'
+    needs_ecx: 'true'
+    reg: R_EAX
+  feat_names:
+    0: sgx1
+    1: sgx2
+    11: sgx-edeccssa
+  tcg_features: TCG_SGX_12_0_EAX_FEATURES
+  type: CPUID_FEATURE_WORD
+
+- index: FEAT_SGX_12_0_EBX
+  cpuid:
+    eax: '0x12'
+    ecx: '0'
+    needs_ecx: 'true'
+    reg: R_EBX
+  feat_names:
+    0: sgx-exinfo
+  tcg_features: TCG_SGX_12_0_EBX_FEATURES
+  type: CPUID_FEATURE_WORD
+
+- index: FEAT_SGX_12_1_EAX
+  cpuid:
+    eax: '0x12'
+    ecx: '1'
+    needs_ecx: 'true'
+    reg: R_EAX
+  feat_names:
+    1: sgx-debug
+    2: sgx-mode64
+    4: sgx-provisionkey
+    5: sgx-tokenkey
+    7: sgx-kss
+    10: sgx-aex-notify
+  tcg_features: TCG_SGX_12_1_EAX_FEATURES
+  type: CPUID_FEATURE_WORD
-- 
2.39.2



  parent reply	other threads:[~2023-09-08 12:49 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-09-08 12:45 [PATCH v2 00/10] Generate x86 cpu features Tim Wiederhake
2023-09-08 12:45 ` [PATCH v2 01/10] target/i386: Add missing feature names in FEAT_VMX_EPT_VPID_CAPS Tim Wiederhake
2023-09-08 14:06   ` Igor Mammedov
2023-09-08 12:45 ` [PATCH v2 02/10] target/i386: Fix " Tim Wiederhake
2023-09-08 14:17   ` Igor Mammedov
2023-09-08 14:26     ` Igor Mammedov
2023-09-08 12:45 ` [PATCH v2 03/10] target/i386: Fix duplicated feature name in FEAT_KVM Tim Wiederhake
2023-09-08 14:21   ` Igor Mammedov
2023-09-15 15:53     ` Tim Wiederhake
2023-09-08 12:45 ` [PATCH v2 04/10] target/i386: Split out feature_word_info Tim Wiederhake
2023-09-08 12:45 ` Tim Wiederhake [this message]
2023-09-08 12:45 ` [PATCH v2 06/10] target/i386: Format feature_word_info.c.inc: Remove comments Tim Wiederhake
2023-09-08 12:45 ` [PATCH v2 07/10] target/i386: Format feature_word_info.c.inc: Fill out feat_names Tim Wiederhake
2023-09-08 12:45 ` [PATCH v2 08/10] target/i386: Format feature_word_info.c.inc: Unfold cpuid member Tim Wiederhake
2023-09-08 12:45 ` [PATCH v2 09/10] target/i386: Format feature_word_info.c.inc: Whitespaces and trailing commas Tim Wiederhake
2023-09-08 12:45 ` [PATCH v2 10/10] target/i386: Autogenerate feature_word_info.c.inc Tim Wiederhake
2023-09-09 23:42   ` Richard Henderson
2023-09-08 14:48 ` [PATCH v2 00/10] Generate x86 cpu features Igor Mammedov
2023-09-08 16:55   ` Daniel P. Berrangé
2023-09-11 11:26     ` Igor Mammedov
2023-09-15 15:53       ` Tim Wiederhake

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20230908124534.25027-6-twiederh@redhat.com \
    --to=twiederh@redhat.com \
    --cc=berrange@redhat.com \
    --cc=mst@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=philmd@linaro.org \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).