ARM: Make macroops panic if executed directly.
authorGabe Black <gblack@eecs.umich.edu>
Wed, 2 Jun 2010 17:58:03 +0000 (12:58 -0500)
committerGabe Black <gblack@eecs.umich.edu>
Wed, 2 Jun 2010 17:58:03 +0000 (12:58 -0500)
The macroop should never be executed, only it's microops will.

src/arch/arm/isa/insts/macromem.isa
src/arch/arm/isa/templates/macromem.isa

index b6d6b6b5d7285a8c577610432bd23716f087f7ef..3e466c70d1b47651966ea46319e78506b55ffb9b 100644 (file)
@@ -127,5 +127,4 @@ let {{
     iop = InstObjParams("ldmstm", "LdmStm", 'PredMacroOp', "", [])
     header_output = MacroMemDeclare.subst(iop)
     decoder_output = MacroMemConstructor.subst(iop)
-    exec_output = MacroMemExecute.subst(iop)
 }};
index c474da0c8170a06dace88141afdb2dd33e96c763..c626bdec8a4f63fdfd7f2e7d162b5f03388db881 100644 (file)
@@ -116,7 +116,7 @@ class %(class_name)s : public %(base_class)s
         %(class_name)s(ExtMachInst machInst, IntRegIndex rn,
                 bool index, bool up, bool user, bool writeback, bool load,
                 uint32_t reglist);
-        %(BasicExecDeclare)s
+        %(BasicExecPanic)s
 };
 }};
 
@@ -192,21 +192,3 @@ inline %(class_name)s::%(class_name)s(ExtMachInst machInst, IntRegIndex rn,
 }
 
 }};
-
-def template MacroMemExecute {{
-Fault %(class_name)s::execute(%(CPU_exec_context)s *xc, Trace::InstRecord *traceData) const
-{
-    Fault fault = NoFault;
-
-    %(fp_enable_check)s;
-    %(op_decl)s;
-    %(op_rd)s;
-    %(code)s;
-    if (fault == NoFault)
-    {
-        %(op_wb)s;
-    }
-
-    return fault;
-}
-}};