57a58,62
> //////////////////////////////////////////////////////////////////////////////
> //
> // Architecture independent
> //
>
63c68
< M5_DUMMY_RETURN
---
> return NoFault;
69,71c74,75
< // Base class for most macroops, except ones that need to commit as
< // they go.
< class X86MacroInst : public StaticInst
---
> // Base class for macroops
> class MacroOp : public StaticInst
77c81
< X86MacroInst(const char *mnem, ExtMachInst _machInst,
---
> MacroOp(const char *mnem, ExtMachInst _machInst,
87c91
< ~X86MacroInst()
---
> ~MacroOp()
99a104,109
> std::string generateDisassembly(Addr pc,
> const SymbolTable *symtab) const
> {
> return mnemonic;
> }
>
103a114,126
> // Basic instruction class declaration template.
> def template MacroDeclare {{
> /**
> * Static instruction class for "%(mnemonic)s".
> */
> class %(class_name)s : public %(base_class)s
> {
> public:
> // Constructor.
> %(class_name)s(ExtMachInst machInst);
> };
> }};
>
115a139,143
> //////////////////////////////////////////////////////////////////////////////
> //
> // X86 specific
> //
>
118,119c146
< baseClass = 'X86MacroInst'
< numMicroOps = len(opSeq.ops)
---
> numMicroOps = len(opSeq)
122c149
< for op in opSeq.ops:
---
> for op in opSeq:
125c152
< (micropc, op.getAllocator(True, op.delayed,
---
> (micropc, op.getAllocator('"' + name + '"', True, False, #op.delayed,
129c156
< iop = InstObjParams(name, Name, baseClass,
---
> iop = InstObjParams(name, Name, 'MacroOp',
132c159
< header_output = BasicDeclare.subst(iop)
---
> header_output = MacroDeclare.subst(iop)