ARM: Implement DBG instruction that doesn't do much for now.
authorGene Wu <Gene.Wu@arm.com>
Mon, 23 Aug 2010 16:18:41 +0000 (11:18 -0500)
committerGene Wu <Gene.Wu@arm.com>
Mon, 23 Aug 2010 16:18:41 +0000 (11:18 -0500)
src/arch/arm/isa/formats/branch.isa
src/arch/arm/isa/insts/misc.isa

index b1818adf02e033026ed7287884b15fc822295520..fccfe2897bd7b15e5b95c469c2445ae389681a22 100644 (file)
@@ -166,7 +166,7 @@ def format Thumb32BranchesAndMiscCtrl() {{
                                                   ((enable ? 1 : 0) << 9);
                             return new Cps(machInst, mods);
                         } else if ((op2 & 0xf0) == 0xf0) {
-                            return new WarnUnimplemented("dbg", machInst);
+                            return new Dbg(machInst);
                         } else {
                             switch (op2) {
                               case 0x0:
index 33197eaec39a98e8a61b344482a3072d64604481..1203726037c83e1453c0746015bc707f3a446d25 100644 (file)
@@ -708,6 +708,15 @@ let {{
     decoder_output += BasicConstructor.subst(dmbIop)
     exec_output += PredOpExecute.subst(dmbIop)
 
+    dbgCode = '''
+    '''
+    dbgIop = InstObjParams("dbg", "Dbg", "PredOp",
+                             {"code": dbgCode,
+                               "predicate_test": predicateTest})
+    header_output += BasicDeclare.subst(dbgIop)
+    decoder_output += BasicConstructor.subst(dbgIop)
+    exec_output += PredOpExecute.subst(dbgIop)
+
     cpsCode = '''
     uint32_t mode = bits(imm, 4, 0);
     uint32_t f = bits(imm, 5);