unicorn/qemu/target/i386
Eduardo Habkost 9f2ff9a66f
i386: Add Cascadelake-Server-v2 CPU model
Add new version of Cascadelake-Server CPU model, setting
stepping=5 and enabling the IA32_ARCH_CAPABILITIES MSR
with some flags.

The new feature will introduce a new host software requirement,
breaking our CPU model runnability promises. This means we can't
enable the new CPU model version by default in QEMU 4.1, because
management software isn't ready yet to resolve CPU model aliases.
This is why "pc-*-4.1" will keep returning Cascadelake-Server-v1
if "-cpu Cascadelake-Server" is specified.

Includes a test case to ensure the right combinations of
machine-type + CPU model + command-line feature flags will work
as expected.

Backports commit fd63c6d1a5f77d689ee06f6561677c012a988223 from qemu
2019-08-08 19:18:21 -04:00
..
arch_memory_mapping.c
bpt_helper.c target/i386: Use env_cpu, env_archcpu 2019-06-12 11:46:35 -04:00
cc_helper_template.h
cc_helper.c
cpu-param.h tcg: Split out target/arch/cpu-param.h 2019-06-10 19:35:46 -04:00
cpu-qom.h i386: Register versioned CPU models 2019-08-08 19:01:35 -04:00
cpu.c i386: Add Cascadelake-Server-v2 CPU model 2019-08-08 19:18:21 -04:00
cpu.h i386: Register versioned CPU models 2019-08-08 19:01:35 -04:00
excp_helper.c target/i386: Use env_cpu, env_archcpu 2019-06-12 11:46:35 -04:00
fpu_helper.c target/i386: Use env_cpu, env_archcpu 2019-06-12 11:46:35 -04:00
helper.c target/i386: Use env_cpu, env_archcpu 2019-06-12 11:46:35 -04:00
helper.h target/i386: Implement CPUID_EXT_RDRAND 2019-05-23 15:12:50 -04:00
int_helper.c target/i386: Implement CPUID_EXT_RDRAND 2019-05-23 15:12:50 -04:00
Makefile.objs
mem_helper.c cpu: Replace ENV_GET_CPU with env_cpu 2019-06-12 11:16:16 -04:00
misc_helper.c target/i386: Use env_cpu, env_archcpu 2019-06-12 11:46:35 -04:00
mpx_helper.c
ops_sse_header.h
ops_sse.h
seg_helper.c target/i386: Use env_cpu, env_archcpu 2019-06-12 11:46:35 -04:00
shift_helper_template.h
smm_helper.c target/i386: Use env_cpu, env_archcpu 2019-06-12 11:46:35 -04:00
svm_helper.c target/i386: Use env_cpu, env_archcpu 2019-06-12 11:46:35 -04:00
svm.h target-i386: Add NPT support 2018-07-03 19:52:56 -04:00
TODO
topology.h i386: Update new x86_apicid parsing rules with die_offset support 2019-08-08 18:22:03 -04:00
translate.c target/i386: Implement CPUID_EXT_RDRAND 2019-05-23 15:12:50 -04:00
unicorn.c support for YMM registers ymm8-ymm15 (#1079) 2019-04-16 06:35:41 -04:00
unicorn.h