Stanislav Shwartsman
|
03ba2ec988
|
implement pdptr checks in legacy PAE mode
|
2009-05-31 07:49:04 +00:00 |
|
Stanislav Shwartsman
|
222129db4b
|
Rewritten long mode page walk - large code cleanup and few bugfixes
|
2009-05-30 15:09:38 +00:00 |
|
Stanislav Shwartsman
|
a98a917c98
|
code cleanup
|
2009-05-28 20:18:34 +00:00 |
|
Stanislav Shwartsman
|
3d7bbf4356
|
fixed VMXON pointer concept
|
2009-05-28 08:26:17 +00:00 |
|
Stanislav Shwartsman
|
847179fd13
|
mtrr reverved bits check
|
2009-05-21 13:25:30 +00:00 |
|
Stanislav Shwartsman
|
98d632c197
|
Fixed ROUNDxx opcodes
|
2009-05-21 11:44:59 +00:00 |
|
Stanislav Shwartsman
|
efc413d2b4
|
VMX fixes
|
2009-05-21 10:39:40 +00:00 |
|
Stanislav Shwartsman
|
071a27fd99
|
fixed 1g paging cpuid bit (26, not 27)
|
2009-05-19 18:54:05 +00:00 |
|
Stanislav Shwartsman
|
27805e9aba
|
64 Bit XP boot requirements CPUID changes - thanks Mark !
|
2009-05-19 15:46:07 +00:00 |
|
Stanislav Shwartsman
|
867ef05705
|
The same for G15R
|
2009-05-16 09:26:16 +00:00 |
|
Stanislav Shwartsman
|
9339740d8b
|
G15M have SSE prefix style
|
2009-05-16 09:11:14 +00:00 |
|
Stanislav Shwartsman
|
0b59fdfe31
|
small fix
|
2009-05-13 14:31:09 +00:00 |
|
Stanislav Shwartsman
|
68633b09d2
|
-typo
|
2009-05-07 12:02:34 +00:00 |
|
Stanislav Shwartsman
|
6fe6da5f25
|
small fixes
|
2009-05-07 12:00:02 +00:00 |
|
Stanislav Shwartsman
|
aac70fdf25
|
faster vmenter/vmexit
|
2009-05-03 13:02:14 +00:00 |
|
Stanislav Shwartsman
|
ecf82d54cd
|
bugfix
|
2009-05-01 14:59:21 +00:00 |
|
Stanislav Shwartsman
|
78418c6a74
|
removed cr1 from cpu
|
2009-05-01 09:32:46 +00:00 |
|
Stanislav Shwartsman
|
89f057ae7b
|
x87 fix
|
2009-04-27 14:00:55 +00:00 |
|
Stanislav Shwartsman
|
19dce66e50
|
fixed instruiction fetch bug which happens in 64-bit mode when jumping rip by scale of 32bit
|
2009-04-18 21:09:50 +00:00 |
|
Stanislav Shwartsman
|
150f8bfff0
|
remove unused vars
|
2009-04-14 19:34:03 +00:00 |
|
Stanislav Shwartsman
|
4d40d7a471
|
- Fixed TR.LIMIT when checking TSS permission bitmap from Int_Ib() in VME mode
|
2009-04-14 17:41:58 +00:00 |
|
Stanislav Shwartsman
|
012b3a2e89
|
Eliminate code duplication
|
2009-04-14 13:43:21 +00:00 |
|
Stanislav Shwartsman
|
e0833381d5
|
Fixed priority between #NP and #GP
|
2009-04-14 09:23:36 +00:00 |
|
Stanislav Shwartsman
|
024d36fa12
|
x87: fixed C1 (rounding up) for overflow condition
|
2009-04-11 17:00:28 +00:00 |
|
Stanislav Shwartsman
|
6f6414e456
|
fixed inv phy addr breakpoints
|
2009-04-11 14:02:13 +00:00 |
|
Stanislav Shwartsman
|
fb76e852f0
|
Almost made to get rid of icount
|
2009-04-11 13:58:34 +00:00 |
|
Stanislav Shwartsman
|
4fc66aab31
|
Fixes for compilation by Visual Studio 2008
|
2009-04-07 16:12:19 +00:00 |
|
Stanislav Shwartsman
|
9d4c24b6a3
|
Split instruction 32/64
|
2009-04-06 18:44:28 +00:00 |
|
Stanislav Shwartsman
|
6fbc9bd250
|
Fixed SMC when trace cache is OFF + small speedup again
|
2009-04-06 18:27:30 +00:00 |
|
Stanislav Shwartsman
|
57f5bcf9e7
|
some very small optimization in cpu_loop
|
2009-04-06 18:14:20 +00:00 |
|
Stanislav Shwartsman
|
153f86b1a8
|
save/restore mwait status correctly
|
2009-04-05 19:38:44 +00:00 |
|
Stanislav Shwartsman
|
9e092a86c3
|
merge "system" and "segment" blocks of descriptor
|
2009-04-05 19:09:44 +00:00 |
|
Stanislav Shwartsman
|
248af1b0c3
|
typo fix
|
2009-04-05 18:22:03 +00:00 |
|
Stanislav Shwartsman
|
c9383813f0
|
don't have to keep both limit and limit_scale
|
2009-04-05 18:16:29 +00:00 |
|
Stanislav Shwartsman
|
f7efa100e0
|
Redefine "generic" VMCS table
|
2009-03-28 13:42:09 +00:00 |
|
Stanislav Shwartsman
|
c9d63a4e53
|
redo x86 hw i/o breakpoint stuff
|
2009-03-28 08:27:01 +00:00 |
|
Stanislav Shwartsman
|
a0b1fda178
|
bugfixes
|
2009-03-27 16:42:21 +00:00 |
|
Stanislav Shwartsman
|
8eb93f4c41
|
More debug prints
|
2009-03-27 09:37:48 +00:00 |
|
Stanislav Shwartsman
|
fcb51dc168
|
oops, this break max_instr_count feature
|
2009-03-26 10:24:10 +00:00 |
|
Stanislav Shwartsman
|
c4eed92bb0
|
small optimization
|
2009-03-26 09:44:23 +00:00 |
|
Stanislav Shwartsman
|
043be27c2c
|
M$ comilerr can't optimize very good functions with long_jmp inside
|
2009-03-26 09:28:49 +00:00 |
|
Stanislav Shwartsman
|
722d489ad9
|
Fix SMC detection optimization
|
2009-03-24 16:04:47 +00:00 |
|
Stanislav Shwartsman
|
839ef8b6ce
|
optimizations in icache
|
2009-03-24 12:37:28 +00:00 |
|
Stanislav Shwartsman
|
b46aa8e905
|
Fixed assertion failure in iret
|
2009-03-23 19:36:48 +00:00 |
|
Stanislav Shwartsman
|
85cdc96a49
|
Undo perf optimization which broke correctness
|
2009-03-23 16:46:17 +00:00 |
|
Stanislav Shwartsman
|
aee1b3d3b8
|
FIxed MOVBE16
|
2009-03-22 21:23:12 +00:00 |
|
Stanislav Shwartsman
|
e5be60be64
|
Fixed lazy flags bug I added in one of my prev merges
ICACHE code reorganization
|
2009-03-22 21:12:35 +00:00 |
|
Stanislav Shwartsman
|
888000e7d4
|
Fixed compilation err with trace cache disabled
|
2009-03-22 06:09:18 +00:00 |
|
Stanislav Shwartsman
|
c3392488b5
|
reorganize cpu debugger support, less function, faster code
|
2009-03-17 19:40:26 +00:00 |
|
Stanislav Shwartsman
|
b9283af695
|
fixed compilation warning
|
2009-03-15 16:52:54 +00:00 |
|
Stanislav Shwartsman
|
4470c6a1c8
|
make ICACHE always enabled option and deprecate it in the configure script
Trace cache still can be turned off
|
2009-03-13 18:48:08 +00:00 |
|
Stanislav Shwartsman
|
10c8d8ea33
|
improve lazy flags after ADD instruction
|
2009-03-13 18:26:10 +00:00 |
|
Stanislav Shwartsman
|
9417cbee63
|
- cpu optimizations 9remove redundant, add new)
|
2009-03-13 18:02:33 +00:00 |
|
Stanislav Shwartsman
|
2bdc6ff231
|
insert updateFetchModeMask into handleCpuModeChange - avoid bugs in future
|
2009-03-10 22:28:08 +00:00 |
|
Stanislav Shwartsman
|
08de514d9c
|
code cleanup for future optimization
|
2009-03-10 21:43:11 +00:00 |
|
Stanislav Shwartsman
|
07f811013c
|
bugfixes
|
2009-03-10 20:01:56 +00:00 |
|
Stanislav Shwartsman
|
51ea504442
|
Fixed compilation with debugger on
|
2009-03-10 17:02:03 +00:00 |
|
Stanislav Shwartsman
|
9e723a044f
|
- Added configure option to enable/disable A20 pin support. Disabling the
A20 pin support slightly speeds up the emulation.
- small code cleanup
|
2009-03-10 16:28:01 +00:00 |
|
Stanislav Shwartsman
|
6fe0b40b44
|
move a20 handling into getHostAddr method of BX_MEM
|
2009-03-08 21:23:40 +00:00 |
|
Stanislav Shwartsman
|
43fc81651d
|
Removed redundant code
|
2009-03-05 17:48:12 +00:00 |
|
Stanislav Shwartsman
|
72e2a2258f
|
Fixed BSWAP in MOVBE instruction
|
2009-03-03 16:55:20 +00:00 |
|
Stanislav Shwartsman
|
56251925a3
|
Fixed typo in 64-bit BSWAP
|
2009-03-03 06:18:00 +00:00 |
|
Stanislav Shwartsman
|
6dac964b27
|
Two more prefix66 opcodes
|
2009-02-28 09:28:18 +00:00 |
|
Stanislav Shwartsman
|
bc8be4ed06
|
Fixed CR8 read
|
2009-02-27 20:00:02 +00:00 |
|
Stanislav Shwartsman
|
93f375dc42
|
regen dependencies
|
2009-02-26 22:02:00 +00:00 |
|
Stanislav Shwartsman
|
b9de22961c
|
minimize SSE tables, minor speedup in SSE code
|
2009-02-26 21:57:01 +00:00 |
|
Stanislav Shwartsman
|
e6685b3557
|
Fixed comp err with APIC disabled
|
2009-02-23 17:09:39 +00:00 |
|
Volker Ruppert
|
9e3dd83e85
|
- reduce some more dependencies and related Makefile.in updates
|
2009-02-23 11:06:53 +00:00 |
|
Volker Ruppert
|
790eec83ca
|
- converted I/O APIC to a device plugin
- updated dependencies
|
2009-02-22 10:44:50 +00:00 |
|
Stanislav Shwartsman
|
2304f2abf1
|
reduce dependencies from CPU/APIC.H
|
2009-02-20 22:00:42 +00:00 |
|
Stanislav Shwartsman
|
87268a1ba5
|
Fixed dfr register in apic
|
2009-02-20 20:44:20 +00:00 |
|
Stanislav Shwartsman
|
21d753c378
|
short cleanup
|
2009-02-20 17:35:55 +00:00 |
|
Stanislav Shwartsman
|
09489f968a
|
cleanup APIC initialization and setting of APIC_ID
|
2009-02-20 17:26:01 +00:00 |
|
Stanislav Shwartsman
|
78590cc6f2
|
remove redundant cpu->name variable
|
2009-02-20 17:05:03 +00:00 |
|
Stanislav Shwartsman
|
11e8d090b6
|
moved def to config.h
|
2009-02-20 16:01:30 +00:00 |
|
Stanislav Shwartsman
|
d01725b1e9
|
Fixed compilation error on MAC
|
2009-02-20 08:12:51 +00:00 |
|
Stanislav Shwartsman
|
31a367283a
|
small optimizations for apic code
|
2009-02-19 23:19:11 +00:00 |
|
Stanislav Shwartsman
|
7be90a7426
|
forgot to enable local_apic in init()
|
2009-02-18 22:38:58 +00:00 |
|
Stanislav Shwartsman
|
3564ef3162
|
small fixes
|
2009-02-18 22:33:06 +00:00 |
|
Stanislav Shwartsman
|
1b72e66bb3
|
support for apic global disable
separate between I/O apic and local apic
|
2009-02-18 22:25:04 +00:00 |
|
Stanislav Shwartsman
|
87b705d036
|
Changes in lapicbase msr
|
2009-02-17 19:44:02 +00:00 |
|
Stanislav Shwartsman
|
3a1852ea23
|
take local APIC read/write access into CPU class from BX_MEM (needed for APIC virtualization later)
|
2009-02-17 19:20:47 +00:00 |
|
Stanislav Shwartsman
|
6fb60de2b2
|
cpu to see up to 40 bit physical addr space
|
2009-02-15 18:51:13 +00:00 |
|
Stanislav Shwartsman
|
e8e699245f
|
fix code duplication in cpu.h for eflags accessors
|
2009-02-13 20:09:56 +00:00 |
|
Stanislav Shwartsman
|
f1eb1d00fd
|
do not produce fpu2mmx transition if mem write faults
|
2009-02-13 10:15:16 +00:00 |
|
Stanislav Shwartsman
|
714dc45589
|
Fixed typo
|
2009-02-13 10:10:39 +00:00 |
|
Stanislav Shwartsman
|
a5badd3b83
|
- bugfixes
|
2009-02-13 09:51:57 +00:00 |
|
Stanislav Shwartsman
|
6003f52704
|
Fixed compilation error + x86-64 correctness fix
|
2009-02-09 19:46:34 +00:00 |
|
Stanislav Shwartsman
|
25b7227ef2
|
convert some BX_DEBUG prints to BX_ERROR
fixed boundary fetch fault bug in some stupid corner cases
|
2009-02-08 17:37:19 +00:00 |
|
Stanislav Shwartsman
|
aeaf51d33a
|
FIxed #DB exception in 64-bit mode
|
2009-02-06 15:25:57 +00:00 |
|
Stanislav Shwartsman
|
21e2692997
|
Fixed bug in trace cache mode
|
2009-02-06 15:03:47 +00:00 |
|
Stanislav Shwartsman
|
7c0582e4ea
|
Some fixes for X86-64 OFF mode
|
2009-02-04 16:05:47 +00:00 |
|
Stanislav Shwartsman
|
26fda0626d
|
Added missed CR0 reserved bits #GP in long mode
|
2009-02-03 21:11:31 +00:00 |
|
Stanislav Shwartsman
|
7d5e058dfe
|
write to apic must be 16-byte aligned
|
2009-02-03 20:42:15 +00:00 |
|
Stanislav Shwartsman
|
fdf4f25230
|
revert incorret merge
|
2009-02-03 19:28:22 +00:00 |
|
Stanislav Shwartsman
|
fbc6f04d8a
|
correctly deliver INIT
|
2009-02-03 19:26:09 +00:00 |
|
Stanislav Shwartsman
|
4499ae8d02
|
more info abourt SIPI
|
2009-02-03 19:25:37 +00:00 |
|
Stanislav Shwartsman
|
592484408f
|
Initial NMI virtualization for VMX, clean out CPU pins set/clear code
|
2009-02-03 19:17:15 +00:00 |
|
Stanislav Shwartsman
|
f6cb9e529f
|
Fixes for VMX emulation
|
2009-02-02 18:59:44 +00:00 |
|
Stanislav Shwartsman
|
3a918d21f7
|
VMENTER with pending dbg exceptions
|
2009-02-01 22:23:33 +00:00 |
|