Make the m5 psuedo instructions use the BasicOperate format
authorGabe Black <gblack@eecs.umich.edu>
Wed, 28 Feb 2007 16:49:17 +0000 (16:49 +0000)
committerGabe Black <gblack@eecs.umich.edu>
Wed, 28 Feb 2007 16:49:17 +0000 (16:49 +0000)
--HG--
extra : convert_revision : f02da702ab9b99da124fac7e10a07386b04f3a0f

src/arch/sparc/isa/decoder.isa

index 3b84e30739993ad3b6e3810c922a70c2ca25653d..36b9d1caa5f4030802f3f5e45aae68b9794126f5 100644 (file)
@@ -1012,17 +1012,19 @@ decode OP default Unknown::unknown()
             // M5 special opcodes use the reserved IMPDEP2A opcode space
             0x37: decode M5FUNC {
 #if FULL_SYSTEM
-                // we have 7 bits of space here to play with...
-                0x21: m5exit({{PseudoInst::m5exit(xc->tcBase(), O0);
-                              }}, No_OpClass, IsNonSpeculative);
-                0x50: m5readfile({{
-                                 O0 = PseudoInst::readfile(xc->tcBase(), O0, O1, O2);
-                                 }}, IsNonSpeculative);
-                0x51: m5break({{PseudoInst::debugbreak(xc->tcBase());
-                              }}, IsNonSpeculative);
-                0x54: m5panic({{
-                              panic("M5 panic instruction called at pc=%#x.", xc->readPC());
-                              }}, No_OpClass, IsNonSpeculative);
+                format BasicOperate {
+                    // we have 7 bits of space here to play with...
+                    0x21: m5exit({{PseudoInst::m5exit(xc->tcBase(), O0);
+                                  }}, No_OpClass, IsNonSpeculative);
+                    0x50: m5readfile({{
+                                     O0 = PseudoInst::readfile(xc->tcBase(), O0, O1, O2);
+                                     }}, IsNonSpeculative);
+                    0x51: m5break({{PseudoInst::debugbreak(xc->tcBase());
+                                  }}, IsNonSpeculative);
+                    0x54: m5panic({{
+                                  panic("M5 panic instruction called at pc=%#x.", xc->readPC());
+                                  }}, No_OpClass, IsNonSpeculative);
+                }
 #endif
                 default: Trap::impdep2({{fault = new IllegalInstruction;}});
             }