summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/arch/mips/isa/decoder.isa8
-rw-r--r--src/arch/mips/isa/formats/fp.isa8
2 files changed, 8 insertions, 8 deletions
diff --git a/src/arch/mips/isa/decoder.isa b/src/arch/mips/isa/decoder.isa
index 5ff23ca5e..22e34e32a 100644
--- a/src/arch/mips/isa/decoder.isa
+++ b/src/arch/mips/isa/decoder.isa
@@ -1242,8 +1242,8 @@ decode OPCODE_HI default Unknown::unknown() {
//Field When rs=W
0x4: decode FUNCTION {
format FloatConvertOp {
- 0x20: cvt_s_w({{ val = Fs_uw; }}, ToSingle);
- 0x21: cvt_d_w({{ val = Fs_uw; }}, ToDouble);
+ 0x20: cvt_s_w({{ val = Fs_sw; }}, ToSingle);
+ 0x21: cvt_d_w({{ val = Fs_sw; }}, ToDouble);
0x26: CP1Unimpl::cvt_ps_w();
}
default: CP1Unimpl::unknown();
@@ -1255,8 +1255,8 @@ decode OPCODE_HI default Unknown::unknown() {
//floating point operations are enabled."
0x5: decode FUNCTION {
format FloatConvertOp {
- 0x20: cvt_s_l({{ val = Fs_ud; }}, ToSingle);
- 0x21: cvt_d_l({{ val = Fs_ud; }}, ToDouble);
+ 0x20: cvt_s_l({{ val = Fs_sd; }}, ToSingle);
+ 0x21: cvt_d_l({{ val = Fs_sd; }}, ToDouble);
0x26: CP1Unimpl::cvt_ps_l();
}
default: CP1Unimpl::unknown();
diff --git a/src/arch/mips/isa/formats/fp.isa b/src/arch/mips/isa/formats/fp.isa
index e6f0258a0..1b061bc63 100644
--- a/src/arch/mips/isa/formats/fp.isa
+++ b/src/arch/mips/isa/formats/fp.isa
@@ -268,11 +268,11 @@ def format FloatConvertOp(code, *flags) {{
elif '_df' in code:
code = 'double ' + code + '\n'
convert += 'DOUBLE_TO_'
- elif '_uw' in code:
- code = 'uint32_t ' + code + '\n'
+ elif '_sw' in code:
+ code = 'int32_t ' + code + '\n'
convert += 'WORD_TO_'
- elif '_ud' in code:
- code = 'uint64_t ' + code + '\n'
+ elif '_sd' in code:
+ code = 'int64_t ' + code + '\n'
convert += 'LONG_TO_'
else:
sys.exit("Error Determining Source Type for Conversion")