diff options
author | Korey Sewell <ksewell@umich.edu> | 2006-04-14 03:42:02 -0400 |
---|---|---|
committer | Korey Sewell <ksewell@umich.edu> | 2006-04-14 03:42:02 -0400 |
commit | 48f2626eaca40d4cf0b692f2ac8ec07eb5586516 (patch) | |
tree | 4dea41e402d5525ecf31763ee8633c9d5e92a16f /arch/mips/isa/formats/int.isa | |
parent | 200205aa8525822155fcbec2d321bbfa027a4721 (diff) | |
download | gem5-48f2626eaca40d4cf0b692f2ac8ec07eb5586516.tar.xz |
These fixes now allow all of the 20 mips tests to work properly!
Floating Point Mips Tests still need to be added, tested, and debugged.
arch/mips/isa/decoder.isa:
Fix mult and multu instructions. This semantic error causes the problem: <int64> = <int32> * <int32>. Although I was placing
the output into a 64-bit integer the multiply was just doing a 32-bit multiply so the solution is to just use
the 'sd' & 'ud' operands so that the ISA parser will use the int64_t and uint64_t types in calculation.
arch/mips/isa/formats/int.isa:
Trace output fix. Don't print first comma unless there is a destination register for sure!
--HG--
extra : convert_revision : 2c503dca70b104fed0b58454975f745dd3cc2eee
Diffstat (limited to 'arch/mips/isa/formats/int.isa')
-rw-r--r-- | arch/mips/isa/formats/int.isa | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/arch/mips/isa/formats/int.isa b/arch/mips/isa/formats/int.isa index 98e58f7f2..7d38b9ff5 100644 --- a/arch/mips/isa/formats/int.isa +++ b/arch/mips/isa/formats/int.isa @@ -64,10 +64,9 @@ output decoder {{ // it's generally implicit if (_numDestRegs > 0) { printReg(ss, _destRegIdx[0]); + ss << ","; } - ss << ","; - // just print the first two source regs... if there's // a third one, it's a read-modify-write dest (Rc), // e.g. for CMOVxx |