unicorn/qemu/target-i386
Paolo Bonzini 96e0535c76
target-i386: add ABM to Haswell* and Broadwell* CPU models
ABM is only implemented as a single instruction set by AMD; all AMD
processors support both instructions or neither. Intel considers POPCNT
as part of SSE4.2, and LZCNT as part of BMI1, but Intel also uses AMD's
ABM flag to indicate support for both POPCNT and LZCNT. It has to be
added to Haswell and Broadwell because Haswell, by adding LZCNT, has
completed the ABM.

Tested with "qemu-kvm -cpu Haswell-noTSX,enforce" (and also with older
machine types) on an Haswell-EP machine.

Backports commit becb66673ec30cb604926d247ab9449a60ad8b11 from qemu
2018-02-17 15:23:55 -05:00
..
arch_memory_mapping.c Switch non-CPU callers from ld/st*_phys to address_space_ld/st* 2018-02-12 19:27:02 -05:00
bpt_helper.c target-i386: Make check_hw_breakpoints static 2018-02-11 12:28:08 -05:00
cc_helper.c target-i386: exception handling for other helper functions 2018-02-17 15:23:51 -05:00
cc_helper_template.h This code should now build the x86_x64-softmmu part 2. 2017-01-19 22:50:28 +11:00
cpu-qom.h target-i386: create a separate AddressSpace for each CPU 2018-02-13 12:36:26 -05:00
cpu.c target-i386: add ABM to Haswell* and Broadwell* CPU models 2018-02-17 15:23:55 -05:00
cpu.h Correctly re-init EFER state during INIT IPI 2018-02-17 15:23:55 -05:00
excp_helper.c target-i386: introduce new raise_exception functions 2018-02-17 15:23:50 -05:00
fpu_helper.c target-i386: exception handling for FPU instructions 2018-02-17 15:23:50 -05:00
helper.c target-i386: Use correct memory attributes for memory accesses 2018-02-13 11:54:12 -05:00
helper.h target-i386: exception handling for seg_helper functions 2018-02-17 15:23:50 -05:00
int_helper.c target-i386: exception handling for div instructions 2018-02-17 15:23:50 -05:00
Makefile.objs target-i386: Move breakpoint related functions to new file 2018-02-11 12:25:24 -05:00
mem_helper.c target-i386: exception handling for memory helpers 2018-02-17 15:23:50 -05:00
misc_helper.c target-i386: exception handling for other helper functions 2018-02-17 15:23:51 -05:00
ops_sse.h target-i386: exception handling for other helper functions 2018-02-17 15:23:51 -05:00
ops_sse_header.h import 2015-08-21 15:04:50 +08:00
seg_helper.c target-i386: exception handling for seg_helper functions 2018-02-17 15:23:50 -05:00
shift_helper_template.h This code should now build the x86_x64-softmmu part 2. 2017-01-19 22:50:28 +11:00
smm_helper.c target-i386: set G=1 in SMM big real mode selectors 2018-02-13 12:31:18 -05:00
svm.h Automated leading tab to spaces conversion. 2017-01-21 12:28:22 +11:00
svm_helper.c target-i386: Use correct memory attributes for memory accesses 2018-02-13 11:54:12 -05:00
TODO import 2015-08-21 15:04:50 +08:00
topology.h platform.h move #3 2017-01-21 00:13:21 +11:00
translate.c target-i386: exception handling for seg_helper functions 2018-02-17 15:23:50 -05:00
unicorn.c target-i386: make xmm_regs 512-bit wide 2018-02-12 12:38:43 -05:00
unicorn.h New feature: registers can be bulk saved/restored in an opaque blob 2016-08-20 04:14:07 -07:00