Gabe Black
|
7b1cb74ac3
|
X86: Add a check to chks which raises #GP(selector) if selector is NULL or not in the GDT.
|
2009-02-25 10:16:54 -08:00 |
|
Gabe Black
|
1b336a8fe7
|
X86: Make the stupd microop not update registers in initiateAcc.
|
2009-02-25 10:15:56 -08:00 |
|
Gabe Black
|
a1aba01a02
|
CPU: Get rid of translate... functions from various interface classes.
|
2009-02-25 10:15:34 -08:00 |
|
Nathan Binkert
|
e1798d063e
|
Quell g++ 4.3 warning about operator ambiguity
|
2009-02-06 20:55:50 -08:00 |
|
Gabe Black
|
5a4eed5d34
|
X86: All x86 fault classes now attempt to do something useful.
|
2009-02-01 17:09:08 -08:00 |
|
Gabe Black
|
923a14dde7
|
X86: Make the fault classes handle error codes better.
|
2009-02-01 17:08:32 -08:00 |
|
Gabe Black
|
2f8cec849d
|
X86: Make the long mode interrupt/exception microcode handle an error code.
|
2009-02-01 17:07:43 -08:00 |
|
Gabe Black
|
9b4d1e0f9a
|
X86: Distinguish between hardware and software interrupts/exceptions
|
2009-02-01 17:07:18 -08:00 |
|
Gabe Black
|
041402a949
|
X86: Fix the upper bound on some ranges that were setting up the micro code assembler.
|
2009-02-01 17:06:25 -08:00 |
|
Gabe Black
|
6b53b8387e
|
X86: Make the chks microop check for the right int descriptor type.
|
2009-02-01 17:05:37 -08:00 |
|
Gabe Black
|
c0cd58812e
|
X86: Touch up the interrupt entering microcode.
|
2009-02-01 17:04:21 -08:00 |
|
Gabe Black
|
ca6e0d75c8
|
X86: Fix the microcode for the LODS instruction.
|
2009-02-01 00:28:28 -08:00 |
|
Gabe Black
|
d432bd13b2
|
X86: Fix some incorrect register widths.
|
2009-02-01 00:18:13 -08:00 |
|
Gabe Black
|
52defeb4e7
|
X86: Implement the xadd instruction.
|
2009-01-25 20:33:27 -08:00 |
|
Gabe Black
|
3c5988b86c
|
X86: Implement the bswap instruction.
|
2009-01-25 20:32:43 -08:00 |
|
Gabe Black
|
0449fb2b7a
|
X86: Fix a bug in the iret microcode.
|
2009-01-25 20:31:17 -08:00 |
|
Gabe Black
|
b23633ad1b
|
X86: Hook in the M5 pseudo insts.
|
2009-01-06 23:55:46 -08:00 |
|
Gabe Black
|
115b1a7ed3
|
X86: Autogenerate macroop generateDisassemble function.
|
2009-01-06 22:55:27 -08:00 |
|
Gabe Black
|
9e24d8c599
|
X86: Move the macroop class out of the isa description into C++.
|
2009-01-06 22:44:59 -08:00 |
|
Gabe Black
|
8c15518f30
|
X86: Fix completeAcc get call.
|
2008-11-09 21:55:43 -08:00 |
|
Gabe Black
|
3c4567f2a6
|
X86: Set the delayed commit flag in x86 microops appropriately.
|
2008-10-12 23:29:10 -07:00 |
|
Gabe Black
|
e3004c579f
|
X86: Fix the segment setting code in IRET, and make it restore the flags.
|
2008-10-12 23:05:22 -07:00 |
|
Gabe Black
|
564eda827b
|
X86: Implement the swapgs instruction.
|
2008-10-12 23:00:07 -07:00 |
|
Gabe Black
|
a2e0d539d8
|
X86: Add wrval/rdval microops for reading significant miscregs.
|
2008-10-12 22:55:55 -07:00 |
|
Gabe Black
|
4c19c56a77
|
X86: Implement entering an interrupt in microcode.
|
2008-10-12 22:42:03 -07:00 |
|
Gabe Black
|
f813a4be49
|
X86: Make sure register microops set fault rather than returning one.
|
2008-10-12 22:24:06 -07:00 |
|
Gabe Black
|
961b40cdb5
|
X86: Implement an wrdh microop which loads bases/offsets from 16 byte descriptors.
|
2008-10-12 22:16:53 -07:00 |
|
Gabe Black
|
6074b1abf2
|
X86: Implement local labels for the ROM that actually refer into the ROM.
|
2008-10-12 20:44:11 -07:00 |
|
Gabe Black
|
6b46e5204d
|
X86: Implement the chks check of interrupt gate target code segments.
|
2008-10-12 20:38:22 -07:00 |
|
Gabe Black
|
30feb90c1c
|
X86: Add a check type for interrupt gates.
|
2008-10-12 20:33:37 -07:00 |
|
Gabe Black
|
15f5bb3055
|
X86: Fix chks checking the submode for stack segments.
|
2008-10-12 20:29:52 -07:00 |
|
Gabe Black
|
9e1fe2050a
|
X86: Let segment manipulation microops be conditional.
|
2008-10-12 20:25:06 -07:00 |
|
Gabe Black
|
e9158d763a
|
X86: Let the microassembler know about the microcode only H segment.
|
2008-10-12 20:17:38 -07:00 |
|
Gabe Black
|
223fc41c07
|
X86: Fix the rdbase microop
|
2008-10-12 20:07:46 -07:00 |
|
Gabe Black
|
cefb768131
|
X86: Create a handy way to access labels from the ROM in microcode.
|
2008-10-12 17:52:51 -07:00 |
|
Gabe Black
|
e5f8092467
|
X86: Make X86's microcode ROM actually do something.
|
2008-10-12 17:48:44 -07:00 |
|
Gabe Black
|
6fd4eff68f
|
X86: Create an eret microop which returns from ROM to combinational decoding.
|
2008-10-12 15:53:04 -07:00 |
|
Gabe Black
|
4aa18aa800
|
X86: Make Br never report itself as the last microop.
|
2008-10-12 15:43:35 -07:00 |
|
Gabe Black
|
77c0e1d110
|
X86: Create a SeqOp class of microops and make Br one of them.
|
2008-10-12 15:33:17 -07:00 |
|
Gabe Black
|
a76c4b8ca1
|
X86: Implement CPUID with a magical function instead of microcode.
|
2008-10-12 15:31:28 -07:00 |
|
Gabe Black
|
e1b306fa53
|
X86: Fix the debugging microops. The debug functions can't handle a string object format.
|
2008-10-09 00:05:39 -07:00 |
|
Gabe Black
|
569db520ad
|
X86: Make far ret modify CS instead of some random selector.
|
2008-10-09 00:04:36 -07:00 |
|
Ali Saidi
|
3a3e356f4e
|
style: Remove non-leading tabs everywhere they shouldn't be. Developers should configure their editors to not insert tabs
|
2008-09-10 14:26:15 -04:00 |
|
Gabe Black
|
30bc897613
|
X86: Fix the microcode for sign/zero extending moves that use high byte registers.
|
2008-09-03 00:52:54 -04:00 |
|
Gabe Black
|
5b5875341c
|
X86: Make the cpuid processor identifier return a real string.
|
2008-06-12 01:00:19 -04:00 |
|
Gabe Black
|
4f4ff17578
|
X86: Make the disassembly for halt conform with the other microops.
|
2008-06-12 00:58:27 -04:00 |
|
Gabe Black
|
31d40ad7c2
|
X86: Implement and hook up STI and CLI instructions.
|
2008-06-12 00:58:19 -04:00 |
|
Gabe Black
|
8d2416c6e9
|
X86: Implement a partial, sort of correct version of the protected mode variant of iret.
|
2008-06-12 00:53:01 -04:00 |
|
Gabe Black
|
66f54a6037
|
X86: Change how segment loading is performed.
|
2008-06-12 00:52:12 -04:00 |
|
Gabe Black
|
129831c116
|
X86: Make pushes and pops use the stack size instead of the data size.
|
2008-06-12 00:51:57 -04:00 |
|