summaryrefslogtreecommitdiff
path: root/src/arch
AgeCommit message (Collapse)Author
2007-06-22FINISH off merge of mips mt/dsp isa extensions by adding the ↵Korey Sewell
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
2007-06-22add Control Bitfield classKorey Sewell
--HG-- extra : convert_revision : 31e7243c8820cb9f6744c53c417460dee9adaf44
2007-06-22mips import pt. 1Korey Sewell
src/arch/mips/SConscript: "mips import pt.1". --HG-- extra : convert_revision : 2e393341938bebf32fb638a209262d074fad4cc1
2007-06-22Merge zizzer.eecs.umich.edu:/bk/newmemGabe Black
into zizzer.eecs.umich.edu:/.automount/wexford/x/gblack/newmem-o3-micro --HG-- extra : convert_revision : 3fa3fa4544ff8c9d2135e1befe6c8f4757006a2a
2007-06-21Make symbols for regular registers.Gabe Black
--HG-- extra : convert_revision : 28a6df1efe4298877dc2b20179caeb25dfdc4622
2007-06-21Get rid of an unnecessary include file.Gabe Black
--HG-- extra : convert_revision : d8d139180917f54006a5a79df4a0f206ddd39fed
2007-06-21Merge zizzer.eecs.umich.edu:/bk/newmemGabe Black
into ahchoo.blinky.homelinux.org:/home/gblack/m5/newmem-o3-micro src/cpu/o3/fetch_impl.hh: hand merge --HG-- extra : convert_revision : 3f71f3ac2035eec8b6f7bceb6906edb4dd09c045
2007-06-21Use the new symbols to clean up the assembler.Gabe Black
--HG-- extra : convert_revision : 005464e875ede1e37dfe0e0482c29fd793ca52be
2007-06-21Needed for last change set to work :PGabe Black
--HG-- extra : convert_revision : 9e57e582dd1ef2805d5adffcc0ccfd99596d9f54
2007-06-21Define symbols for the x86 specialization of the microassembler.Gabe Black
--HG-- extra : convert_revision : 1fd66ba519d211fec18641b6df94b7640c56080c
2007-06-21Fix a comment.Gabe Black
--HG-- extra : convert_revision : 17e67cf6ea17fe6f971ef608547983fbb94adec9
2007-06-21Fix a problem where part of a microops parameters might be interpretted as ↵Gabe Black
an "ID", and also added support for symbols. --HG-- extra : convert_revision : 60d1ef677a6a59a9d897086893843ec1ec368148
2007-06-21Add in code that lays the ground work for setting flags.Gabe Black
--HG-- extra : convert_revision : e4fcb64d45804700a0ef34e8acf5615b66e2a527
2007-06-20Implement rip relative addressing and put in some missing loads and stores.Gabe Black
--HG-- extra : convert_revision : 99053414cef40f13c5226871a72909b2622d8c26
2007-06-20Fix a newly introduced bug where the predecoder wasn't picking up all the ↵Gabe Black
displacement. --HG-- extra : convert_revision : 9202c11ee187458adcd85ba616b7f7f4bdd4eec1
2007-06-20X86 probably doesn't need a window save area.Gabe Black
--HG-- extra : convert_revision : c4a76262d4396f5f5b96b1c9e751014c2abbd78a
2007-06-20Fix a typo in one of the operand type tags.Gabe Black
--HG-- extra : convert_revision : bea87214ba4b40d75a350b803154836ec6d0ae9e
2007-06-20Comment out some unnecessary debug output.Gabe Black
--HG-- extra : convert_revision : 9df17841d970a7995d8ed1d51ee66e2c5457e5e3
2007-06-20Forgot to check these in...Gabe Black
--HG-- extra : convert_revision : f489fda15740bae0a73bfb012f3bab5790b5c2b5
2007-06-20Comment out some unnecessary debug statements.Gabe Black
--HG-- extra : convert_revision : aabaaf099f070832bf42cedf2472170e0738ee1c
2007-06-20Make memory instructions work better, add more macroop implementations, add ↵Gabe Black
an lea microop, move EmulEnv into it's own .cc and .hh. --HG-- extra : convert_revision : 1212b8463eab1c1dcba7182c487d1e9184cf9bea
2007-06-19Merge zizzer.eecs.umich.edu:/bk/newmemGabe Black
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
2007-06-19More faithfulness to what instructions should work in what modes, and added ↵Gabe Black
the MOVSXD instruction. --HG-- extra : convert_revision : 38b9bf6cd4bdec6355b1158967c7d3562715cacd
2007-06-19Make branches work by repopulating the predecoder every time through. This ↵Gabe Black
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
2007-06-19Make instructions that are illegal in 64 bit mode not do the wrong thing in ↵Gabe Black
64 bit mode. Also add in more versions of PUSH and POP, and a version of near CALL. --HG-- extra : convert_revision : 7d8266cdfa54ac25610466b3533d3e9e5433297b
2007-06-19Make an error message a little more descriptive.Gabe Black
--HG-- extra : convert_revision : dbde025b1dcec0083e7276a9938bd21e7ab2887f
2007-06-19Renovate the "fault" microop implementation.Gabe Black
--HG-- extra : convert_revision : dc9d67dd5413f00f16d37cb2d0f8b0d10971e14a
2007-06-19Get rid of the commented out versions of macroops which have been ↵Gabe Black
reimplemented. The comments are basically functioning like a todo list. --HG-- extra : convert_revision : cb07e3813f6cf882b4a5c77c498ffbca26adf586
2007-06-19Get rid of the immediate and displacement components of the EmulEnv struct ↵Gabe Black
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
2007-06-19Add a stack size bitfield and expose the mode component of the ExtMachInst.Gabe Black
--HG-- extra : convert_revision : aad0ec51745fb94335898b0565bb11c1b399bbee
2007-06-19Add a function to print out segment names.Gabe Black
--HG-- extra : convert_revision : 8cbe3ca0d05165f7da5d6fa38c899ecc9e782511
2007-06-18Get rid of unnecessary output.Gabe Black
--HG-- extra : convert_revision : 0df9a12788b8ce3225c113c095d5f13e49a7c544
2007-06-18Add in incomplete pick and merge functions which read and write pieces of ↵Gabe Black
registers, and fill out microcode disassembly. --HG-- extra : convert_revision : 56332b3999a9079b1bd305ee2826abdf593367e1
2007-06-14Add in some microregs.Gabe Black
--HG-- extra : convert_revision : e8a894c2f7901329bd390a4cfd92209d0e29cf80
2007-06-14Sign extend byte immediates as well. There might need to be a fancier system ↵Gabe Black
in place to handle this in the future. --HG-- extra : convert_revision : 2c5bd719c770d9a93a57bd29782842f82384863d
2007-06-14Fix limm.Gabe Black
--HG-- extra : convert_revision : ab76b11c2bb2f3abc0e7a84f7167d92d16ed074e
2007-06-14Implement a handful more instructions and differentiate macroops based on ↵Gabe Black
the operand types they expect. --HG-- extra : convert_revision : f9c8e694a8c0eb33b988657dca03ab495b65bee8
2007-06-14Move the high byte register indices to the right place.Gabe Black
--HG-- extra : convert_revision : 3f04036d598b6572bab6ec06d162b97564a6529c
2007-06-14Merge zizzer.eecs.umich.edu:/bk/newmemGabe Black
into ahchoo.blinky.homelinux.org:/home/gblack/m5/newmem-x86 --HG-- extra : convert_revision : ba718de4d676f6d0bd80c29de46be1f6a2f73feb
2007-06-14Modified instruction decode method.Vincentius Robby
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
2007-06-14Make POP special case its dataSize to default to 64 bits in 64 bit mode.Gabe Black
--HG-- extra : convert_revision : 5c6251d962d9997676ffc795bb92eeb588caed39
2007-06-14Put the mode in the ExtMachInst.Gabe Black
--HG-- extra : convert_revision : 7fc6567ab3d35c06901e6c8a0435f7cab819e17e
2007-06-14Get rid of an unnecessary debug statement.Gabe Black
--HG-- extra : convert_revision : 0b306dd96f5358474ad6a8bf4a949c12bcd139cd
2007-06-14Get rid of some debug output and let macroops set headers in their ↵Gabe Black
constructor. The intention is to allow them to modify the emulation environment struct before it's used to construct its microops. --HG-- extra : convert_revision : b04fc9ead8e3322fc3af3f14d75e2206ddfbe561
2007-06-14Fix up param regular expression to not duplicated the escaping \ and to pair ↵Gabe Black
up \s correctly. --HG-- extra : convert_revision : b4b790fb8cfd2a9e28568cf978eca70b1c65806b
2007-06-13Seperate the pc-pc and the pc of the incoming bytes, and get rid of the ↵Gabe Black
"moreBytes" which just takes a MachInst. src/arch/x86/predecoder.cc: Seperate the pc-pc and the pc of the incoming bytes, and get rid of the "moreBytes" which just takes a MachInst. Also make the "opSize" field describe the number of bytes and not the log of the number of bytes. --HG-- extra : convert_revision : 3a5ec7053ec69c5cba738a475d8b7fd9e6e6ccc0
2007-06-13Fix the operand type tag parser to recognize multi character register names.Gabe Black
--HG-- extra : convert_revision : e025620e29f2515d51240e96c4a05a4f74bdf72e
2007-06-13Partially implement "POP"Gabe Black
--HG-- extra : convert_revision : ba454579a6a82ce4924102a633e5758fb2a30b2d
2007-06-13Move load/store microops into their own file. They still don't do anything, ↵Gabe Black
though. --HG-- extra : convert_revision : 251763c614b9056c3ca7a85ef92c416552da893f
2007-06-13Fix the immediate version of register operations, and get their name to show ↵Gabe Black
up correctly. --HG-- extra : convert_revision : 9fc36b99c9027e35f22983d5d1e22c940fa093de