summaryrefslogtreecommitdiffstats
path: root/vm/compiler/codegen/armv5te/ArchUtility.c
diff options
context:
space:
mode:
authorBen Cheng <bccheng@android.com>2009-07-07 14:19:20 -0700
committerBen Cheng <bccheng@android.com>2009-07-09 11:13:15 -0700
commit38329f5678fd7a4879528b02a0ab60322d38a897 (patch)
treebe344dec1221a6567144652be38af587bc505310 /vm/compiler/codegen/armv5te/ArchUtility.c
parent396dfc908d8a5bb138c87db6674a4b1de2d94b4c (diff)
downloadandroid_dalvik-38329f5678fd7a4879528b02a0ab60322d38a897.tar.gz
android_dalvik-38329f5678fd7a4879528b02a0ab60322d38a897.tar.bz2
android_dalvik-38329f5678fd7a4879528b02a0ab60322d38a897.zip
Improved method invocation performance: 1.5x for virtual and 2.8x for interface.
- Implemented predicted chaining for invoke virtual and interface. - Eliminated a little bit of fat for invoke native. - Added 078-polymorphic-virtual for stress tests.
Diffstat (limited to 'vm/compiler/codegen/armv5te/ArchUtility.c')
-rw-r--r--vm/compiler/codegen/armv5te/ArchUtility.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/vm/compiler/codegen/armv5te/ArchUtility.c b/vm/compiler/codegen/armv5te/ArchUtility.c
index 7d7f119f6..e45c57291 100644
--- a/vm/compiler/codegen/armv5te/ArchUtility.c
+++ b/vm/compiler/codegen/armv5te/ArchUtility.c
@@ -167,8 +167,11 @@ static void dumpLIRInsn(LIR *arg, unsigned char *baseAddr)
case ARMV5TE_PSEUDO_CHAINING_CELL_HOT:
LOGD("-------- chaining cell (hot): 0x%04x\n", dest);
break;
- case ARMV5TE_PSEUDO_CHAINING_CELL_INVOKE:
- LOGD("-------- chaining cell (invoke): %s/%p\n",
+ case ARMV5TE_PSEUDO_CHAINING_CELL_INVOKE_PREDICTED:
+ LOGD("-------- chaining cell (predicted)\n");
+ break;
+ case ARMV5TE_PSEUDO_CHAINING_CELL_INVOKE_SINGLETON:
+ LOGD("-------- chaining cell (invoke singleton): %s/%p\n",
((Method *)dest)->name,
((Method *)dest)->insns);
break;