Stanislav Shwartsman
b6e284b080
fix MSVC warnings
2021-02-11 15:05:06 +00:00
Stanislav Shwartsman
c87ce2d11a
fixed some MSVC wannings in CPU code
2021-02-08 13:06:44 +00:00
Stanislav Shwartsman
1765a06d01
move debug.h from bochs.h and include it only where required
2021-01-31 15:22:58 +00:00
Stanislav Shwartsman
5874c8e29f
fix compilation with SMP enabled
2021-01-31 14:03:28 +00:00
Stanislav Shwartsman
7153228d48
fixed compilation without bochs debugger
2021-01-30 20:31:03 +00:00
Stanislav Shwartsman
8285b6b51b
regen Makefile include dependencies for CPU and internal debugger
2021-01-30 20:17:15 +00:00
Stanislav Shwartsman
1089e470e9
remove bochs-memory.h from bochs.h and include it only where required
2021-01-30 20:13:34 +00:00
Stanislav Shwartsman
6d6ff0e06b
regen Makefile include dependencies for CPU, MEMORY and internal debugger
2021-01-30 19:44:41 +00:00
Stanislav Shwartsman
7cc9cffeed
remove siminterface.h from bochs.h and include it only where required
2021-01-30 19:40:18 +00:00
Stanislav Shwartsman
0b83259417
regen include dep lists for cpu and memory - need to regen for all others
2021-01-30 18:57:45 +00:00
Stanislav Shwartsman
99e7b71540
remove gui.h from bochs.h and include it only where required
2021-01-30 18:47:25 +00:00
Stanislav Shwartsman
c878933057
remove pc_system.h from bochs.h and include it only where required
...
next step: same for gui.h
2021-01-30 18:29:28 +00:00
Stanislav Shwartsman
f79d6df458
strip redundant info from tigerlake cpuid text file
2021-01-30 08:45:34 +00:00
Stanislav Shwartsman
1bf18b8aae
! CPUID: Added TigerLake CPU definition (features CET and CLWB support)
...
- CPU code refactor, remove uses of bx_bool datatype and use C++ classic bool instead.
This enable better compiler optimizations and reduce binary size
2021-01-30 08:35:35 +00:00
Stanislav Shwartsman
b7855153a0
new disasm: print branch target in 32-bit mode as 32-bit value
2021-01-02 16:48:13 +00:00
Stanislav Shwartsman
e15012cfcf
fix code duplication in <limiting max cpuid leaf to 0x02 for winnt> feature
2021-01-02 16:28:51 +00:00
Stanislav Shwartsman
c33308731e
fixed disasm of shift/rotate with implicit shift count=1
2021-01-02 15:12:29 +00:00
Stanislav Shwartsman
1a20dbc7f7
fixed bug in new disasm
2021-01-02 14:32:52 +00:00
Stanislav Shwartsman
980cfc1903
fixed compilation with no debugger configured in
2021-01-02 14:09:03 +00:00
Stanislav Shwartsman
bea432dacb
fixed compilation with no debugger configured in
2021-01-02 14:04:35 +00:00
Stanislav Shwartsman
41ea50ba22
complete transition to new disasm, remove old disasm from source code
2021-01-02 13:43:10 +00:00
Stanislav Shwartsman
2f3adf849c
enable syntax switch with new disasm also in GUI debugger, switch to new disasm by default everywhere
2021-01-02 12:04:52 +00:00
Stanislav Shwartsman
22774a0534
support for AT&T (GAS) disasm style in new disassembler
2021-01-02 11:12:23 +00:00
Stanislav Shwartsman
a4a2562c8d
fixed compilation with no debugger enabled - will be cleaned up later
2020-12-30 16:58:17 +00:00
Stanislav Shwartsman
d2896bbd2a
fixed compilation with no debugger enabled
2020-12-30 14:48:34 +00:00
Stanislav Shwartsman
bb568997c9
use new disasm wrapper method in more place
2020-12-30 14:09:25 +00:00
Stanislav Shwartsman
72db10d766
fix symbols display within disasm for new disassember, integrate new disasm with GUI debugger properly
2020-12-30 12:23:19 +00:00
Stanislav Shwartsman
79db3896d4
enable symbols for branch targets and JMP/CALL direct ptr instructions in new disassembler (still to be tested), attempt to use new disassembler in GUI debugger
2020-12-30 11:36:33 +00:00
Stanislav Shwartsman
e6822c81a1
fixed behavior of MMX PSRAW/PSRAD instructions when shift count is zero - still has to invalidate x87 tags for dest register
2020-12-15 20:05:54 +00:00
Stanislav Shwartsman
1df9bc0070
Fixed buffer overflow in LOAD_Wdq method when MXCSR.MM=1 -> thanks new gcc10 warning
2020-10-03 09:37:06 +00:00
Stanislav Shwartsman
c6050a99d1
implemented AVX encoded VNNI instructions published in recent SDM - not tested yet
2020-10-03 09:23:28 +00:00
Stanislav Shwartsman
a378441254
update CPUID bits and CR bits according to recently published SDM documents by Intel
2020-10-03 07:59:47 +00:00
Stanislav Shwartsman
d540e5b040
rename VMCS control enum
2020-05-29 12:55:56 +00:00
Stanislav Shwartsman
baa39a1b40
fixed comment
2020-05-29 12:52:26 +00:00
Stanislav Shwartsman
4023b640d6
Protection Keys: Implemented Supervisor-Mode Protection Keys (PKS)
2020-05-29 12:35:30 +00:00
Stanislav Shwartsman
b891789c3d
implemented (experimental) TSC Adjust MSR
2020-05-21 19:58:16 +00:00
Stanislav Shwartsman
dd3849b9e0
extract Bit128 arithmetic to separate wide_int.cc/wide_int.h compiled independently of long mode emulation
2020-05-19 16:01:23 +00:00
Stanislav Shwartsman
e50a3f8169
fixup code duplication in apic code
2020-05-17 19:32:14 +00:00
Stanislav Shwartsman
f97b20ddce
deactivate apic timer when globally disabled
2020-05-17 19:03:39 +00:00
Stanislav Shwartsman
da169c0044
when apic is globally disabled - reset some fields to defaults
2020-05-17 18:57:27 +00:00
Stanislav Shwartsman
7a5fef764b
fix for effcetive TSC compute when TSC multiplier is enabled
2020-05-17 18:39:52 +00:00
Stanislav Shwartsman
6ae26b39b3
fixed Sub-Page-Protection EPT violation (was triggered exactly opposite that excpected due to typo)
2020-05-17 14:12:29 +00:00
Stanislav Shwartsman
8e4a29fb0e
reorg vmcs fields enabling based on their numeric order
2020-05-15 19:27:45 +00:00
Stanislav Shwartsman
499b138227
enable access to XSS_EXITING_BITMAP VMCS field
2020-05-15 19:05:41 +00:00
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