Gabe Black [Thu, 19 Jul 2007 22:15:47 +0000 (15:15 -0700)]
x86 fixes
Make the emulation environment consider the rex prefix.
Implement and hook in forms of j, jmp, cmp, syscall, movzx
Added a format for an instruction to carry a call to the SE mode syscalls system
Made memory instructions which refer to the rip do so directly
Made the operand size overridable in the microassembly
Made the "ext" field of register operations 16 bits to hold a sparse encoding of flags to set or conditions to predicate on
Added an explicit "rax" operand for the syscall format
Implemented syscall returns.
--HG--
extra : convert_revision :
ae84bd8c6a1d400906e17e8b8c4185f2ebd4c5f2
Gabe Black [Thu, 19 Jul 2007 00:51:05 +0000 (17:51 -0700)]
Check for the two opcode prefix correctly and add in some instructions.
--HG--
extra : convert_revision :
751e54843f5c81b81529050a1ae9d46d07c36e97
Gabe Black [Thu, 19 Jul 2007 00:48:16 +0000 (17:48 -0700)]
Hook near returns into the decoder.
--HG--
extra : convert_revision :
b38d4417552991e44f5d1de1f35d5d1ad8f32340
Gabe Black [Thu, 19 Jul 2007 00:47:40 +0000 (17:47 -0700)]
Implement near returns.
--HG--
extra : convert_revision :
3d6e8a976d31cb016a4b78200716b0ece155137a
Gabe Black [Thu, 19 Jul 2007 00:46:38 +0000 (17:46 -0700)]
Make instructions that conditionally set registers set them to their old value if they don't actually execute.
--HG--
extra : convert_revision :
36e63dd0c6ac1a3e1133c7985cf5507b83e9ee45
Gabe Black [Thu, 19 Jul 2007 00:45:43 +0000 (17:45 -0700)]
Fix the overload which prints ExtMachInst in X86.
--HG--
extra : convert_revision :
2ef8ee71999f36b09270ba9526c2846beda65051
Gabe Black [Thu, 19 Jul 2007 00:45:06 +0000 (17:45 -0700)]
Make store microops actually store instead of load.
--HG--
extra : convert_revision :
fe90f8adc96dd0e680cfa45e4c510a906046ae3d
Gabe Black [Thu, 19 Jul 2007 00:44:12 +0000 (17:44 -0700)]
Fix a comment to refer to the right type of instruction.
--HG--
extra : convert_revision :
dd441d8fbaed1ed8b2b66e3ad0275009bd4dcef4
Gabe Black [Thu, 19 Jul 2007 00:43:30 +0000 (17:43 -0700)]
Fix the panic in the "error" format for x86,
--HG--
extra : convert_revision :
bd0715b5b63665f9160082d67c5b5d90d2405c5c
Gabe Black [Wed, 18 Jul 2007 23:33:56 +0000 (16:33 -0700)]
Implement some forms of add.
--HG--
extra : convert_revision :
adbff2e9b9952ec09853cc43d40243e7262410a7
Gabe Black [Wed, 18 Jul 2007 23:26:52 +0000 (16:26 -0700)]
Fix the operand types in a section of the decoder.
--HG--
extra : convert_revision :
c37600fd65b44817eed2ba653f9d4f08a9869874
Gabe Black [Wed, 18 Jul 2007 23:26:17 +0000 (16:26 -0700)]
Make the data size used by regops overridable in the microassembly.
--HG--
extra : convert_revision :
84d850aa5340c9d02d03502704b063215f6e2140
Gabe Black [Wed, 18 Jul 2007 23:12:39 +0000 (16:12 -0700)]
Fill out the miscreg file and add types to miscregs.hh
--HG--
extra : convert_revision :
865432256518c4340d9f319bdd9b7d160dc656a0
Gabe Black [Wed, 18 Jul 2007 23:11:52 +0000 (16:11 -0700)]
Hook x86 nop into the decoder.
--HG--
extra : convert_revision :
26f765ecf74a0bb6a1ec89816f1d630a1a8e4553
Gabe Black [Wed, 18 Jul 2007 23:11:16 +0000 (16:11 -0700)]
Fix a compilation error for SubBitUnions,
--HG--
extra : convert_revision :
aad9388afe81ba6541d0b18fa9777e6ffcfd871c
Gabe Black [Wed, 18 Jul 2007 23:10:44 +0000 (16:10 -0700)]
Implement the x86 nop to be a "fault" microop which returns "NoFault".
--HG--
extra : convert_revision :
1b446def756f1d0f80631db944d1cc41be95efbd
Gabe Black [Wed, 18 Jul 2007 23:09:35 +0000 (16:09 -0700)]
Add a generateDisassembly function to the MicroFault StaticInst.
--HG--
extra : convert_revision :
73811bf99b26fad413c9b84a54f44e3763ff1835
Gabe Black [Wed, 18 Jul 2007 23:09:00 +0000 (16:09 -0700)]
Make name, isMachineCheckFault, and isAlignmentFault const.
--HG--
extra : convert_revision :
a27e0cbdfcb2a5fdc5979686f887cec7d106542b
Gabe Black [Wed, 18 Jul 2007 03:54:55 +0000 (20:54 -0700)]
Calculate the correct address size.
--HG--
extra : convert_revision :
6bd9d5a01ba6600781e3678e0403dca524fb2cba
Gabe Black [Wed, 18 Jul 2007 01:12:33 +0000 (18:12 -0700)]
Make disassembled x86 register indices reflect their size.
This doesn't handle high byte register accesses. It also highlights the fact that address size isn't actually being calculated, and that the size a microop uses needs to be overridable from the microassembly.
--HG--
extra : convert_revision :
d495ac4f5756dc55a5f71953ff6963b3c030e6cb
Gabe Black [Tue, 17 Jul 2007 23:55:33 +0000 (16:55 -0700)]
Implemented jnz.
--HG--
extra : convert_revision :
ea169ad68acbb3383443586b783b831b3a9eecf9
Gabe Black [Tue, 17 Jul 2007 23:50:13 +0000 (16:50 -0700)]
Use limm to set up immediate value for subtract instruction.
--HG--
extra : convert_revision :
f94e391e36a47c2f5222f30d7e28f48f7875db58
Gabe Black [Tue, 17 Jul 2007 22:36:45 +0000 (15:36 -0700)]
Implement the jz instruction.
--HG--
extra : convert_revision :
7c0bd7ce244f724ac03bbb5fdf770c7a3eba78b4
Gabe Black [Tue, 17 Jul 2007 22:35:34 +0000 (15:35 -0700)]
Make "test" set some condition codes.
It still needs to zero the overflow and carry flags to be correct.
--HG--
extra : convert_revision :
73cb3a55f7b4234389d9355f5ad45da6aaaa6c60
Gabe Black [Tue, 17 Jul 2007 22:33:18 +0000 (15:33 -0700)]
Add in support for condition code flags.
Some microops can set the condition codes, and some of them can be predicated on them. Some of the codes aren't implemented because it was unclear from the AMD patent what they actually did. They are used with string instructions, but they use variables IP, DTF, and SSTF which don't appear to be documented.
--HG--
extra : convert_revision :
2236cccd07d0091762b50148975f301bb1d2da3f
Gabe Black [Tue, 17 Jul 2007 22:28:48 +0000 (15:28 -0700)]
Add in operand which holds the condition code bits of the flag register.
--HG--
extra : convert_revision :
416052f41fccc8286b3bdbe8d559512a761224f2
Gabe Black [Tue, 17 Jul 2007 22:27:28 +0000 (15:27 -0700)]
Add symbols for each of the flags a microop could set and each condition it could check.
--HG--
extra : convert_revision :
1f542b8aadfd5146539cadef631b49d77f578472
Gabe Black [Tue, 17 Jul 2007 20:30:23 +0000 (13:30 -0700)]
Actually include miscregs.hh
--HG--
extra : convert_revision :
6ebf906d2211b94f28c173f0d2da91bd446fcb2c
Gabe Black [Tue, 17 Jul 2007 20:29:40 +0000 (13:29 -0700)]
Create a file to describe misc registers.
Define bitfields, indices, etc.
--HG--
extra : convert_revision :
8fffdc4cf796d304b12b317d8bddf5685bd50cf4
Gabe Black [Tue, 17 Jul 2007 20:28:03 +0000 (13:28 -0700)]
Create a file of functions for computing condition codes.
These haven't been very thuroughly tested, so use at your own risk.
--HG--
extra : convert_revision :
938885d36fea4a99f8228cdf195a0e0a38dd9031
Gabe Black [Tue, 17 Jul 2007 20:26:06 +0000 (13:26 -0700)]
Add a spot for the condition code portion of the flag register.
This is stored in the integer register file so that it can be renamed, but it should be a misc reg.
--HG--
extra : convert_revision :
eee48f24dd80b145f14427482047c4d8af2521ab
Gabe Black [Tue, 17 Jul 2007 20:23:42 +0000 (13:23 -0700)]
Add a conversion constructor so a bitunion can be initialized to a value.
Previously, the bitunion would need to be declared and then assigned to separately.
--HG--
extra : convert_revision :
d229bd83bc7baeca2259d4e7b080f359915015f3
Gabe Black [Sun, 15 Jul 2007 00:28:26 +0000 (17:28 -0700)]
Move bitunion code into it's own file.
--HG--
extra : convert_revision :
8d55ca9645ee4e357b7f4595435542eb72490331
Gabe Black [Sun, 15 Jul 2007 00:14:19 +0000 (17:14 -0700)]
Pull some hard coded base classes out of the isa description.
--HG--
rename : src/arch/x86/isa/base.isa => src/arch/x86/isa/outputblock.isa
extra : convert_revision :
7954e7d5eea3b5966c9e273a08bcd169a39f380c
Nathan Binkert [Sat, 14 Jul 2007 05:39:41 +0000 (22:39 -0700)]
ignore stuff that we don't want to see in the status
--HG--
extra : convert_revision :
c4a4711cf515507d4debcacacef5799adcfe3bef
Nathan Binkert [Sat, 14 Jul 2007 05:24:04 +0000 (22:24 -0700)]
transfer tags
--HG--
extra : convert_revision :
7e83aabe9926dae16d4732a6260c89b4344919e9
Korey Sewell [Fri, 29 Jun 2007 19:13:50 +0000 (15:13 -0400)]
fix store instructions, pass fast/quick Atomic/TimingSimpleCPU regressions...
src/arch/mips/isa/decoder.isa:
commment out deret instruction for now...
src/arch/mips/isa/formats/fp.isa:
edit fp format
src/arch/mips/isa/formats/mem.isa:
fix for basic store instructions
--HG--
extra : convert_revision :
30cb5a474e78ac9292b6ab37d433db947a177731
Korey Sewell [Thu, 28 Jun 2007 09:30:46 +0000 (05:30 -0400)]
o3cpu build for mips
--HG--
extra : convert_revision :
2c0be7a8c0a54ba5b1b2b69468f788d20abc8452
Korey Sewell [Sat, 23 Jun 2007 01:09:35 +0000 (21:09 -0400)]
FINISH off merge of mips mt/dsp isa extensions by adding the ControlBitfieldOPerand to ISA Parser. Now, while things do build, we have to fix broken functionality...
src/arch/isa_parser.py:
add back deleted writeback in Control Operand
--HG--
extra : convert_revision :
dba11af220a1281fa53f79d87e4f8752bdfc56db
Korey Sewell [Sat, 23 Jun 2007 00:09:46 +0000 (20:09 -0400)]
add Control Bitfield class
--HG--
extra : convert_revision :
31e7243c8820cb9f6744c53c417460dee9adaf44
Korey Sewell [Fri, 22 Jun 2007 23:03:42 +0000 (19:03 -0400)]
mips import pt. 1
src/arch/mips/SConscript:
"mips import pt.1".
--HG--
extra : convert_revision :
2e393341938bebf32fb638a209262d074fad4cc1
Gabe Black [Fri, 22 Jun 2007 21:44:33 +0000 (17:44 -0400)]
Merge zizzer.eecs.umich.edu:/bk/newmem
into zizzer.eecs.umich.edu:/.automount/wexford/x/gblack/newmem-o3-micro
--HG--
extra : convert_revision :
3fa3fa4544ff8c9d2135e1befe6c8f4757006a2a
Gabe Black [Fri, 22 Jun 2007 19:06:10 +0000 (15:06 -0400)]
Update of reference outputs. SPARC_SE o3 gzip didn't have reference outputs, mcf has a reduced input size, and most of the other changes are for a change in how branch mispredicts work which makes things more accurate.
--HG--
extra : convert_revision :
33ad6a220945b344d2fc5c6abef8e67467e0c0ec
Gabe Black [Thu, 21 Jun 2007 20:35:27 +0000 (20:35 +0000)]
Make symbols for regular registers.
--HG--
extra : convert_revision :
28a6df1efe4298877dc2b20179caeb25dfdc4622
Gabe Black [Thu, 21 Jun 2007 20:35:26 +0000 (20:35 +0000)]
Get rid of an unnecessary include file.
--HG--
extra : convert_revision :
d8d139180917f54006a5a79df4a0f206ddd39fed
Gabe Black [Thu, 21 Jun 2007 20:35:25 +0000 (20:35 +0000)]
Merge zizzer.eecs.umich.edu:/bk/newmem
into ahchoo.blinky.homelinux.org:/home/gblack/m5/newmem-o3-micro
src/cpu/o3/fetch_impl.hh:
hand merge
--HG--
extra : convert_revision :
3f71f3ac2035eec8b6f7bceb6906edb4dd09c045
Gabe Black [Thu, 21 Jun 2007 20:35:23 +0000 (20:35 +0000)]
Merge zizzer.eecs.umich.edu:/bk/newmem
into ahchoo.blinky.homelinux.org:/home/gblack/m5/newmem-x86
--HG--
extra : convert_revision :
ba4d93f354749d02278b16e78b4ecd4b2311416b
Ali Saidi [Thu, 21 Jun 2007 20:35:22 +0000 (16:35 -0400)]
update stats for fixed nextCycle()
--HG--
extra : convert_revision :
3626c4d2d67ed190d846f6edae06c43444a14feb
Ali Saidi [Thu, 21 Jun 2007 17:50:35 +0000 (13:50 -0400)]
Use FastAlloc for Packet, Request, CoherenceState, and SenderState so we don't spend so much time calling malloc()
--HG--
extra : convert_revision :
a946564eee46ed7d2aed41c32d488ca7f036c32f
Gabe Black [Thu, 21 Jun 2007 15:30:05 +0000 (15:30 +0000)]
Use the new symbols to clean up the assembler.
--HG--
extra : convert_revision :
005464e875ede1e37dfe0e0482c29fd793ca52be
Gabe Black [Thu, 21 Jun 2007 15:29:02 +0000 (15:29 +0000)]
Needed for last change set to work :P
--HG--
extra : convert_revision :
9e57e582dd1ef2805d5adffcc0ccfd99596d9f54
Gabe Black [Thu, 21 Jun 2007 15:28:08 +0000 (15:28 +0000)]
Define symbols for the x86 specialization of the microassembler.
--HG--
extra : convert_revision :
1fd66ba519d211fec18641b6df94b7640c56080c
Gabe Black [Thu, 21 Jun 2007 15:26:38 +0000 (15:26 +0000)]
Fix a comment.
--HG--
extra : convert_revision :
17e67cf6ea17fe6f971ef608547983fbb94adec9
Gabe Black [Thu, 21 Jun 2007 15:26:01 +0000 (15:26 +0000)]
Fix a problem where part of a microops parameters might be interpretted as an "ID", and also added support for symbols.
--HG--
extra : convert_revision :
60d1ef677a6a59a9d897086893843ec1ec368148
Gabe Black [Thu, 21 Jun 2007 13:48:44 +0000 (13:48 +0000)]
Add in code that lays the ground work for setting flags.
--HG--
extra : convert_revision :
e4fcb64d45804700a0ef34e8acf5615b66e2a527
Gabe Black [Thu, 21 Jun 2007 02:48:25 +0000 (19:48 -0700)]
long is too long
--HG--
extra : convert_revision :
7342cd4a1700a247f30d6f85fc6c2685341ba20e
Gabe Black [Thu, 21 Jun 2007 02:46:45 +0000 (19:46 -0700)]
Fix compiler errors.
--HG--
extra : convert_revision :
2b10076a24cb36cb748e299011ae691f09c158cd
Gabe Black [Wed, 20 Jun 2007 19:08:04 +0000 (19:08 +0000)]
Implement rip relative addressing and put in some missing loads and stores.
--HG--
extra : convert_revision :
99053414cef40f13c5226871a72909b2622d8c26
Gabe Black [Wed, 20 Jun 2007 19:06:08 +0000 (19:06 +0000)]
Fix a newly introduced bug where the predecoder wasn't picking up all the displacement.
--HG--
extra : convert_revision :
9202c11ee187458adcd85ba616b7f7f4bdd4eec1
Gabe Black [Wed, 20 Jun 2007 19:05:06 +0000 (19:05 +0000)]
X86 probably doesn't need a window save area.
--HG--
extra : convert_revision :
c4a76262d4396f5f5b96b1c9e751014c2abbd78a
Gabe Black [Wed, 20 Jun 2007 19:04:41 +0000 (19:04 +0000)]
Fix a typo in one of the operand type tags.
--HG--
extra : convert_revision :
bea87214ba4b40d75a350b803154836ec6d0ae9e
Gabe Black [Wed, 20 Jun 2007 19:04:40 +0000 (19:04 +0000)]
Comment out some unnecessary debug output.
--HG--
extra : convert_revision :
9df17841d970a7995d8ed1d51ee66e2c5457e5e3
Gabe Black [Wed, 20 Jun 2007 19:04:39 +0000 (19:04 +0000)]
Forgot to check these in...
--HG--
extra : convert_revision :
f489fda15740bae0a73bfb012f3bab5790b5c2b5
Gabe Black [Wed, 20 Jun 2007 19:04:38 +0000 (19:04 +0000)]
Comment out some unnecessary debug statements.
--HG--
extra : convert_revision :
aabaaf099f070832bf42cedf2472170e0738ee1c
Gabe Black [Wed, 20 Jun 2007 19:04:37 +0000 (19:04 +0000)]
Merge zizzer.eecs.umich.edu:/bk/newmem
into ahchoo.blinky.homelinux.org:/home/gblack/m5/newmem-x86
--HG--
extra : convert_revision :
f2fac2b1a09e709021cd8382a9fbe805df2177ef
Vincentius Robby [Wed, 20 Jun 2007 19:04:36 +0000 (15:04 -0400)]
Minor error.
--HG--
extra : convert_revision :
514032e21c8861f20fcbcae7204e132088cc7dbc
Vincentius Robby [Wed, 20 Jun 2007 18:54:17 +0000 (14:54 -0400)]
Removed "adding instead of dividing" trick.
Caused slowdown in performance instead of speeding up.
src/cpu/base.cc:
Removed "adding instead of dividing" trick.
src/mem/bus.cc:
Fixed spelling in comments.
Removed "adding instead of dividing" trick.
--HG--
extra : convert_revision :
65a736f4f09a64e737dc7aeee53b117976330488
Nathan Binkert [Wed, 20 Jun 2007 15:15:06 +0000 (08:15 -0700)]
Don't do checker stuff if the checker is not defined
--HG--
extra : convert_revision :
1c920b050c21e592a386410e4e9f45354f8e4441
Nathan Binkert [Wed, 20 Jun 2007 15:14:11 +0000 (08:14 -0700)]
Make sure all parameters have default values if they're
supposed to and make sure parameters have the right type.
Also make sure that any object that should be an intermediate
type has the right options set.
--HG--
extra : convert_revision :
d56910628d9a067699827adbc0a26ab629d11e93
Nathan Binkert [Wed, 20 Jun 2007 15:12:10 +0000 (08:12 -0700)]
Don't go over 80 chars per line
--HG--
extra : convert_revision :
ec73c3c8788757990a6fab8c600f3b353d0d4206
Gabe Black [Wed, 20 Jun 2007 15:02:50 +0000 (15:02 +0000)]
Make memory instructions work better, add more macroop implementations, add an lea microop, move EmulEnv into it's own .cc and .hh.
--HG--
extra : convert_revision :
1212b8463eab1c1dcba7182c487d1e9184cf9bea
Gabe Black [Wed, 20 Jun 2007 01:54:40 +0000 (18:54 -0700)]
Merge zizzer.eecs.umich.edu:/bk/newmem
into doughnut.hpl.hp.com:/home/gblack/newmem-o3-micro
src/cpu/base_dyn_inst_impl.hh:
src/cpu/o3/fetch_impl.hh:
Hand merge
--HG--
extra : convert_revision :
0c0692033ac30133672d8dfe1f1a27e9d9e95a3d
Gabe Black [Tue, 19 Jun 2007 22:40:10 +0000 (22:40 +0000)]
More faithfulness to what instructions should work in what modes, and added the MOVSXD instruction.
--HG--
extra : convert_revision :
38b9bf6cd4bdec6355b1158967c7d3562715cacd
Gabe Black [Tue, 19 Jun 2007 19:01:02 +0000 (19:01 +0000)]
Missed an "offset" to get rid of.
--HG--
extra : convert_revision :
7542f130b269a6a09e6ed51ae4689d1faa45a155
Gabe Black [Tue, 19 Jun 2007 18:17:34 +0000 (18:17 +0000)]
Make branches work by repopulating the predecoder every time through. This is probably fine as far as the predecoder goes, but the simple cpu might want to not refetch something it already has. That reintroduces the self modifying code problem though.
--HG--
extra : convert_revision :
802197e65f8dc1ad657c6b346091e03cb563b0c0
Gabe Black [Tue, 19 Jun 2007 17:56:06 +0000 (17:56 +0000)]
Make instructions that are illegal in 64 bit mode not do the wrong thing in 64 bit mode. Also add in more versions of PUSH and POP, and a version of near CALL.
--HG--
extra : convert_revision :
7d8266cdfa54ac25610466b3533d3e9e5433297b
Gabe Black [Tue, 19 Jun 2007 17:53:10 +0000 (17:53 +0000)]
Make an error message a little more descriptive.
--HG--
extra : convert_revision :
dbde025b1dcec0083e7276a9938bd21e7ab2887f
Gabe Black [Tue, 19 Jun 2007 14:50:35 +0000 (14:50 +0000)]
Renovate the "fault" microop implementation.
--HG--
extra : convert_revision :
dc9d67dd5413f00f16d37cb2d0f8b0d10971e14a
Gabe Black [Tue, 19 Jun 2007 14:26:42 +0000 (14:26 +0000)]
Get rid of the commented out versions of macroops which have been reimplemented. The comments are basically functioning like a todo list.
--HG--
extra : convert_revision :
cb07e3813f6cf882b4a5c77c498ffbca26adf586
Gabe Black [Tue, 19 Jun 2007 14:18:46 +0000 (14:18 +0000)]
Merge zizzer.eecs.umich.edu:/bk/newmem
into ahchoo.blinky.homelinux.org:/home/gblack/m5/newmem-x86
--HG--
extra : convert_revision :
2dfc24b0720b3b378858a289e4bb6f4ee7132b3d
Gabe Black [Tue, 19 Jun 2007 14:18:25 +0000 (14:18 +0000)]
Get rid of the immediate and displacement components of the EmulEnv struct and use them directly out of the instruction. The extra copies are conceptually realistic but are just innefficient as implemented. Also don't use the zeroeth microcode register for general storage since it's now the zero register, and implement a load and a store microops.
--HG--
extra : convert_revision :
0686296ca8b72940d961ecc6051063bfda1e932d
Gabe Black [Tue, 19 Jun 2007 14:15:21 +0000 (14:15 +0000)]
Add a stack size bitfield and expose the mode component of the ExtMachInst.
--HG--
extra : convert_revision :
aad0ec51745fb94335898b0565bb11c1b399bbee
Gabe Black [Tue, 19 Jun 2007 14:14:17 +0000 (14:14 +0000)]
Add a function to print out segment names.
--HG--
extra : convert_revision :
8cbe3ca0d05165f7da5d6fa38c899ecc9e782511
Ali Saidi [Mon, 18 Jun 2007 22:11:07 +0000 (18:11 -0400)]
fix bug in timing cpu. getTime() is the time the requset was created, not the time it was repsonded to. In timing mode the
time it was responded to is curTick. Doesn't change the results, but it does make implementation of nextCycle() more difficult
--HG--
extra : convert_revision :
67ed6261a5451d17d96d5df45992590acc353afc
Gabe Black [Mon, 18 Jun 2007 14:16:08 +0000 (14:16 +0000)]
Merge zizzer.eecs.umich.edu:/bk/newmem
into ahchoo.blinky.homelinux.org:/home/gblack/m5/newmem-x86
--HG--
extra : convert_revision :
fd64f2de0051afdc51e833a7cbf7fa120b230cc3
Gabe Black [Mon, 18 Jun 2007 14:15:47 +0000 (14:15 +0000)]
Get rid of unnecessary output.
--HG--
extra : convert_revision :
0df9a12788b8ce3225c113c095d5f13e49a7c544
Gabe Black [Mon, 18 Jun 2007 14:15:00 +0000 (14:15 +0000)]
Add in incomplete pick and merge functions which read and write pieces of registers, and fill out microcode disassembly.
--HG--
extra : convert_revision :
56332b3999a9079b1bd305ee2826abdf593367e1
Ali Saidi [Sun, 17 Jun 2007 18:01:01 +0000 (14:01 -0400)]
since the o3 cpu perlbmk regression doesn't work, just delete it. Perhaps the regression will terminate now
--HG--
extra : convert_revision :
509e42c2abc4bce1f56dc0b6a69e5c27ab95f448
Steve Reinhardt [Sat, 16 Jun 2007 21:05:05 +0000 (14:05 -0700)]
memtest.cc:
No need to initialize memory contents; should come up as 0.
src/cpu/memtest/memtest.cc:
No need to initialize memory contents; should come up as 0.
--HG--
extra : convert_revision :
1713676956f3d33b4686fee2650bd17027bcc495
Gabe Black [Thu, 14 Jun 2007 20:52:25 +0000 (20:52 +0000)]
Add in some microregs.
--HG--
extra : convert_revision :
e8a894c2f7901329bd390a4cfd92209d0e29cf80
Gabe Black [Thu, 14 Jun 2007 20:52:24 +0000 (20:52 +0000)]
Sign extend byte immediates as well. There might need to be a fancier system in place to handle this in the future.
--HG--
extra : convert_revision :
2c5bd719c770d9a93a57bd29782842f82384863d
Gabe Black [Thu, 14 Jun 2007 20:52:23 +0000 (20:52 +0000)]
Fix limm.
--HG--
extra : convert_revision :
ab76b11c2bb2f3abc0e7a84f7167d92d16ed074e
Gabe Black [Thu, 14 Jun 2007 20:52:22 +0000 (20:52 +0000)]
Implement a handful more instructions and differentiate macroops based on the operand types they expect.
--HG--
extra : convert_revision :
f9c8e694a8c0eb33b988657dca03ab495b65bee8
Gabe Black [Thu, 14 Jun 2007 20:52:21 +0000 (20:52 +0000)]
Move the high byte register indices to the right place.
--HG--
extra : convert_revision :
3f04036d598b6572bab6ec06d162b97564a6529c
Gabe Black [Thu, 14 Jun 2007 20:52:20 +0000 (20:52 +0000)]
Merge zizzer.eecs.umich.edu:/bk/newmem
into ahchoo.blinky.homelinux.org:/home/gblack/m5/newmem-x86
--HG--
extra : convert_revision :
ba718de4d676f6d0bd80c29de46be1f6a2f73feb
Vincentius Robby [Thu, 14 Jun 2007 20:52:19 +0000 (16:52 -0400)]
Modified instruction decode method.
Make code compatible with new decode method.
src/arch/alpha/remote_gdb.cc:
src/cpu/base_dyn_inst_impl.hh:
src/cpu/exetrace.cc:
src/cpu/simple/base.cc:
Make code compatible with new decode method.
src/cpu/static_inst.cc:
src/cpu/static_inst.hh:
Modified instruction decode method.
--HG--
extra : convert_revision :
a9a6d3a16fff59bc95d0606ea344bd57e71b8d0a
Gabe Black [Thu, 14 Jun 2007 13:53:27 +0000 (13:53 +0000)]
Fix an assert to allow rounding mode 0.
--HG--
extra : convert_revision :
119cc87ccf939d3a0048d87d18e125deca378bb7
Gabe Black [Thu, 14 Jun 2007 13:52:08 +0000 (13:52 +0000)]
Make POP special case its dataSize to default to 64 bits in 64 bit mode.
--HG--
extra : convert_revision :
5c6251d962d9997676ffc795bb92eeb588caed39
Gabe Black [Thu, 14 Jun 2007 13:50:58 +0000 (13:50 +0000)]
Put the mode in the ExtMachInst.
--HG--
extra : convert_revision :
7fc6567ab3d35c06901e6c8a0435f7cab819e17e
Gabe Black [Thu, 14 Jun 2007 13:49:23 +0000 (13:49 +0000)]
Get rid of an unnecessary debug statement.
--HG--
extra : convert_revision :
0b306dd96f5358474ad6a8bf4a949c12bcd139cd