summaryrefslogtreecommitdiffstats
path: root/vm/compiler/codegen/arm/ArchUtility.c
diff options
context:
space:
mode:
authorBen Cheng <bccheng@android.com>2011-02-08 17:09:25 -0800
committerBen Cheng <bccheng@android.com>2011-02-08 17:16:48 -0800
commitd72564ca7aa66c6d95b6ca34299258b65ecfd1cb (patch)
tree41d7038a77c008911c77033bc296dfe1249efb37 /vm/compiler/codegen/arm/ArchUtility.c
parent238ab4b31a286d71a98400d01534fe9874fd1f57 (diff)
downloadandroid_dalvik-d72564ca7aa66c6d95b6ca34299258b65ecfd1cb.tar.gz
android_dalvik-d72564ca7aa66c6d95b6ca34299258b65ecfd1cb.tar.bz2
android_dalvik-d72564ca7aa66c6d95b6ca34299258b65ecfd1cb.zip
Misc goodies in the JIT in preparation for more aggressive code motion.
- Set up resource masks correctly for Thumb push/pop when LR/PC are involved. - Preserve LR around simulated heap references under self-verification mode. - Compact a few simple flags in ArmLIR into bit fields. - Minor performance tuning in TEMPLATE_MEM_OP_DECODE Change-Id: Id73edac837c5bb37dfd21f372d6fa21c238cf42a
Diffstat (limited to 'vm/compiler/codegen/arm/ArchUtility.c')
-rw-r--r--vm/compiler/codegen/arm/ArchUtility.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/vm/compiler/codegen/arm/ArchUtility.c b/vm/compiler/codegen/arm/ArchUtility.c
index 5af4f3b5c..c6bcac2bc 100644
--- a/vm/compiler/codegen/arm/ArchUtility.c
+++ b/vm/compiler/codegen/arm/ArchUtility.c
@@ -348,7 +348,7 @@ void dvmDumpLIRInsn(LIR *arg, unsigned char *baseAddr)
LOGD("L%p:\n", lir);
break;
default:
- if (lir->isNop && !dumpNop) {
+ if (lir->flags.isNop && !dumpNop) {
break;
}
buildInsnString(EncodingMap[lir->opcode].name, lir, opName,
@@ -357,15 +357,15 @@ void dvmDumpLIRInsn(LIR *arg, unsigned char *baseAddr)
256);
LOGD("%p (%04x): %-8s%s%s\n",
baseAddr + offset, offset, opName, buf,
- lir->isNop ? "(nop)" : "");
+ lir->flags.isNop ? "(nop)" : "");
break;
}
- if (lir->useMask && (!lir->isNop || dumpNop)) {
+ if (lir->useMask && (!lir->flags.isNop || dumpNop)) {
DUMP_RESOURCE_MASK(dvmDumpResourceMask((LIR *) lir,
lir->useMask, "use"));
}
- if (lir->defMask && (!lir->isNop || dumpNop)) {
+ if (lir->defMask && (!lir->flags.isNop || dumpNop)) {
DUMP_RESOURCE_MASK(dvmDumpResourceMask((LIR *) lir,
lir->defMask, "def"));
}