summaryrefslogtreecommitdiff
path: root/src/arch
AgeCommit message (Collapse)Author
2007-07-18Make name, isMachineCheckFault, and isAlignmentFault const.Gabe Black
--HG-- extra : convert_revision : a27e0cbdfcb2a5fdc5979686f887cec7d106542b
2007-07-17Calculate the correct address size.Gabe Black
--HG-- extra : convert_revision : 6bd9d5a01ba6600781e3678e0403dca524fb2cba
2007-07-17Make disassembled x86 register indices reflect their size.Gabe Black
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
2007-07-17Implemented jnz.Gabe Black
--HG-- extra : convert_revision : ea169ad68acbb3383443586b783b831b3a9eecf9
2007-07-17Use limm to set up immediate value for subtract instruction.Gabe Black
--HG-- extra : convert_revision : f94e391e36a47c2f5222f30d7e28f48f7875db58
2007-07-17Implement the jz instruction.Gabe Black
--HG-- extra : convert_revision : 7c0bd7ce244f724ac03bbb5fdf770c7a3eba78b4
2007-07-17Make "test" set some condition codes.Gabe Black
It still needs to zero the overflow and carry flags to be correct. --HG-- extra : convert_revision : 73cb3a55f7b4234389d9355f5ad45da6aaaa6c60
2007-07-17Add in support for condition code flags.Gabe Black
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
2007-07-17Add in operand which holds the condition code bits of the flag register.Gabe Black
--HG-- extra : convert_revision : 416052f41fccc8286b3bdbe8d559512a761224f2
2007-07-17Add symbols for each of the flags a microop could set and each condition it ↵Gabe Black
could check. --HG-- extra : convert_revision : 1f542b8aadfd5146539cadef631b49d77f578472
2007-07-17Actually include miscregs.hhGabe Black
--HG-- extra : convert_revision : 6ebf906d2211b94f28c173f0d2da91bd446fcb2c
2007-07-17Create a file to describe misc registers.Gabe Black
Define bitfields, indices, etc. --HG-- extra : convert_revision : 8fffdc4cf796d304b12b317d8bddf5685bd50cf4
2007-07-17Add a spot for the condition code portion of the flag register.Gabe Black
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
2007-07-14Move bitunion code into it's own file.Gabe Black
--HG-- extra : convert_revision : 8d55ca9645ee4e357b7f4595435542eb72490331
2007-07-14Pull some hard coded base classes out of the isa description.Gabe Black
--HG-- rename : src/arch/x86/isa/base.isa => src/arch/x86/isa/outputblock.isa extra : convert_revision : 7954e7d5eea3b5966c9e273a08bcd169a39f380c
2007-06-29fix store instructions, pass fast/quick Atomic/TimingSimpleCPU regressions...Korey Sewell
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
2007-06-28o3cpu build for mipsKorey Sewell
--HG-- extra : convert_revision : 2c0be7a8c0a54ba5b1b2b69468f788d20abc8452
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