Added missing break statements and improved debugging in SelfVerification.
diff --git a/vm/compiler/codegen/arm/Assemble.c b/vm/compiler/codegen/arm/Assemble.c
index fd7c76b..25f8ce0 100644
--- a/vm/compiler/codegen/arm/Assemble.c
+++ b/vm/compiler/codegen/arm/Assemble.c
@@ -1928,8 +1928,9 @@
break;
case kSVWord:
data = *((u4*) addr);
+ break;
default:
- LOGE("*** ERROR: BAD SIZE IN selfVerificationLoad");
+ LOGE("*** ERROR: BAD SIZE IN selfVerificationLoad: %d", size);
data = 0;
dvmAbort();
}
@@ -2007,8 +2008,9 @@
break;
case kSVWord:
*((u4*) addr) = data;
+ break;
default:
- LOGE("*** ERROR: BAD SIZE IN selfVerificationSave");
+ LOGE("*** ERROR: BAD SIZE IN selfVerificationSave: %d", size);
dvmAbort();
}
}
@@ -2208,7 +2210,7 @@
if (insn & 0x400000) rt |= 0x10;
rt = rt << 1;
} else {
- LOGE("*** ERROR: UNRECOGNIZED VECTOR MEM OP");
+ LOGE("*** ERROR: UNRECOGNIZED VECTOR MEM OP: %x", opcode4);
dvmAbort();
}
rt += 14;
@@ -2234,7 +2236,7 @@
offset = imm12;
break;
default:
- LOGE("*** ERROR: UNRECOGNIZED MEM OP");
+ LOGE("*** ERROR: UNRECOGNIZED THUMB2 MEM OP: %x", opcode12);
offset = 0;
dvmAbort();
}
@@ -2347,7 +2349,7 @@
offset = imm;
break;
default:
- LOGE("*** ERROR: UNRECOGNIZED MEM OP");
+ LOGE("*** ERROR: UNRECOGNIZED THUMB MEM OP: %x", opcode5);
offset = 0;
dvmAbort();
}