Stanislav Shwartsman
|
355c06e396
|
add defines for CPUID bits recently announced
|
2020-04-01 06:15:54 +00:00 |
|
Stanislav Shwartsman
|
81edc636d4
|
remove duplicate opcodes from decoder definitions
|
2020-03-28 14:36:27 +00:00 |
|
Stanislav Shwartsman
|
b686c8d423
|
add into ia_opcodes.def disasm field for every instruction
|
2020-03-28 14:23:54 +00:00 |
|
Stanislav Shwartsman
|
7d989b34a3
|
fixed recent segoverride assignment bug in SVN
|
2020-02-28 15:03:52 +00:00 |
|
Stanislav Shwartsman
|
6e2541daa6
|
CET: DS Seg override is kept for CET Endranch suppress hint even if overridden by other prefixes later
|
2020-02-21 19:38:23 +00:00 |
|
Stanislav Shwartsman
|
086f2779f5
|
fixed compilation with avx but without EVEX
|
2020-02-20 05:29:13 +00:00 |
|
Stanislav Shwartsman
|
1b208b0e93
|
fixed compilation under Visual Studio
|
2020-02-02 07:25:00 +00:00 |
|
Stanislav Shwartsman
|
6b691257dd
|
fixed compilation with VMX off
|
2020-01-17 11:55:59 +00:00 |
|
Stanislav Shwartsman
|
a24b562e32
|
now when bios knows to set msr ia32_feature_ctrl, no need to initialize from reset code
|
2020-01-15 17:18:10 +00:00 |
|
Stanislav Shwartsman
|
5620a4968b
|
set msr IA32_FEATURE_CTRL lock bit to ensure VMX is enabled - normally this should be done in Bios but init.cc can w/a
|
2020-01-11 07:04:44 +00:00 |
|
Stanislav Shwartsman
|
902ff1ef52
|
Part of the SF patch #548: Support Windows Hyper-V in Bochs by Xinyang
When BX_SUPPORT_SMP is not defined, clear the bit in CPUID.[EAX=1].Bit[28] to indicate Hyper-Threading is unavailable.
|
2020-01-11 06:18:13 +00:00 |
|
Stanislav Shwartsman
|
50bde4a38c
|
flush TLBs on CR4.CET change
|
2020-01-10 20:04:22 +00:00 |
|
Stanislav Shwartsman
|
72dffd320d
|
fixed CET fault on task switch when SSP is not 8-byte aligned. Bochs did #GP whiel SDM says #TS
|
2020-01-07 18:17:34 +00:00 |
|
Stanislav Shwartsman
|
694112732b
|
use default base CPUID class method to detemine values of 0x80000008 leaf for IceLake CPUID
|
2020-01-03 19:53:20 +00:00 |
|
Stanislav Shwartsman
|
b69f2b052a
|
extract calculation of MSR_IA32_XSS supported bits to a function
|
2020-01-03 19:33:16 +00:00 |
|
Stanislav Shwartsman
|
45a25a2b67
|
CET: make sure enbranch64 and enbranch32 do the right thing when mode mismatch
|
2020-01-03 18:55:17 +00:00 |
|
Stanislav Shwartsman
|
495206650b
|
fixed CET wrmsr reserved bit checking
|
2020-01-03 18:44:15 +00:00 |
|
Stanislav Shwartsman
|
ea6b0c766c
|
added more VMX reasons to enum according to Intel SDM
|
2020-01-03 17:35:02 +00:00 |
|
Stanislav Shwartsman
|
bac9104f73
|
fixed compilation of init.cc for old CPU models
|
2020-01-03 05:29:45 +00:00 |
|
Stanislav Shwartsman
|
9a35c6de79
|
fix and simplify combined_access handling in EPT page walk
|
2019-12-29 21:00:35 +00:00 |
|
Stanislav Shwartsman
|
016aa349e5
|
handle supervisor-shadow-stack protection feature in the EPT
|
2019-12-29 20:40:18 +00:00 |
|
Stanislav Shwartsman
|
4f7aa4bd76
|
fixed compilation issue
|
2019-12-28 15:20:38 +00:00 |
|
Stanislav Shwartsman
|
f56e1aab86
|
VMX: save CET state to VMCS only if CET is supported
|
2019-12-28 15:18:55 +00:00 |
|
Stanislav Shwartsman
|
bcafd5bb7a
|
fix non-printable characters and add more verbose error messages
|
2019-12-28 15:08:53 +00:00 |
|
Stanislav Shwartsman
|
d091e3bda6
|
simplify XRSTOR* code
|
2019-12-28 14:03:54 +00:00 |
|
Stanislav Shwartsman
|
126ae0d0b4
|
more verbose debug print
|
2019-12-28 13:36:43 +00:00 |
|
Stanislav Shwartsman
|
9458e25486
|
reverting commit 13737 and doing correct fix
|
2019-12-28 13:11:13 +00:00 |
|
Stanislav Shwartsman
|
5d7c6d46b0
|
fixed compilation after prev commit
|
2019-12-28 13:02:02 +00:00 |
|
Stanislav Shwartsman
|
7f72252223
|
fixes in XSAVE/XRSTOR handling
|
2019-12-28 12:57:31 +00:00 |
|
Stanislav Shwartsman
|
b09126aa34
|
use enums for assign_srcs error output - help with debugging unexpected #UD cases
|
2019-12-27 19:34:32 +00:00 |
|
Stanislav Shwartsman
|
6879feebf5
|
SHA: SHA instructions in 128-bit memory operand require to be explicitly aligned
|
2019-12-27 14:24:43 +00:00 |
|
Stanislav Shwartsman
|
5c45f6b324
|
AVX512: EVEX.Z is forbidden for any vector instruction using opmask as source or destination (should cause #UD)
|
2019-12-27 14:23:53 +00:00 |
|
Stanislav Shwartsman
|
8bd5272591
|
correctly handle CET Enbranch override prefix 0x3E in 64-bit mode
|
2019-12-27 13:44:57 +00:00 |
|
Stanislav Shwartsman
|
596c197cea
|
fix decoder: SHA1RNDS4 instruction should be with no SSE prefix
|
2019-12-27 13:08:20 +00:00 |
|
Stanislav Shwartsman
|
a2be16873c
|
VMX: save guest CET state to VMCS on vmexit
|
2019-12-27 13:02:30 +00:00 |
|
Stanislav Shwartsman
|
8e2391c44b
|
fixed compilation when compiling without EVEX
|
2019-12-26 20:12:40 +00:00 |
|
Stanislav Shwartsman
|
ff167d0f65
|
change a bit more defines to const with type
|
2019-12-26 16:48:33 +00:00 |
|
Stanislav Shwartsman
|
d6c3dcf033
|
revert for full vector read until figured out the right behavior for VPSHUFBITQMB
|
2019-12-24 20:08:33 +00:00 |
|
Stanislav Shwartsman
|
edcdce927c
|
added ability to configure hidden VMCS field mapping through CPUID
|
2019-12-22 18:53:07 +00:00 |
|
Stanislav Shwartsman
|
fc1dbe68bc
|
update dependencies in Mafefile.in
|
2019-12-21 21:42:35 +00:00 |
|
Stanislav Shwartsman
|
e593bb0084
|
CPUDB: Allow Icelake-U CPU model to exists without EVEX
|
2019-12-21 21:06:34 +00:00 |
|
Stanislav Shwartsman
|
e38cca20be
|
disable fault suppression for VPEXPAND* until fugured out how it should work in real life
|
2019-12-21 20:54:45 +00:00 |
|
Stanislav Shwartsman
|
f99258a2fd
|
fixed copy-paste issue
|
2019-12-21 20:30:15 +00:00 |
|
Stanislav Shwartsman
|
c16816485e
|
use optimized function for broadcastss
|
2019-12-21 20:20:33 +00:00 |
|
Stanislav Shwartsman
|
1a0237e9af
|
make order in AVX512 broadcast handlers, extract them into separate file
|
2019-12-21 20:07:03 +00:00 |
|
Stanislav Shwartsman
|
11585e4982
|
AVX512: VPBROADCASTB/W/D/Q with GPR source are only reg/reg
|
2019-12-21 18:29:51 +00:00 |
|
Stanislav Shwartsman
|
afa3626eb3
|
AVX512: fixed compressed immediate size (and memory access size) for VPBROADCASTB_Eb form
|
2019-12-21 18:17:51 +00:00 |
|
Stanislav Shwartsman
|
0169605f79
|
seems like GFNI VGF2P8AFFINEQB and VGF2P8AFFINEINVQB do not have fault suppression
|
2019-12-21 18:01:58 +00:00 |
|
Stanislav Shwartsman
|
4ac2122f3a
|
rename function to correct English, add broadcast and fault suppression support for EVEX encoded GFNI instructions
|
2019-12-21 16:12:06 +00:00 |
|
Stanislav Shwartsman
|
dd1ab303df
|
rename function to correct English
|
2019-12-21 15:54:52 +00:00 |
|