RTC Thumb2 JIT enhancements (diffs part 2)

ed at camswl.com ed at camswl.com
Thu Mar 11 03:25:32 PST 2010


diff -ruNE old/icedtea6/ports/hotspot/src/cpu/zero/vm/bytecodes_arm.def new2/icedtea6/ports/hotspot/src/cpu/zero/vm/bytecodes_arm.def
--- old/icedtea6/ports/hotspot/src/cpu/zero/vm/bytecodes_arm.def	2010-03-10 17:38:48.000000000 +0000
+++ new2/icedtea6/ports/hotspot/src/cpu/zero/vm/bytecodes_arm.def	2010-03-11 09:41:54.000000000 +0000
@@ -328,13 +328,13 @@
 
 (lconst_1) lconst_1 {
 	DISPATCH_START_R2
-        mov     tmp2, #1
+        mov     r3, #1
 	DISPATCH_NEXT
         mov     tmp1, #0
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	PUSH	tmp2, tmp1
+	PUSH	r3, tmp1
 	DISPATCH_FINISH
 }
 
@@ -360,10 +360,10 @@
 	DISPATCH_NEXT
         orr     tmp1, tmp1, #0x00f00000
 	DISPATCH_NEXT
-        mov     tmp2, #0
+        mov     r3, #0
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	PUSH	tmp2, tmp1
+	PUSH	r3, tmp1
 	DISPATCH_FINISH
 }
 
@@ -412,11 +412,11 @@
 	DISPATCH_START	\seq_len
 	sub	r3, locals, r2, lsl #2
 	DISPATCH_NEXT
-	ldmda	r3, {tmp2, tmp1}
+	ldmda	r3, {r3, tmp1}
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	PUSH	tmp2, tmp1
+	PUSH	r3, tmp1
 	DISPATCH_FINISH
 }
 
@@ -458,49 +458,49 @@
 
 (lload_0,dload_0) u8load_0 {
 	DISPATCH_START_R2
-        ldmda   locals, {tmp2-tmp1}
+        ldmda   locals, {r3, tmp1}
 	DISPATCH_NEXT
 	PUSH	tmp1
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	PUSH	tmp2
+	PUSH	r3
 	DISPATCH_FINISH
 }
 
 (lload_1,dload_1) u8load_1 {
 	DISPATCH_START_R2
-        ldmdb   locals, {tmp2-tmp1}
+        ldmdb   locals, {r3, tmp1}
 	DISPATCH_NEXT
 	PUSH	tmp1
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	PUSH	tmp2
+	PUSH	r3
 	DISPATCH_FINISH
 }
 
 (lload_2,dload_2) u8load_2 {
 	DISPATCH_START_R2
-	ldr	tmp2, [locals, #-12]
+	ldr	r3, [locals, #-12]
 	DISPATCH_NEXT
 	ldr	tmp1, [locals, #-8]
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	PUSH	tmp2, tmp1
+	PUSH	r3, tmp1
 	DISPATCH_FINISH
 }
 
 (lload_3,dload_3) u8load_3 {
 	DISPATCH_START_R2
-	ldr	tmp2, [locals, #-16]
+	ldr	r3, [locals, #-16]
 	DISPATCH_NEXT
 	ldr	tmp1, [locals, #-12]
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	PUSH	tmp2, tmp1
+	PUSH	r3, tmp1
 	DISPATCH_FINISH
 }
 
@@ -539,12 +539,12 @@
 	bcs	array_bound_exception_jpc_1
 	DISPATCH_NEXT
 	add	r3, r3, r2, lsl #3
-	ldr	tmp2, [r3, #BASE_OFFSET_LONG]
+	ldr	r1, [r3, #BASE_OFFSET_LONG]
 	DISPATCH_NEXT
 	ldr	tmp1, [r3, #20]
 	DISPATCH_NEXT
 	PUT_STACK	1, tmp1
-	PUT_STACK	0, tmp2
+	PUT_STACK	0, r1
 	DISPATCH_FINISH
 }
 
@@ -627,13 +627,13 @@
 @ r2 = [jpc, #1]
 (lstore,dstore) u8store {
 	DISPATCH_START	\seq_len
-	POP	tmp2, tmp1
+	POP	r1, tmp1
 	DISPATCH_NEXT
 	sub	r3, locals, r2, lsl #2
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	stmda	r3, {tmp2, tmp1}
+	stmda	r3, {r1, tmp1}
 	DISPATCH_FINISH
 }
 
@@ -684,30 +684,30 @@
 (lstore_0,dstore_0) u8store_0 {
 	DISPATCH_START_R2
 	DISPATCH_NEXT
-	POP	tmp2, tmp1
+	POP	r1, tmp1
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-        stmda   locals, {tmp2, tmp1}
+        stmda   locals, {r1, tmp1}
 	DISPATCH_FINISH
 }
 
 (lstore_1,dstore_1) u8store_1 {
 	DISPATCH_START_R2
 	DISPATCH_NEXT
-	POP	tmp2, tmp1
+	POP	r1, tmp1
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-        stmdb   locals, {tmp2, tmp1}
+        stmdb   locals, {r1, tmp1}
 	DISPATCH_FINISH
 }
 
 (lstore_2,dstore_2) u8store_2 {
 	DISPATCH_START_R2
-	POP	tmp2, tmp1
+	POP	r1, tmp1
 	DISPATCH_NEXT
-        str     tmp2, [locals, #-12]
+        str     r1, [locals, #-12]
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	DISPATCH_NEXT
@@ -717,9 +717,9 @@
 
 (lstore_3,dstore_3) u8store_3 {
 	DISPATCH_START_R2
-	POP	tmp2, tmp1
+	POP	r1, tmp1
 	DISPATCH_NEXT
-        str     tmp2, [locals, #-16]
+        str     r1, [locals, #-16]
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	DISPATCH_NEXT
@@ -728,72 +728,72 @@
 }
 
 (iastore,fastore) u4astore {
-	POP	r3, tmp2, tmp1		@ r3 = value, tmp2 = index, tmp1 = arrayref
+	POP	r1, tmp1, lr		@ r1 = value, tmp1 = index, lr = arrayref
 	DISPATCH_START_R2
-	SW_NPC	cmp	tmp1, #0
+	SW_NPC	cmp	lr, #0
 	SW_NPC	beq	null_ptr_exception_jpc_1
 .abortentry10:
-	ldr	lr, [tmp1, #8]		@ lr = limit
+	ldr	ip, [lr, #8]		@ lr = limit
 	DISPATCH_NEXT
-	cmp	tmp2, lr
-	bcs	array_bound_exception_jpc_1_tmp2
+	cmp	tmp1, ip
+	bcs	array_bound_exception_jpc_1_tmp1
 	DISPATCH_NEXT
-	add	tmp1, tmp1, tmp2, lsl #2
+	add	lr, lr, tmp1, lsl #2
 	DISPATCH_NEXT
-	str	r3, [tmp1, #BASE_OFFSET_WORD]
+	str	r1, [lr, #BASE_OFFSET_WORD]
 	DISPATCH_FINISH
 }
 
 (lastore,dastore) u8astore {
-	POP	r1, r3, tmp2, tmp1		@ r1,r3 = value, tmp2 = index, tmp1 = arrayref
+	POP	r1, r3, tmp1, lr		@ r1,r3 = value, tmp1 = index, lr = arrayref
 	DISPATCH_START_R2
-	SW_NPC	cmp	tmp1, #0
+	SW_NPC	cmp	lr, #0
 	SW_NPC	beq	null_ptr_exception_jpc_1
 .abortentry11:
-	ldr	ip, [tmp1, #8]		@ ip = limit
-	cmp	tmp2, ip
+	ldr	ip, [lr, #8]		@ ip = limit
+	cmp	tmp1, ip
 	DISPATCH_NEXT
-	bcs	array_bound_exception_jpc_1_tmp2
+	bcs	array_bound_exception_jpc_1_tmp1
 	DISPATCH_NEXT
-	add	tmp2, tmp1, tmp2, lsl #3
-	str	r1, [tmp2, #BASE_OFFSET_LONG]
+	add	tmp1, lr, tmp1, lsl #3
+	str	r1, [tmp1, #BASE_OFFSET_LONG]
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	str	r3, [tmp2, #20]
+	str	r3, [tmp1, #BASE_OFFSET_LONG+4]
 	DISPATCH_FINISH
 }
 
 (bastore) bastore {
-	POP	r3, tmp2, tmp1		@ r3 = value, tmp2 = index, tmp1 = arrayref
+	POP	r3, tmp1, lr		@ r3 = value, tmp1 = index, lr = arrayref
 	DISPATCH_START_R2
-	SW_NPC	cmp	tmp1, #0
+	SW_NPC	cmp	lr, #0
 	SW_NPC	beq	null_ptr_exception_jpc_1
 .abortentry12:
-	ldr	lr, [tmp1, #8]		@ lr = limit
+	ldr	ip, [lr, #8]		@ ip = limit
 	DISPATCH_NEXT
-	cmp	tmp2, lr
-	bcs	array_bound_exception_jpc_1_tmp2
+	cmp	tmp1, ip
+	bcs	array_bound_exception_jpc_1_tmp1
 	DISPATCH_NEXT
-	add	tmp1, tmp1, tmp2
+	add	lr, lr, tmp1
 	DISPATCH_NEXT
-	strb	r3, [tmp1, #BASE_OFFSET_BYTE]
+	strb	r3, [lr, #BASE_OFFSET_BYTE]
 	DISPATCH_FINISH
 }
 
 (castore,sastore) u2astore {
-	POP	r3, tmp2, tmp1		@ r3 = value, tmp2 = index, tmp1 = arrayref
+	POP	r3, tmp1, lr		@ r3 = value, tmp1 = index, lr = arrayref
 	DISPATCH_START_R2
-	SW_NPC	cmp	tmp1, #0
+	SW_NPC	cmp	lr, #0
 	SW_NPC	beq	null_ptr_exception_jpc_1
 .abortentry13:
-	ldr	lr, [tmp1, #8]		@ lr = limit
+	ldr	ip, [lr, #8]		@ ip = limit
 	DISPATCH_NEXT
-	cmp	tmp2, lr
-	bcs	array_bound_exception_jpc_1_tmp2
+	cmp	tmp1, ip
+	bcs	array_bound_exception_jpc_1_tmp1
 	DISPATCH_NEXT
-	add	tmp1, tmp1, tmp2, lsl #1
+	add	lr, lr, tmp1, lsl #1
 	DISPATCH_NEXT
-	strh	r3, [tmp1, #BASE_OFFSET_SHORT]
+	strh	r3, [lr, #BASE_OFFSET_SHORT]
 	DISPATCH_FINISH
 }
 
@@ -877,13 +877,13 @@
 
 (iadd) iadd {
 	DISPATCH_START_R2
-	POP	tmp2, tmp1
+	POP	r1, tmp1
 	DISPATCH_NEXT
-	add	tmp2, tmp2, tmp1
+	add	r1, r1, tmp1
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	PUSH	tmp2
+	PUSH	r1
 	DISPATCH_FINISH
 }
 
@@ -900,13 +900,13 @@
 
 (isub) isub {
 	DISPATCH_START_R2
-	POP	tmp2, tmp1
+	POP	r1, tmp1
 	DISPATCH_NEXT
-	sub	tmp2, tmp1, tmp2
+	sub	r1, tmp1, r1
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	PUSH	tmp2
+	PUSH	r1
 	DISPATCH_FINISH
 }
 
@@ -925,11 +925,11 @@
 	DISPATCH_START_R2
 	POP	r2, tmp1
 	DISPATCH_NEXT
-	mul	tmp2, r2, tmp1
+	mul	r1, r2, tmp1
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	PUSH	tmp2
+	PUSH	r1
 	DISPATCH_FINISH
 }
 
@@ -1112,13 +1112,13 @@
 
 (iand) iand {
 	DISPATCH_START_R2
-	POP	tmp2, tmp1
+	POP	r1, tmp1
 	DISPATCH_NEXT
-	and	tmp2, tmp1, tmp2
+	and	r1, tmp1, r1
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	PUSH	tmp2
+	PUSH	r1
 	DISPATCH_FINISH
 }
 
@@ -1135,13 +1135,13 @@
 
 (ior) ior {
 	DISPATCH_START_R2
-	POP	tmp2, tmp1
+	POP	r1, tmp1
 	DISPATCH_NEXT
-	orr	tmp2, tmp1, tmp2
+	orr	r1, tmp1, r1
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	PUSH	tmp2
+	PUSH	r1
 	DISPATCH_FINISH
 }
 
@@ -1158,13 +1158,13 @@
 
 (ixor) ixor {
 	DISPATCH_START_R2
-	POP	tmp2, tmp1
+	POP	r1, tmp1
 	DISPATCH_NEXT
-	eor	tmp2, tmp1, tmp2
+	eor	r1, tmp1, r1
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	PUSH	tmp2
+	PUSH	r1
 	DISPATCH_FINISH
 }
 
@@ -1337,78 +1337,48 @@
 	POP	r3
 	ldrb	r1, [jpc, #2]
         cmp     r3, #0
-	beq	1f
+	beq	branch_taken_unsafe
 	DISPATCH 3
-1:
-	mov	r2, r2, lsl #24
-        orr     ip, r1, r2, asr #16
-        ldrb  r0, [jpc, ip]!
-	DISPATCH_BYTECODE
 }
 
 (ifne,ifnonnull) ifne_unsafe {
 	POP	r3
 	ldrb	r1, [jpc, #2]
         cmp     r3, #0
-	bne	1f
+	bne	branch_taken_unsafe
 	DISPATCH 3
-1:
-	mov	r2, r2, lsl #24
-        orr     ip, r1, r2, asr #16
-        ldrb  r0, [jpc, ip]!
-	DISPATCH_BYTECODE
 }
 
 (iflt) iflt_unsafe {
 	POP	r3
 	ldrb	r1, [jpc, #2]
         cmp     r3, #0
-	blt	1f
+	blt	branch_taken_unsafe
 	DISPATCH 3
-1:
-	mov	r2, r2, lsl #24
-        orr     ip, r1, r2, asr #16
-        ldrb  r0, [jpc, ip]!
-	DISPATCH_BYTECODE
 }
 
 (ifge) ifge_unsafe {
 	POP	r3
 	ldrb	r1, [jpc, #2]
         cmp     r3, #0
-	bge	1f
+	bge	branch_taken_unsafe
 	DISPATCH 3
-1:
-	mov	r2, r2, lsl #24
-        orr     ip, r1, r2, asr #16
-        ldrb  r0, [jpc, ip]!
-	DISPATCH_BYTECODE
 }
 
 (ifgt) ifgt_unsafe {
 	POP	r3
 	ldrb	r1, [jpc, #2]
         cmp     r3, #0
-	bgt	1f
+	bgt	branch_taken_unsafe
 	DISPATCH 3
-1:
-	mov	r2, r2, lsl #24
-        orr     ip, r1, r2, asr #16
-        ldrb  r0, [jpc, ip]!
-	DISPATCH_BYTECODE
 }
 
 (ifle) ifle_unsafe {
 	POP	r3
 	ldrb	r1, [jpc, #2]
         cmp     r3, #0
-	ble	1f
+	ble	branch_taken_unsafe
 	DISPATCH 3
-1:
-	mov	r2, r2, lsl #24
-        orr     ip, r1, r2, asr #16
-        ldrb  r0, [jpc, ip]!
-	DISPATCH_BYTECODE
 }
 
 (if_icmpeq,if_acmpeq) if_icmpeq_unsafe {
@@ -1473,9 +1443,9 @@
 
 (jsr) jsr {
 	ldr	r3, [istate, #ISTATE_METHOD]
-	ldr	r1, [r3, #8]
+	ldr	r1, [r3, #METHOD_CONSTMETHOD]
 	rsb	r2, r1, jpc
-	sub	r2, r2, #45
+	sub	r2, r2, #CONSTMETHOD_CODEOFFSET - 3
 	PUSH	r2
 	b	do_goto
 }
@@ -1484,10 +1454,10 @@
 @ r1 = [jpc, #2]
 (ret) ret {
 	ldr	r0, [istate, #ISTATE_METHOD]
-	ldr	r3, [r0, #8]
+	ldr	r3, [r0, #METHOD_CONSTMETHOD]
 	ldr	r1, [locals, -r2, lsl #2]
 	add	jpc, r3, r1
-	DISPATCH	48
+	DISPATCH	CONSTMETHOD_CODEOFFSET
 }
 
 @ We dont do safe and unsafe versions of tableswitch and lookupswitch
@@ -1574,18 +1544,18 @@
 	ldrb	r1, [jpc, #2]
 	DISPATCH_START	3
 	POP	tmp1
-        add     tmp2, constpool, r1, lsl #12
-	add	tmp2, tmp2, r2, lsl #4
+        add     r1, constpool, r1, lsl #12
+	add	r1, r1, r2, lsl #4
 	DISPATCH_NEXT
 	SW_NPC	cmp	tmp1, #0
 	SW_NPC	beq	null_ptr_exception_jpc_3
-	ldr	tmp2, [tmp2, #CP_OFFSET+8]
+	ldr	r1, [r1, #CP_OFFSET+8]
 	DISPATCH_NEXT
 .abortentry78:
-	ldr	tmp2, [tmp1, tmp2]
+	ldr	r1, [tmp1, r1]
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	PUSH	tmp2
+	PUSH	r1
 	DISPATCH_FINISH
 }
 
@@ -1593,18 +1563,18 @@
 	ldrb	r1, [jpc, #2]
 	DISPATCH_START	3
 	POP	tmp1
-        add     tmp2, constpool, r1, lsl #12
-	add	tmp2, tmp2, r2, lsl #4
+        add     r1, constpool, r1, lsl #12
+	add	r1, r1, r2, lsl #4
 	DISPATCH_NEXT
 	SW_NPC	cmp	tmp1, #0
 	SW_NPC	beq	null_ptr_exception_jpc_3
-	ldr	tmp2, [tmp2, #CP_OFFSET+8]
+	ldr	r1, [r1, #CP_OFFSET+8]
 	DISPATCH_NEXT
 .abortentry79:
-	ldrsb	tmp2, [tmp1, tmp2]
+	ldrsb	r1, [tmp1, r1]
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	PUSH	tmp2
+	PUSH	r1
 	DISPATCH_FINISH
 }
 
@@ -1612,18 +1582,18 @@
 	ldrb	r1, [jpc, #2]
 	DISPATCH_START	3
 	POP	tmp1
-        add     tmp2, constpool, r1, lsl #12
-	add	tmp2, tmp2, r2, lsl #4
+        add     r1, constpool, r1, lsl #12
+	add	r1, r1, r2, lsl #4
 	DISPATCH_NEXT
 	SW_NPC	cmp	tmp1, #0
 	SW_NPC	beq	null_ptr_exception_jpc_3
-	ldr	tmp2, [tmp2, #CP_OFFSET+8]
+	ldr	r1, [r1, #CP_OFFSET+8]
 	DISPATCH_NEXT
 .abortentry80:
-	ldrh	tmp2, [tmp1, tmp2]
+	ldrh	r1, [tmp1, r1]
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	PUSH	tmp2
+	PUSH	r1
 	DISPATCH_FINISH
 }
 
@@ -1631,18 +1601,18 @@
 	ldrb	r1, [jpc, #2]
 	DISPATCH_START	3
 	POP	tmp1
-        add     tmp2, constpool, r1, lsl #12
-	add	tmp2, tmp2, r2, lsl #4
+        add     r1, constpool, r1, lsl #12
+	add	r1, r1, r2, lsl #4
 	DISPATCH_NEXT
 	SW_NPC	cmp	tmp1, #0
 	SW_NPC	beq	null_ptr_exception_jpc_3
-	ldr	tmp2, [tmp2, #CP_OFFSET+8]
+	ldr	r1, [r1, #CP_OFFSET+8]
 	DISPATCH_NEXT
 .abortentry81:
-	ldrsh	tmp2, [tmp1, tmp2]
+	ldrsh	r1, [tmp1, r1]
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	PUSH	tmp2
+	PUSH	r1
 	DISPATCH_FINISH
 }
 
@@ -1650,19 +1620,19 @@
 	ldrb	r1, [jpc, #2]
 	DISPATCH_START	3
 	POP	tmp1
-        add     tmp2, constpool, r1, lsl #12
-	add	tmp2, tmp2, r2, lsl #4
+        add     r1, constpool, r1, lsl #12
+	add	r1, r1, r2, lsl #4
 	DISPATCH_NEXT
 	SW_NPC	cmp	tmp1, #0
 	SW_NPC	beq	null_ptr_exception_jpc_3
-	ldr	tmp2, [tmp2, #CP_OFFSET+8]
+	ldr	r1, [r1, #CP_OFFSET+8]
 	DISPATCH_NEXT
-	add	tmp2, tmp1, tmp2
+	add	r1, tmp1, r1
 	DISPATCH_NEXT
 .abortentry82:
-	ldmia	tmp2, {tmp2, tmp1}
+	ldmia	r1, {r1, tmp1}
 	DISPATCH_NEXT
-	PUSH	tmp2, tmp1
+	PUSH	r1, tmp1
 	DISPATCH_FINISH
 }
 
@@ -1670,17 +1640,17 @@
 	ldrb	r1, [jpc, #2]
 	DISPATCH_START	3
 	POP	r3, tmp1		@ r3 = value, tmp1 = object
-        add     tmp2, constpool, r1, lsl #12
-	add	tmp2, tmp2, r2, lsl #4
+        add     r1, constpool, r1, lsl #12
+	add	r1, r1, r2, lsl #4
 	DISPATCH_NEXT
 	SW_NPC	cmp	tmp1, #0
 	SW_NPC	beq	null_ptr_exception_jpc_3
-	ldr	tmp2, [tmp2, #CP_OFFSET+8]
+	ldr	r1, [r1, #CP_OFFSET+8]
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 .abortentry83:
-	str	r3, [tmp1, tmp2]
+	str	r3, [tmp1, r1]
 	DISPATCH_FINISH
 }
 
@@ -1688,17 +1658,17 @@
 	ldrb	r1, [jpc, #2]
 	DISPATCH_START	3
 	POP	r3, tmp1		@ r3 = value, tmp1 = object
-        add     tmp2, constpool, r1, lsl #12
-	add	tmp2, tmp2, r2, lsl #4
+        add     r1, constpool, r1, lsl #12
+	add	r1, r1, r2, lsl #4
 	DISPATCH_NEXT
 	SW_NPC	cmp	tmp1, #0
 	SW_NPC	beq	null_ptr_exception_jpc_3
-	ldr	tmp2, [tmp2, #CP_OFFSET+8]
+	ldr	r1, [r1, #CP_OFFSET+8]
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 .abortentry84:
-	strh	r3, [tmp1, tmp2]
+	strh	r3, [tmp1, r1]
 	DISPATCH_FINISH
 }
 
@@ -1706,30 +1676,30 @@
 	ldrb	r1, [jpc, #2]
 	DISPATCH_START	3
 	POP	r3, tmp1		@ r3 = value, tmp1 = object
-        add     tmp2, constpool, r1, lsl #12
-	add	tmp2, tmp2, r2, lsl #4
+        add     r1, constpool, r1, lsl #12
+	add	r1, r1, r2, lsl #4
 	DISPATCH_NEXT
 	SW_NPC	cmp	tmp1, #0
 	SW_NPC	beq	null_ptr_exception_jpc_3
-	ldr	tmp2, [tmp2, #CP_OFFSET+8]
+	ldr	r1, [r1, #CP_OFFSET+8]
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 .abortentry85:
-	strb	r3, [tmp1, tmp2]
+	strb	r3, [tmp1, r1]
 	DISPATCH_FINISH
 }
 
 (aputfield) aputfield {
 	ldrb	r1, [jpc, #2]
 	POP	r3, tmp1		@ r3 = value, tmp1 = object
-        add     tmp2, constpool, r1, lsl #12
-	add	tmp2, tmp2, r2, lsl #4
+        add     r1, constpool, r1, lsl #12
+	add	r1, r1, r2, lsl #4
 	SW_NPC	cmp	tmp1, #0
 	SW_NPC	beq	null_ptr_exception_jpc_3
-	ldr	tmp2, [tmp2, #CP_OFFSET+8]
+	ldr	r1, [r1, #CP_OFFSET+8]
 .abortentry113:
-	str	r3, [tmp1, tmp2]
+	str	r3, [tmp1, r1]
 	mov	r0, tmp1
 	bl	Helper_aputfield
 	DISPATCH 3
@@ -1739,18 +1709,18 @@
 	ldrb	r1, [jpc, #2]
 	DISPATCH_START	3
 	POP	r3, tmp1, lr		@ r3, tmp1 = value, lr = object
-        add     tmp2, constpool, r1, lsl #12
-	add	tmp2, tmp2, r2, lsl #4
+        add     r1, constpool, r1, lsl #12
+	add	r1, r1, r2, lsl #4
 	DISPATCH_NEXT
 	SW_NPC	cmp	lr, #0
 	SW_NPC	beq	null_ptr_exception_jpc_3
-	ldr	tmp2, [tmp2, #CP_OFFSET+8]
+	ldr	r1, [r1, #CP_OFFSET+8]
 	DISPATCH_NEXT
-	add	tmp2, lr, tmp2
+	add	r1, lr, r1
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 .abortentry86:
-	stm	tmp2, {r3, tmp1}
+	stm	r1, {r3, tmp1}
 	DISPATCH_FINISH
 }
 
@@ -1760,15 +1730,15 @@
 @ r1 = [jpc, #2]
 (getstatic) getstatic {
 	ldrb	r1, [jpc, #2]
-        add     tmp2, constpool, r1, lsl #12
-	add	tmp2, tmp2, r2, lsl #4
-        ldr     r3, [tmp2, #CP_OFFSET]
+        add     tmp1, constpool, r1, lsl #12
+	add	tmp1, tmp1, r2, lsl #4
+        ldr     r3, [tmp1, #CP_OFFSET]
 	and	r3, r3, #0x00ff0000
 	cmp	r3, #opc_getstatic << 16
 	blne	resolve_get_put
-	ldr	r3, [tmp2, #CP_OFFSET+4]
-	ldr	r2, [tmp2, #CP_OFFSET+12]
-        ldr     lr, [tmp2, #CP_OFFSET+8]
+	ldr	r3, [tmp1, #CP_OFFSET+4]
+	ldr	r2, [tmp1, #CP_OFFSET+12]
+        ldr     lr, [tmp1, #CP_OFFSET+8]
         movs    r2, r2, lsr #29
 	bhi	getstatic_w		@ C = 1, Z = 0 => R2 == 3, 5, 7
 	bcs	getstatic_h		@ C = 1 => R2 = 1
@@ -1782,15 +1752,15 @@
 @ r1 = [jpc, #2]
 (putstatic) putstatic {
 	ldrb	r1, [jpc, #2]
-        add     tmp2, constpool, r1, lsl #12
-	add	tmp2, tmp2, r2, lsl #4
-        ldr     r3, [tmp2, #CP_OFFSET]
+        add     tmp1, constpool, r1, lsl #12
+	add	tmp1, tmp1, r2, lsl #4
+        ldr     r3, [tmp1, #CP_OFFSET]
         and     r3, r3, #0xff000000
         cmp     r3, #opc_putstatic << 24
 	blne	resolve_get_put
-	ldr	r3, [tmp2, #CP_OFFSET+4]		@ r3 = object
-        ldr     lr, [tmp2, #CP_OFFSET+12]           @ lr = tos_type
-        ldr     r2, [tmp2, #CP_OFFSET+8]            @ r2 = offset
+	ldr	r3, [tmp1, #CP_OFFSET+4]		@ r3 = object
+        ldr     lr, [tmp1, #CP_OFFSET+12]           @ lr = tos_type
+        ldr     r2, [tmp1, #CP_OFFSET+8]            @ r2 = offset
 	movs	lr, lr, lsr #29
 	bhi	putstatic_w		@ C = 1, Z = 0 => R2 == 3, 5, 7
 	bcs	putstatic_h		@ C = 1 => R2 = 1
@@ -1804,26 +1774,25 @@
 
 (return) return_unsafe {
 
-	ldr	tmp2, [istate, #ISTATE_MONITOR_BASE]	@ tmp2 = base
+	ldr	r9, [istate, #ISTATE_MONITOR_BASE]	@ r9 = base
 	ldr	tmp1, [istate, #ISTATE_STACK_BASE]	@ tmp1 = end
-	ldr	tmp_xxx, [istate, #ISTATE_THREAD]
 
-	cmp	tmp1, tmp2
+	cmp	tmp1, r9
 	bcc	1f
 2:
 	mov	r3, #0
 
-	ldr	r2, [tmp_xxx, #THREAD_TOP_ZERO_FRAME]
-	str	r3, [tmp_xxx, #THREAD_LAST_JAVA_SP]
+	ldr	r2, [thread, #THREAD_TOP_ZERO_FRAME]
+	str	r3, [thread, #THREAD_LAST_JAVA_SP]
 	ldr	r0, [istate, #ISTATE_METHOD]
 	ldr	r3, [r2, #0]
 	ldrh	r0, [r0, #40]
 	add	r1, r2, #4
-	str	r3, [tmp_xxx, #THREAD_TOP_ZERO_FRAME]
+	str	r3, [thread, #THREAD_TOP_ZERO_FRAME]
 
 	add	stack, r1, r0, lsl #2
 
-	str	stack, [tmp_xxx, #THREAD_JAVA_SP]
+	str	stack, [thread, #THREAD_JAVA_SP]
 
 	ldmfd	arm_sp!, {fast_regset, pc}
 1:
@@ -1833,27 +1802,26 @@
 
 (ireturn,areturn,freturn) ireturn_unsafe {
 
-	ldr	tmp2, [istate, #ISTATE_MONITOR_BASE]	@ tmp2 = base
+	ldr	r9, [istate, #ISTATE_MONITOR_BASE]	@ r9 = base
 	ldr	tmp1, [istate, #ISTATE_STACK_BASE]	@ tmp1 = end
-	ldr	tmp_xxx, [istate, #ISTATE_THREAD]
 
-	cmp	tmp1, tmp2
+	cmp	tmp1, r9
 	bcc	1f
 2:
 	mov	r3, #0
 
 	POP	r1					@ pop result before we lose stack
 
-	ldr	stack, [tmp_xxx, #THREAD_TOP_ZERO_FRAME]
-	str	r3, [tmp_xxx, #THREAD_LAST_JAVA_SP]
+	ldr	stack, [thread, #THREAD_TOP_ZERO_FRAME]
+	str	r3, [thread, #THREAD_LAST_JAVA_SP]
 	ldr	r0, [istate, #ISTATE_METHOD]
 	ldr	r3, [stack, #0]
 	ldrh	r0, [r0, #40]
 
-	str	r3, [tmp_xxx, #THREAD_TOP_ZERO_FRAME]
+	str	r3, [thread, #THREAD_TOP_ZERO_FRAME]
 	str	r1, [stack, r0, lsl #2]!
 
-	str	stack, [tmp_xxx, #THREAD_JAVA_SP]
+	str	stack, [thread, #THREAD_JAVA_SP]
 
 	ldmfd	arm_sp!, {fast_regset, pc}
 1:
@@ -1863,28 +1831,27 @@
 
 (lreturn,dreturn) lreturn_unsafe {
 
-	ldr	tmp2, [istate, #ISTATE_MONITOR_BASE]	@ tmp2 = base
+	ldr	r9, [istate, #ISTATE_MONITOR_BASE]	@ r9 = base
 	ldr	tmp1, [istate, #ISTATE_STACK_BASE]	@ tmp1 = end
-	ldr	tmp_xxx, [istate, #ISTATE_THREAD]
-	cmp	tmp1, tmp2
+	cmp	tmp1, r9
 	bcc	1f
 2:
 	mov	r3, #0
 
-	ldr	r2, [tmp_xxx, #THREAD_TOP_ZERO_FRAME]
-	str	r3, [tmp_xxx, #THREAD_LAST_JAVA_SP]
+	ldr	r2, [thread, #THREAD_TOP_ZERO_FRAME]
+	str	r3, [thread, #THREAD_LAST_JAVA_SP]
 	ldr	r0, [istate, #ISTATE_METHOD]
 	ldr	r3, [r2, #0]
 	ldrh	r0, [r0, #40]
 	add	r1, r2, #4
-	str	r3, [tmp_xxx, #THREAD_TOP_ZERO_FRAME]
+	str	r3, [thread, #THREAD_TOP_ZERO_FRAME]
 
 	POP	r2, r3
 
 	add	stack, r1, r0, lsl #2
 	stmdb	stack!, {r2, r3}
 
-	str	stack, [tmp_xxx, #THREAD_JAVA_SP]
+	str	stack, [thread, #THREAD_JAVA_SP]
 
 	ldmfd	arm_sp!, {fast_regset, pc}
 1:
@@ -1930,21 +1897,20 @@
 	DISPATCH	0
 2:
 	sub	jpc, jpc, #\seq_len
-	ldr	r0, [istate, #ISTATE_THREAD]
+	mov	r0, thread
         DECACHE_JPC
         DECACHE_STACK
 	mov	r1, #0
         bl      _ZN18InterpreterRuntime3ldcEP10JavaThreadb
-	ldr	r0, [istate, #ISTATE_THREAD]			@ thread
 	CACHE_CP
-	ldr	r1, [r0, #THREAD_PENDING_EXC]
+	ldr	r1, [thread, #THREAD_PENDING_EXC]
 	CACHE_JPC
 	cmp	r1, #0
 	bne	handle_exception
-	ldr	r3, [r0, #THREAD_VM_RESULT]
+	ldr	r3, [thread, #THREAD_VM_RESULT]
 	mov	r2, #0
 	PUSH	r3
-	str	r2, [r0, #THREAD_VM_RESULT]
+	str	r2, [thread, #THREAD_VM_RESULT]
 	DISPATCH	\seq_len
 }
 
@@ -1986,21 +1952,20 @@
 	DISPATCH	0
 2:
 	sub	jpc, jpc, #\seq_len
-	ldr	r0, [istate, #ISTATE_THREAD]
+	mov	r0, thread
         DECACHE_JPC
         DECACHE_STACK
 	mov	r1, #1
         bl      _ZN18InterpreterRuntime3ldcEP10JavaThreadb
-	ldr	r0, [istate, #ISTATE_THREAD]			@ thread
 	CACHE_CP
-	ldr	r1, [r0, #THREAD_PENDING_EXC]
+	ldr	r1, [thread, #THREAD_PENDING_EXC]
 	CACHE_JPC
 	cmp	r1, #0
-	ldr	r3, [r0, #THREAD_VM_RESULT]
+	ldr	r3, [thread, #THREAD_VM_RESULT]
 	bne	handle_exception
 	mov	r2, #0
 	PUSH	r3
-	str	r2, [r0, #THREAD_VM_RESULT]
+	str	r2, [thread, #THREAD_VM_RESULT]
 	DISPATCH	\seq_len
 }
 
@@ -2021,10 +1986,6 @@
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 
-	cmp	tmp1, #JVM_CONSTANT_Long
-	cmpne	tmp1, #JVM_CONSTANT_Double
-	bne	vm_fatal_error
-
 	add	tmp1, r2, r3, lsl #2
 	ldr	r3, [tmp1, #CONSTANTPOOL_BASE]
 	ldr	tmp1, [tmp1, #CONSTANTPOOL_BASE+4]
@@ -2038,70 +1999,70 @@
 (iadd_u4store) {
 	ldrb	r3, [jpc, #2]
 	DISPATCH_START	\seq_len
-	POP	tmp2, tmp1
+	POP	r1, tmp1
 	DISPATCH_NEXT
-	add	tmp2, tmp1, tmp2
+	add	r1, tmp1, r1
 	DISPATCH_NEXT
 	rsb	r3, r3, #0
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	str	tmp2, [locals, r3, lsl #2]
+	str	r1, [locals, r3, lsl #2]
 	DISPATCH_FINISH
 }
 
 (isub_u4store) {
 	ldrb	r3, [jpc, #2]
 	DISPATCH_START	\seq_len
-	POP	tmp2, tmp1
+	POP	r1, tmp1
 	DISPATCH_NEXT
-	sub	tmp2, tmp1, tmp2
+	sub	r1, tmp1, r1
 	DISPATCH_NEXT
 	rsb	r3, r3, #0
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	str	tmp2, [locals, r3, lsl #2]
+	str	r1, [locals, r3, lsl #2]
 	DISPATCH_FINISH
 }
 
 (iand_u4store) {
 	ldrb	r3, [jpc, #2]
 	DISPATCH_START	\seq_len
-	POP	tmp2, tmp1
+	POP	r1, tmp1
 	DISPATCH_NEXT
-	and	tmp2, tmp1, tmp2
+	and	r1, tmp1, r1
 	DISPATCH_NEXT
 	rsb	r3, r3, #0
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	str	tmp2, [locals, r3, lsl #2]
+	str	r1, [locals, r3, lsl #2]
 	DISPATCH_FINISH
 }
 
 (ior_u4store) {
 	ldrb	r3, [jpc, #2]
 	DISPATCH_START	\seq_len
-	POP	tmp2, tmp1
+	POP	r1, tmp1
 	DISPATCH_NEXT
-	orr	tmp2, tmp1, tmp2
+	orr	r1, tmp1, r1
 	DISPATCH_NEXT
 	rsb	r3, r3, #0
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	str	tmp2, [locals, r3, lsl #2]
+	str	r1, [locals, r3, lsl #2]
 	DISPATCH_FINISH
 }
 
 (ixor_u4store) {
 	ldrb	r3, [jpc, #2]
 	DISPATCH_START	\seq_len
-	POP	tmp2, tmp1
+	POP	r1, tmp1
 	DISPATCH_NEXT
-	eor	tmp2, tmp1, tmp2
+	eor	r1, tmp1, r1
 	DISPATCH_NEXT
 	rsb	r3, r3, #0
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	str	tmp2, [locals, r3, lsl #2]
+	str	r1, [locals, r3, lsl #2]
 	DISPATCH_FINISH
 }
 
@@ -2110,12 +2071,12 @@
 	DISPATCH_START	\seq_len
 	DISPATCH_NEXT
 	rsb	r3, lr, #opc_istore_0
-	POP	tmp2, tmp1
+	POP	r1, tmp1
 	DISPATCH_NEXT
-	add	tmp2, tmp1, tmp2
+	add	r1, tmp1, r1
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	str	tmp2, [locals, r3, lsl #2]
+	str	r1, [locals, r3, lsl #2]
 	DISPATCH_FINISH
 }
 
@@ -2124,12 +2085,12 @@
 	DISPATCH_START	\seq_len
 	DISPATCH_NEXT
 	rsb	r3, lr, #opc_istore_0
-	POP	tmp2, tmp1
+	POP	r1, tmp1
 	DISPATCH_NEXT
-	sub	tmp2, tmp1, tmp2
+	sub	r1, tmp1, r1
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	str	tmp2, [locals, r3, lsl #2]
+	str	r1, [locals, r3, lsl #2]
 	DISPATCH_FINISH
 }
 
@@ -2138,12 +2099,12 @@
 	DISPATCH_START	\seq_len
 	DISPATCH_NEXT
 	rsb	r3, lr, #opc_istore_0
-	POP	tmp2, tmp1
+	POP	r1, tmp1
 	DISPATCH_NEXT
-	and	tmp2, tmp1, tmp2
+	and	r1, tmp1, r1
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	str	tmp2, [locals, r3, lsl #2]
+	str	r1, [locals, r3, lsl #2]
 	DISPATCH_FINISH
 }
 
@@ -2152,12 +2113,12 @@
 	DISPATCH_START	\seq_len
 	DISPATCH_NEXT
 	rsb	r3, lr, #opc_istore_0
-	POP	tmp2, tmp1
+	POP	r1, tmp1
 	DISPATCH_NEXT
-	orr	tmp2, tmp1, tmp2
+	orr	r1, tmp1, r1
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	str	tmp2, [locals, r3, lsl #2]
+	str	r1, [locals, r3, lsl #2]
 	DISPATCH_FINISH
 }
 
@@ -2166,12 +2127,12 @@
 	DISPATCH_START	\seq_len
 	DISPATCH_NEXT
 	rsb	r3, lr, #opc_istore_0
-	POP	tmp2, tmp1
+	POP	r1, tmp1
 	DISPATCH_NEXT
-	eor	tmp2, tmp1, tmp2
+	eor	r1, tmp1, r1
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	str	tmp2, [locals, r3, lsl #2]
+	str	r1, [locals, r3, lsl #2]
 	DISPATCH_FINISH
 }
 
@@ -2199,10 +2160,10 @@
         DISPATCH_NEXT
         ldr     tmp1, [locals, r3, lsl #2]
         DISPATCH_NEXT
-        sub     tmp2, r2, #opc_iconst_0
+        sub     r1, r2, #opc_iconst_0
         DISPATCH_NEXT
         DISPATCH_NEXT
-        PUSH   tmp2, tmp1
+        PUSH   r1, tmp1
         DISPATCH_FINISH
 }
 
@@ -2212,20 +2173,20 @@
 	ldrb	r2, [jpc, #3]
 	rsb	tmp1, r0, #opc_iaccess_0
 	ldrb	r3, [jpc, #2]
-	add	tmp2, constpool, r2, lsl #12
+	add	r1, constpool, r2, lsl #12
 	DISPATCH_START	4
 	ldr	tmp1, [locals, tmp1, lsl #2]
-	add	tmp2, r3, lsl #4
+	add	r1, r3, lsl #4
 	DISPATCH_NEXT
 	SW_NPC	cmp	tmp1, #0
 	SW_NPC	beq	null_ptr_exception_jpc_3
 	DISPATCH_NEXT
-        ldr     tmp2, [tmp2, #CP_OFFSET+8]
+        ldr     r1, [r1, #CP_OFFSET+8]
 	DISPATCH_NEXT
 .abortentry87:
-	ldr	tmp2, [tmp1, tmp2]
+	ldr	r1, [tmp1, r1]
 	DISPATCH_NEXT
-	PUSH	tmp2
+	PUSH	r1
 	DISPATCH_FINISH
 }
 
@@ -2510,21 +2471,21 @@
 	rsb	tmp1, r1, #opc_iaccess_0
 	ldrb	r3, [jpc, #3]
 	ldr	lr, [locals, lr, lsl #2]
-	add	tmp2, constpool, r2, lsl #12
+	add	r1, constpool, r2, lsl #12
 	DISPATCH_START	\seq_len
 	PUSH	lr
 	ldr	tmp1, [locals, tmp1, lsl #2]
-	add	tmp2, r3, lsl #4
+	add	r1, r3, lsl #4
 	DISPATCH_NEXT
 	SW_NPC	cmp	tmp1, #0
 	SW_NPC	beq	null_ptr_exception_jpc_3
 	DISPATCH_NEXT
-        ldr     tmp2, [tmp2, #CP_OFFSET+8]
+        ldr     r1, [r1, #CP_OFFSET+8]
 	DISPATCH_NEXT
 .abortentry111:
-	ldr	tmp2, [tmp1, tmp2]
+	ldr	r1, [tmp1, r1]
 	DISPATCH_NEXT
-	PUSH	tmp2
+	PUSH	r1
 	DISPATCH_FINISH
 }
 
@@ -2536,21 +2497,21 @@
 	rsb	tmp1, r1, #opc_iaccess_0
 	ldrb	r3, [jpc, #4]
 	ldr	lr, [locals, lr, lsl #2]
-	add	tmp2, constpool, r2, lsl #12
+	add	r1, constpool, r2, lsl #12
 	DISPATCH_START	\seq_len
 	PUSH	lr
 	ldr	tmp1, [locals, tmp1, lsl #2]
-	add	tmp2, r3, lsl #4
+	add	r1, r3, lsl #4
 	DISPATCH_NEXT
 	SW_NPC	cmp	tmp1, #0
 	SW_NPC	beq	null_ptr_exception_jpc_3
 	DISPATCH_NEXT
-        ldr     tmp2, [tmp2, #CP_OFFSET+8]
+        ldr     r1, [r1, #CP_OFFSET+8]
 	DISPATCH_NEXT
 .abortentry112:
-	ldr	tmp2, [tmp1, tmp2]
+	ldr	r1, [tmp1, r1]
 	DISPATCH_NEXT
-	PUSH	tmp2
+	PUSH	r1
 	DISPATCH_FINISH
 }
 
@@ -2561,14 +2522,14 @@
 {
 	rsb	tmp1, r0, #opc_aload_0
 	DISPATCH_START	\seq_len
-	rsb	tmp2, r1, #opc_aload_0
+	rsb	r1, r1, #opc_aload_0
 	DISPATCH_NEXT
 	ldr	tmp1, [locals, tmp1, lsl #2]
-	ldr	tmp2, [locals, tmp2, lsl #2]
+	ldr	r1, [locals, r1, lsl #2]
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	PUSH	tmp2, tmp1
+	PUSH	r1, tmp1
 	DISPATCH_FINISH
 }
 
@@ -2577,14 +2538,14 @@
 {
 	rsb	tmp1, r0, #opc_aload_0
 	DISPATCH_START	\seq_len
-	rsb	tmp2, r1, #opc_iload_0
+	rsb	r1, r1, #opc_iload_0
 	DISPATCH_NEXT
 	ldr	tmp1, [locals, tmp1, lsl #2]
-	ldr	tmp2, [locals, tmp2, lsl #2]
+	ldr	r1, [locals, r1, lsl #2]
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	PUSH	tmp2, tmp1
+	PUSH	r1, tmp1
 	DISPATCH_FINISH
 }
 
@@ -2593,17 +2554,17 @@
 {
 	rsb	tmp1, r0, #opc_iload_0
         DISPATCH_START  \seq_len
-	rsb	tmp2, r1, #opc_aload_0
+	rsb	r1, r1, #opc_aload_0
         DISPATCH_NEXT
 	ldr	tmp1, [locals, tmp1, lsl #2]
 	cmp	r0, #opc_igetfield
-	ldr	tmp2, [locals, tmp2, lsl #2]
+	ldr	r1, [locals, r1, lsl #2]
         beq     1f
 2:
         DISPATCH_NEXT
         DISPATCH_NEXT
 	DISPATCH_NEXT
-	PUSH	tmp2, tmp1
+	PUSH	r1, tmp1
         DISPATCH_FINISH
 1:
 	ldrb	lr, [jpc, #-1]
@@ -2668,10 +2629,10 @@
 (aload_0,aload_1,aload_2,aload_3)
 {
 	DISPATCH_START	\seq_len
-	rsb	tmp2, r1, #opc_aload_0
+	rsb	r1, r1, #opc_aload_0
 	DISPATCH_NEXT
 	rsb	tmp1, r2, #0
-	ldr	tmp2, [locals, tmp2, lsl #2]
+	ldr	r1, [locals, r1, lsl #2]
 	cmp	r0, #opc_igetfield
 	DISPATCH_NEXT
 	beq	1f
@@ -2679,7 +2640,7 @@
 	ldr	tmp1, [locals, tmp1, lsl #2]
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	PUSH	tmp2, tmp1
+	PUSH	r1, tmp1
 	DISPATCH_FINISH
 1:
 	ldrb	lr, [jpc, #-1]
@@ -2693,15 +2654,15 @@
 (iload_0,iload_1,iload_2,iload_3)
 {
 	DISPATCH_START	\seq_len
-	rsb	tmp2, r1, #opc_iload_0
+	rsb	r1, r1, #opc_iload_0
 	DISPATCH_NEXT
 	rsb	tmp1, r2, #0
-	ldr	tmp2, [locals, tmp2, lsl #2]
+	ldr	r1, [locals, r1, lsl #2]
 	DISPATCH_NEXT
 	ldr	tmp1, [locals, tmp1, lsl #2]
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	PUSH	tmp2, tmp1
+	PUSH	r1, tmp1
 	DISPATCH_FINISH
 }
 
@@ -2716,16 +2677,16 @@
 
 @ r2 = [jpc, #1]
 (aload,fload)(iload,aload,fload) {
-	ldrb	tmp2, [jpc, #3]
+	ldrb	r1, [jpc, #3]
 	rsb	tmp1, r2, #0
 	DISPATCH_START	\seq_len
-	rsb	tmp2, tmp2, #0
+	rsb	r1, r1, #0
 	ldr	tmp1, [locals, tmp1, lsl #2]
 	DISPATCH_NEXT
-	ldr	tmp2, [locals, tmp2, lsl #2]
+	ldr	r1, [locals, r1, lsl #2]
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	PUSH	tmp2, tmp1
+	PUSH	r1, tmp1
 	DISPATCH_FINISH
 }
 
@@ -2736,16 +2697,16 @@
 }
 
 (iload)(aload,fload) {
-	ldrb	tmp2, [jpc, #3]
+	ldrb	r1, [jpc, #3]
 	rsb	tmp1, r2, #0
 	DISPATCH_START	\seq_len
-	rsb	tmp2, tmp2, #0
+	rsb	r1, r1, #0
 	ldr	tmp1, [locals, tmp1, lsl #2]
 	DISPATCH_NEXT
-	ldr	tmp2, [locals, tmp2, lsl #2]
+	ldr	r1, [locals, r1, lsl #2]
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	PUSH	tmp2, tmp1
+	PUSH	r1, tmp1
 	DISPATCH_FINISH
 }
 
@@ -2756,13 +2717,13 @@
 {
 	rsb	tmp1, r0, #opc_aload_0
 	DISPATCH_START	\seq_len
-	rsb	tmp2, r1, #opc_astore_0
+	rsb	r1, r1, #opc_astore_0
 	DISPATCH_NEXT
 	ldr	tmp1, [locals, tmp1, lsl #2]
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	str	tmp1, [locals, tmp2, lsl #2]
+	str	tmp1, [locals, r1, lsl #2]
 	DISPATCH_FINISH
 }
 
@@ -2771,45 +2732,45 @@
 {
 	rsb	tmp1, r0, #opc_iload_0
 	DISPATCH_START	\seq_len
-	rsb	tmp2, r1, #opc_istore_0
+	rsb	r1, r1, #opc_istore_0
 	DISPATCH_NEXT
 	ldr	tmp1, [locals, tmp1, lsl #2]
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	str	tmp1, [locals, tmp2, lsl #2]
+	str	tmp1, [locals, r1, lsl #2]
 	DISPATCH_FINISH
 }
 
 (aload_0,aload_1,aload_2,aload_3)
 (astore,istore,fstore)
 {
-	ldrb	tmp2, [jpc, #2]
+	ldrb	r1, [jpc, #2]
 	rsb	tmp1, r0, #opc_aload_0
 	DISPATCH_START	\seq_len
-	rsb	tmp2, tmp2, #0
+	rsb	r1, r1, #0
 	DISPATCH_NEXT
 	ldr	tmp1, [locals, tmp1, lsl #2]
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	str	tmp1, [locals, tmp2, lsl #2]
+	str	tmp1, [locals, r1, lsl #2]
 	DISPATCH_FINISH
 }
 
 (iload_0,iload_1,iload_2,iload_3)
 (astore,istore,fstore)
 {
-	ldrb	tmp2, [jpc, #2]
+	ldrb	r1, [jpc, #2]
 	rsb	tmp1, r0, #opc_iload_0
 	DISPATCH_START	\seq_len
-	rsb	tmp2, tmp2, #0
+	rsb	r1, r1, #0
 	DISPATCH_NEXT
 	ldr	tmp1, [locals, tmp1, lsl #2]
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	str	tmp1, [locals, tmp2, lsl #2]
+	str	tmp1, [locals, r1, lsl #2]
 	DISPATCH_FINISH
 }
 
@@ -2820,12 +2781,12 @@
 	DISPATCH_START	\seq_len
 	rsb	tmp1, r1, #opc_astore_0
 	DISPATCH_NEXT
-	rsb	tmp2, r2, #0
-	ldr	tmp2, [locals, tmp2, lsl #2]
+	rsb	r1, r2, #0
+	ldr	r1, [locals, r1, lsl #2]
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	str	tmp2, [locals, tmp1, lsl #2]
+	str	r1, [locals, tmp1, lsl #2]
 	DISPATCH_FINISH
 }
 
@@ -2836,27 +2797,27 @@
 	DISPATCH_START	\seq_len
 	rsb	tmp1, r1, #opc_istore_0
 	DISPATCH_NEXT
-	rsb	tmp2, r2, #0
-	ldr	tmp2, [locals, tmp2, lsl #2]
+	rsb	r1, r2, #0
+	ldr	r1, [locals, r1, lsl #2]
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	str	tmp2, [locals, tmp1, lsl #2]
+	str	r1, [locals, tmp1, lsl #2]
 	DISPATCH_FINISH
 }
 
 @ r2 = [jpc, #1]
 (iload,aload,fload)(astore,istore,fstore) {
 	ldrb	tmp1, [jpc, #3]
-	rsb	tmp2, r2, #0
+	rsb	r1, r2, #0
 	DISPATCH_START	\seq_len
 	rsb	tmp1, tmp1, #0
 	DISPATCH_NEXT
-	ldr	tmp2, [locals, tmp2, lsl #2]
+	ldr	r1, [locals, r1, lsl #2]
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	str	tmp2, [locals, tmp1, lsl #2]
+	str	r1, [locals, tmp1, lsl #2]
 	DISPATCH_FINISH
 }
 
@@ -2867,14 +2828,14 @@
 {
 	rsb	tmp1, r0, #opc_aload_0
 	DISPATCH_START	\seq_len
-	sub	tmp2, r1, #opc_iconst_0
+	sub	r1, r1, #opc_iconst_0
 	DISPATCH_NEXT
 	ldr	tmp1, [locals, tmp1, lsl #2]
 	DISPATCH_NEXT
 	PUSH	tmp1
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	PUSH	tmp2
+	PUSH	r1
 	DISPATCH_FINISH
 }
 
@@ -2892,14 +2853,14 @@
 {
         cmp     r0, #opc_iload
         DISPATCH_START  \seq_len
-        sub     r3, r1, #opc_iconst_0
+        sub     r1, r1, #opc_iconst_0
         DISPATCH_NEXT
-        ldr     tmp2, [locals, -r2, lsl #2]
+        ldr     r3, [locals, -r2, lsl #2]
         DISPATCH_NEXT
         beq     1f
         DISPATCH_NEXT
         DISPATCH_NEXT
-        PUSH   r3, tmp2
+        PUSH   r1, r3
         DISPATCH_FINISH
 1:
         mov     tmp1, #opc_iload_iconst_N
@@ -3263,12 +3224,12 @@
 (iload_0,iload_1,iload_2,iload_3)
 (iadd)
 {
-	POP	tmp2
+	POP	r1
 	rsb	tmp1, r0, #opc_iload_0
 	DISPATCH_START	\seq_len
 	ldr	tmp1, [locals, tmp1, lsl #2]
 	DISPATCH_NEXT
-	add	tmp1, tmp2, tmp1
+	add	tmp1, r1, tmp1
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	DISPATCH_NEXT
@@ -3278,27 +3239,27 @@
 
 (iload,aload,fload)(iadd) {
 	DISPATCH_START	\seq_len
-	rsb	tmp2, r2, #0
+	rsb	r1, r2, #0
 	POP	tmp1
 	DISPATCH_NEXT
-	ldr	tmp2, [locals, tmp2, lsl #2]
+	ldr	r1, [locals, r1, lsl #2]
 	DISPATCH_NEXT
-	add	tmp2, tmp1, tmp2
+	add	r1, tmp1, r1
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	PUSH	tmp2
+	PUSH	r1
 	DISPATCH_FINISH
 }
 
 (iload_0,iload_1,iload_2,iload_3)
 (isub)
 {
-	POP	tmp2
+	POP	r1
 	rsb	tmp1, r0, #opc_iload_0
 	DISPATCH_START	\seq_len
 	ldr	tmp1, [locals, tmp1, lsl #2]
 	DISPATCH_NEXT
-	sub	tmp1, tmp2, tmp1
+	sub	tmp1, r1, tmp1
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	DISPATCH_NEXT
@@ -3308,15 +3269,15 @@
 
 (iload,aload,fload)(isub) {
 	DISPATCH_START	\seq_len
-	rsb	tmp2, r2, #0
+	rsb	r1, r2, #0
 	POP	tmp1
 	DISPATCH_NEXT
-	ldr	tmp2, [locals, tmp2, lsl #2]
+	ldr	r1, [locals, r1, lsl #2]
 	DISPATCH_NEXT
-	sub	tmp2, tmp1, tmp2
+	sub	r1, tmp1, r1
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	PUSH	tmp2
+	PUSH	r1
 	DISPATCH_FINISH
 }
 
@@ -3445,12 +3406,12 @@
 (iload_0,iload_1,iload_2,iload_3)
 (iand)
 {
-	POP	tmp2
+	POP	r1
 	rsb	tmp1, r0, #opc_iload_0
 	DISPATCH_START	\seq_len
 	ldr	tmp1, [locals, tmp1, lsl #2]
 	DISPATCH_NEXT
-	and	tmp1, tmp2, tmp1
+	and	tmp1, r1, tmp1
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	DISPATCH_NEXT
@@ -3460,27 +3421,27 @@
 
 (iload,aload,fload)(iand) {
 	DISPATCH_START	\seq_len
-	rsb	tmp2, r2, #0
+	rsb	r1, r2, #0
 	POP	tmp1
 	DISPATCH_NEXT
-	ldr	tmp2, [locals, tmp2, lsl #2]
+	ldr	r1, [locals, r1, lsl #2]
 	DISPATCH_NEXT
-	and	tmp2, tmp1, tmp2
+	and	r1, tmp1, r1
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	PUSH	tmp2
+	PUSH	r1
 	DISPATCH_FINISH
 }
 
 (iload_0,iload_1,iload_2,iload_3)
 (ior)
 {
-	POP	tmp2
+	POP	r1
 	rsb	tmp1, r0, #opc_iload_0
 	DISPATCH_START	\seq_len
 	ldr	tmp1, [locals, tmp1, lsl #2]
 	DISPATCH_NEXT
-	orr	tmp1, tmp2, tmp1
+	orr	tmp1, r1, tmp1
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	DISPATCH_NEXT
@@ -3490,27 +3451,27 @@
 
 (iload,aload,fload)(ior) {
 	DISPATCH_START	\seq_len
-	rsb	tmp2, r2, #0
+	rsb	r1, r2, #0
 	POP	tmp1
 	DISPATCH_NEXT
-	ldr	tmp2, [locals, tmp2, lsl #2]
+	ldr	r1, [locals, r1, lsl #2]
 	DISPATCH_NEXT
-	orr	tmp2, tmp1, tmp2
+	orr	r1, tmp1, r1
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	PUSH	tmp2
+	PUSH	r1
 	DISPATCH_FINISH
 }
 
 (iload_0,iload_1,iload_2,iload_3)
 (ixor)
 {
-	POP	tmp2
+	POP	r1
 	rsb	tmp1, r0, #opc_iload_0
 	DISPATCH_START	\seq_len
 	ldr	tmp1, [locals, tmp1, lsl #2]
 	DISPATCH_NEXT
-	eor	tmp1, tmp2, tmp1
+	eor	tmp1, r1, tmp1
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	DISPATCH_NEXT
@@ -3520,15 +3481,15 @@
 
 (iload,aload,fload)(ixor) {
 	DISPATCH_START	\seq_len
-	rsb	tmp2, r2, #0
+	rsb	r1, r2, #0
 	POP	tmp1
 	DISPATCH_NEXT
-	ldr	tmp2, [locals, tmp2, lsl #2]
+	ldr	r1, [locals, r1, lsl #2]
 	DISPATCH_NEXT
-	eor	tmp2, tmp1, tmp2
+	eor	r1, tmp1, r1
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	PUSH	tmp2
+	PUSH	r1
 	DISPATCH_FINISH
 }
 
@@ -3841,23 +3802,22 @@
 (ireturn,areturn,freturn)
 {
 	rsb	r0, r0, #opc_iload_0
-	ldr	tmp2, [istate, #ISTATE_MONITOR_BASE]	@ tmp2 = base
+	ldr	r9, [istate, #ISTATE_MONITOR_BASE]	@ r9 = base
 	ldr	tmp1, [istate, #ISTATE_STACK_BASE]	@ tmp1 = end
 	ldr	r1, [locals, r0, lsl #2]
-	ldr	tmp_xxx, [istate, #ISTATE_THREAD]
-	cmp	tmp1, tmp2
+	cmp	tmp1, r9
 	bcc	1f
 2:
 	mov	r3, #0
-	ldr	stack, [tmp_xxx, #THREAD_TOP_ZERO_FRAME]
-	str	r3, [tmp_xxx, #THREAD_LAST_JAVA_SP]
+	ldr	stack, [thread, #THREAD_TOP_ZERO_FRAME]
+	str	r3, [thread, #THREAD_LAST_JAVA_SP]
 	ldr	r0, [istate, #ISTATE_METHOD]
 	ldr	r3, [stack, #0]
 	ldrh	r0, [r0, #40]
-	str	r3, [tmp_xxx, #THREAD_TOP_ZERO_FRAME]
+	str	r3, [thread, #THREAD_TOP_ZERO_FRAME]
 	str	r1, [stack, r0, lsl #2]!
 
-	str	stack, [tmp_xxx, #THREAD_JAVA_SP]
+	str	stack, [thread, #THREAD_JAVA_SP]
 
 	ldmfd	arm_sp!, {fast_regset, pc}
 1:
@@ -3870,23 +3830,22 @@
 
 (iload,aload,fload)(ireturn,areturn,freturn) {
 
-	ldr	tmp2, [istate, #ISTATE_MONITOR_BASE]	@ tmp2 = base
+	ldr	r9, [istate, #ISTATE_MONITOR_BASE]	@ r9 = base
 	ldr	tmp1, [istate, #ISTATE_STACK_BASE]	@ tmp1 = end
 	ldr	r1, [locals, -r2, lsl #2]
-	ldr	tmp_xxx, [istate, #ISTATE_THREAD]
-	cmp	tmp1, tmp2
+	cmp	tmp1, r9
 	bcc	1f
 2:
 	mov	r3, #0
-	ldr	stack, [tmp_xxx, #THREAD_TOP_ZERO_FRAME]
-	str	r3, [tmp_xxx, #THREAD_LAST_JAVA_SP]
+	ldr	stack, [thread, #THREAD_TOP_ZERO_FRAME]
+	str	r3, [thread, #THREAD_LAST_JAVA_SP]
 	ldr	r0, [istate, #ISTATE_METHOD]
 	ldr	r3, [stack, #0]
 	ldrh	r0, [r0, #40]
-	str	r3, [tmp_xxx, #THREAD_TOP_ZERO_FRAME]
+	str	r3, [thread, #THREAD_TOP_ZERO_FRAME]
 	str	r1, [stack, r0, lsl #2]!
 
-	str	stack, [tmp_xxx, #THREAD_JAVA_SP]
+	str	stack, [thread, #THREAD_JAVA_SP]
 
 	ldmfd	arm_sp!, {fast_regset, pc}
 1:
@@ -4078,20 +4037,20 @@
 	ldrb	ip, [jpc, #4]
 	rsb	tmp1, r2, #0
 	ldrb	r3, [jpc, #3]
-	add	tmp2, constpool, ip, lsl #12
+	add	r1, constpool, ip, lsl #12
 	DISPATCH_START	5
 	ldr	tmp1, [locals, tmp1, lsl #2]
-	add	tmp2, r3, lsl #4
+	add	r1, r3, lsl #4
 	DISPATCH_NEXT
 	SW_NPC	cmp	tmp1, #0
 	SW_NPC	beq	null_ptr_exception_jpc_3
 	DISPATCH_NEXT
-        ldr     tmp2, [tmp2, #CP_OFFSET+8]
+        ldr     r1, [r1, #CP_OFFSET+8]
 	DISPATCH_NEXT
 .abortentry88:
-	ldr	tmp2, [tmp1, tmp2]
+	ldr	r1, [tmp1, r1]
 	DISPATCH_NEXT
-	PUSH	tmp2
+	PUSH	r1
 	DISPATCH_FINISH
 }
 
@@ -4120,9 +4079,9 @@
 (iconst_m1,iconst_0,iconst_1,iconst_2,iconst_3,iconst_4,iconst_5)(iadd) {
 	sub	tmp1, r0, #opc_iconst_0
 	DISPATCH_START	\seq_len
-	POP	tmp2
+	POP	r1
 	DISPATCH_NEXT
-	add	tmp1, tmp2, tmp1
+	add	tmp1, r1, tmp1
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	DISPATCH_NEXT
@@ -4133,9 +4092,9 @@
 (iconst_m1,iconst_0,iconst_1,iconst_2,iconst_3,iconst_4,iconst_5)(isub) {
 	sub	tmp1, r0, #opc_iconst_0
 	DISPATCH_START	\seq_len
-	POP	tmp2
+	POP	r1
 	DISPATCH_NEXT
-	sub	tmp1, tmp2, tmp1
+	sub	tmp1, r1, tmp1
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	DISPATCH_NEXT
@@ -4266,23 +4225,22 @@
 }
 
 (iconst_m1,iconst_0,iconst_1,iconst_2,iconst_3,iconst_4,iconst_5)(ireturn) {
-	ldr	tmp2, [istate, #ISTATE_MONITOR_BASE]	@ tmp2 = base
+	ldr	r9, [istate, #ISTATE_MONITOR_BASE]	@ r9 = base
 	ldr	tmp1, [istate, #ISTATE_STACK_BASE]	@ tmp1 = end
 	sub	r1, r0, #opc_iconst_0
-	ldr	tmp_xxx, [istate, #ISTATE_THREAD]
-	cmp	tmp1, tmp2
+	cmp	tmp1, r9
 	bcc	1f
 2:
 	mov	r3, #0
-	ldr	stack, [tmp_xxx, #THREAD_TOP_ZERO_FRAME]
-	str	r3, [tmp_xxx, #THREAD_LAST_JAVA_SP]
+	ldr	stack, [thread, #THREAD_TOP_ZERO_FRAME]
+	str	r3, [thread, #THREAD_LAST_JAVA_SP]
 	ldr	r0, [istate, #ISTATE_METHOD]
 	ldr	r3, [stack, #0]
 	ldrh	r0, [r0, #40]
-	str	r3, [tmp_xxx, #THREAD_TOP_ZERO_FRAME]
+	str	r3, [thread, #THREAD_TOP_ZERO_FRAME]
 	str	r1, [stack, r0, lsl #2]!
 
-	str	stack, [tmp_xxx, #THREAD_JAVA_SP]
+	str	stack, [thread, #THREAD_JAVA_SP]
 
 	ldmfd	arm_sp!, {fast_regset, pc}
 1:
@@ -4652,17 +4610,17 @@
 @ ---- iadd; xxx ------------------------------------------------------------
 
 (iadd)(iload,fload,aload) {
-	ldrb	r3, [jpc, #2]
+	ldrb	r1, [jpc, #2]
 	DISPATCH_START	\seq_len
-	POP	tmp2, tmp1
+	POP	r3, tmp1
 	DISPATCH_NEXT
-	rsb	r3, r3, #0
+	rsb	r1, r1, #0
 	DISPATCH_NEXT
-	ldr	r3, [locals, r3, lsl #2]
+	ldr	r1, [locals, r1, lsl #2]
 	DISPATCH_NEXT
-	add	tmp2, tmp1, tmp2
+	add	r3, tmp1, r3
 	DISPATCH_NEXT
-	PUSH	r3, tmp2
+	PUSH	r1, r3
 	DISPATCH_FINISH
 }
 
@@ -4670,15 +4628,15 @@
 (iload_0,iload_1,iload_2,iload_3)
 {
 	DISPATCH_START	\seq_len
-	rsb	r3, r1, #opc_iload_0
-	POP	tmp2, tmp1
+	rsb	r1, r1, #opc_iload_0
+	POP	r3, tmp1
 	DISPATCH_NEXT
-	ldr	r3, [locals, r3, lsl #2]
-	add	tmp2, tmp1, tmp2
+	ldr	r1, [locals, r1, lsl #2]
+	add	r3, tmp1, r3
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	PUSH	r3, tmp2
+	PUSH	r1, r3
 	DISPATCH_FINISH
 }
 
@@ -4735,12 +4693,12 @@
 	DISPATCH_START	\seq_len
 	POP	r2, r3, tmp1
 	DISPATCH_NEXT
-	add	tmp2, r3, r2
+	add	r1, r3, r2
 	DISPATCH_NEXT
-	add	tmp2, tmp1, tmp2
+	add	r1, tmp1, r1
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	PUSH	tmp2
+	PUSH	r1
 	DISPATCH_FINISH
 }
 
@@ -4748,12 +4706,12 @@
 	DISPATCH_START	\seq_len
 	POP	r2, r3, tmp1
 	DISPATCH_NEXT
-	add	tmp2, r3, r2
+	add	r1, r3, r2
 	DISPATCH_NEXT
-	sub	tmp2, tmp1, tmp2
+	sub	r1, tmp1, r1
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	PUSH	tmp2
+	PUSH	r1
 	DISPATCH_FINISH
 }
 
@@ -4774,17 +4732,17 @@
 @ ---- sub; xxx ------------------------------------------------------------
 
 (isub)(iload,fload,aload) {
-	ldrb	r3, [jpc, #2]
+	ldrb	r1, [jpc, #2]
 	DISPATCH_START	\seq_len
-	POP	tmp2, tmp1
+	POP	r3, tmp1
 	DISPATCH_NEXT
-	rsb	r3, r3, #0
+	rsb	r1, r1, #0
 	DISPATCH_NEXT
-	ldr	r3, [locals, r3, lsl #2]
+	ldr	r1, [locals, r1, lsl #2]
 	DISPATCH_NEXT
-	sub	tmp2, tmp1, tmp2
+	sub	r3, tmp1, r3
 	DISPATCH_NEXT
-	PUSH	r3, tmp2
+	PUSH	r1, r3
 	DISPATCH_FINISH
 }
 
@@ -4792,15 +4750,15 @@
 (iload_0,iload_1,iload_2,iload_3)
 {
 	DISPATCH_START	\seq_len
-	rsb	r3, r1, #opc_iload_0
-	POP	tmp2, tmp1
+	rsb	r1, r1, #opc_iload_0
+	POP	r3, tmp1
 	DISPATCH_NEXT
-	ldr	r3, [locals, r3, lsl #2]
-	sub	tmp2, tmp1, tmp2
+	ldr	r1, [locals, r1, lsl #2]
+	sub	r3, tmp1, r3
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	PUSH	r3, tmp2
+	PUSH	r1, r3
 	DISPATCH_FINISH
 }
 
@@ -4857,12 +4815,12 @@
 	DISPATCH_START	\seq_len
 	POP	r2, r3, tmp1
 	DISPATCH_NEXT
-	sub	tmp2, r3, r2
+	sub	r1, r3, r2
 	DISPATCH_NEXT
-	add	tmp2, tmp1, tmp2
+	add	r1, tmp1, r1
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	PUSH	tmp2
+	PUSH	r1
 	DISPATCH_FINISH
 }
 
@@ -4870,12 +4828,12 @@
 	DISPATCH_START	\seq_len
 	POP	r2, r3, tmp1
 	DISPATCH_NEXT
-	sub	tmp2, r3, r2
+	sub	r1, r3, r2
 	DISPATCH_NEXT
-	sub	tmp2, tmp1, tmp2
+	sub	r1, tmp1, r1
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	PUSH	tmp2
+	PUSH	r1
 	DISPATCH_FINISH
 }
 
@@ -4896,17 +4854,17 @@
 @ ---- iand; xxx ------------------------------------------------------------
 
 (iand)(iload,fload,aload) {
-	ldrb	r3, [jpc, #2]
+	ldrb	r1, [jpc, #2]
 	DISPATCH_START	\seq_len
-	POP	tmp2, tmp1
+	POP	r3, tmp1
 	DISPATCH_NEXT
-	rsb	r3, r3, #0
+	rsb	r1, r1, #0
 	DISPATCH_NEXT
-	ldr	r3, [locals, r3, lsl #2]
+	ldr	r1, [locals, r1, lsl #2]
 	DISPATCH_NEXT
-	and	tmp2, tmp1, tmp2
+	and	r3, tmp1, r3
 	DISPATCH_NEXT
-	PUSH	r3, tmp2
+	PUSH	r1, r3
 	DISPATCH_FINISH
 }
 
@@ -4914,15 +4872,15 @@
 (iload_0,iload_1,iload_2,iload_3)
 {
 	DISPATCH_START	\seq_len
-	rsb	r3, r1, #opc_iload_0
-	POP	tmp2, tmp1
+	rsb	r1, r1, #opc_iload_0
+	POP	r3, tmp1
 	DISPATCH_NEXT
-	ldr	r3, [locals, r3, lsl #2]
-	and	tmp2, tmp1, tmp2
+	ldr	r1, [locals, r1, lsl #2]
+	and	r3, tmp1, r3
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	PUSH	r3, tmp2
+	PUSH	r1, r3
 	DISPATCH_FINISH
 }
 
@@ -4979,12 +4937,12 @@
 	DISPATCH_START	\seq_len
 	POP	r2, r3, tmp1
 	DISPATCH_NEXT
-	and	tmp2, r3, r2
+	and	r1, r3, r2
 	DISPATCH_NEXT
-	add	tmp2, tmp1, tmp2
+	add	r1, tmp1, r1
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	PUSH	tmp2
+	PUSH	r1
 	DISPATCH_FINISH
 }
 
@@ -4992,12 +4950,12 @@
 	DISPATCH_START	\seq_len
 	POP	r2, r3, tmp1
 	DISPATCH_NEXT
-	and	tmp2, r3, r2
+	and	r1, r3, r2
 	DISPATCH_NEXT
-	sub	tmp2, tmp1, tmp2
+	sub	r1, tmp1, r1
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	PUSH	tmp2
+	PUSH	r1
 	DISPATCH_FINISH
 }
 
@@ -5018,17 +4976,17 @@
 @ ---- ior; xxx ------------------------------------------------------------
 
 (ior)(iload,fload,aload) {
-	ldrb	r3, [jpc, #2]
+	ldrb	r1, [jpc, #2]
 	DISPATCH_START	\seq_len
-	POP	tmp2, tmp1
+	POP	r3, tmp1
 	DISPATCH_NEXT
-	rsb	r3, r3, #0
+	rsb	r1, r1, #0
 	DISPATCH_NEXT
-	ldr	r3, [locals, r3, lsl #2]
+	ldr	r1, [locals, r1, lsl #2]
 	DISPATCH_NEXT
-	orr	tmp2, tmp1, tmp2
+	orr	r3, tmp1, r3
 	DISPATCH_NEXT
-	PUSH	r3, tmp2
+	PUSH	r1, r3
 	DISPATCH_FINISH
 }
 
@@ -5036,15 +4994,15 @@
 (iload_0,iload_1,iload_2,iload_3)
 {
 	DISPATCH_START	\seq_len
-	rsb	r3, r1, #opc_iload_0
-	POP	tmp2, tmp1
+	rsb	r1, r1, #opc_iload_0
+	POP	r3, tmp1
 	DISPATCH_NEXT
-	ldr	r3, [locals, r3, lsl #2]
-	orr	tmp2, tmp1, tmp2
+	ldr	r1, [locals, r1, lsl #2]
+	orr	r3, tmp1, r3
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	PUSH	r3, tmp2
+	PUSH	r1, r3
 	DISPATCH_FINISH
 }
 
@@ -5101,12 +5059,12 @@
 	DISPATCH_START	\seq_len
 	POP	r2, r3, tmp1
 	DISPATCH_NEXT
-	orr	tmp2, r3, r2
+	orr	r1, r3, r2
 	DISPATCH_NEXT
-	add	tmp2, tmp1, tmp2
+	add	r1, tmp1, r1
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	PUSH	tmp2
+	PUSH	r1
 	DISPATCH_FINISH
 }
 
@@ -5114,12 +5072,12 @@
 	DISPATCH_START	\seq_len
 	POP	r2, r3, tmp1
 	DISPATCH_NEXT
-	orr	tmp2, r3, r2
+	orr	r1, r3, r2
 	DISPATCH_NEXT
-	sub	tmp2, tmp1, tmp2
+	sub	r1, tmp1, r1
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	PUSH	tmp2
+	PUSH	r1
 	DISPATCH_FINISH
 }
 
@@ -5141,17 +5099,17 @@
 @ ---- ixor; xxx ------------------------------------------------------------
 
 (ixor)(iload,fload,aload) {
-	ldrb	r3, [jpc, #2]
+	ldrb	r1, [jpc, #2]
 	DISPATCH_START	\seq_len
-	POP	tmp2, tmp1
+	POP	r3, tmp1
 	DISPATCH_NEXT
-	rsb	r3, r3, #0
+	rsb	r1, r1, #0
 	DISPATCH_NEXT
-	ldr	r3, [locals, r3, lsl #2]
+	ldr	r1, [locals, r1, lsl #2]
 	DISPATCH_NEXT
-	eor	tmp2, tmp1, tmp2
+	eor	r3, tmp1, r3
 	DISPATCH_NEXT
-	PUSH	r3, tmp2
+	PUSH	r1, r3
 	DISPATCH_FINISH
 }
 
@@ -5159,15 +5117,15 @@
 (iload_0,iload_1,iload_2,iload_3)
 {
 	DISPATCH_START	\seq_len
-	rsb	r3, r1, #opc_iload_0
-	POP	tmp2, tmp1
+	rsb	r1, r1, #opc_iload_0
+	POP	r3, tmp1
 	DISPATCH_NEXT
-	ldr	r3, [locals, r3, lsl #2]
-	eor	tmp2, tmp1, tmp2
+	ldr	r1, [locals, r1, lsl #2]
+	eor	r3, tmp1, r3
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	PUSH	r3, tmp2
+	PUSH	r1, r3
 	DISPATCH_FINISH
 }
 
@@ -5224,12 +5182,12 @@
 	DISPATCH_START	\seq_len
 	POP	r2, r3, tmp1
 	DISPATCH_NEXT
-	eor	tmp2, r3, r2
+	eor	r1, r3, r2
 	DISPATCH_NEXT
-	add	tmp2, tmp1, tmp2
+	add	r1, tmp1, r1
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	PUSH	tmp2
+	PUSH	r1
         DISPATCH_FINISH
 }
 
@@ -5237,12 +5195,12 @@
 	DISPATCH_START	\seq_len
 	POP	r2, r3, tmp1
 	DISPATCH_NEXT
-	eor	tmp2, r3, r2
+	eor	r1, r3, r2
 	DISPATCH_NEXT
-	sub	tmp2, tmp1, tmp2
+	sub	r1, tmp1, r1
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	PUSH	tmp2
+	PUSH	r1
 	DISPATCH_FINISH
 }
 
@@ -5267,15 +5225,15 @@
         ldrsb   tmp1, [jpc, #2]
 	sub	lr, r1, #opc_iconst_0
 	DISPATCH_START	\seq_len
-	rsb	tmp2, r2, #0
-	ldr	r3, [locals, tmp2, lsl #2]
+	rsb	r1, r2, #0
+	ldr	r3, [locals, r1, lsl #2]
 	DISPATCH_NEXT
 	add	r3, r3, tmp1
 	DISPATCH_NEXT
 	PUSH	lr
 	DISPATCH_NEXT
 	DISPATCH_NEXT
-	str	r3, [locals, tmp2, lsl #2]
+	str	r3, [locals, r1, lsl #2]
 	DISPATCH_FINISH
 }
 
@@ -5283,14 +5241,14 @@
 	ldrb	lr, [jpc, #4]
         ldrsb   tmp1, [jpc, #2]
 	DISPATCH_START	\seq_len
-	rsb	tmp2, r2, #0
-	ldr	r3, [locals, tmp2, lsl #2]
+	rsb	r1, r2, #0
+	ldr	r3, [locals, r1, lsl #2]
 	DISPATCH_NEXT
 	rsb	lr, lr, #0
 	DISPATCH_NEXT
 	add	r3, r3, tmp1
 	DISPATCH_NEXT
-	str	r3, [locals, tmp2, lsl #2]
+	str	r3, [locals, r1, lsl #2]
 	ldr	tmp1, [locals, lr, lsl #2]
 	DISPATCH_NEXT
 	PUSH	tmp1
@@ -5303,12 +5261,12 @@
 	rsb	lr, r1, #opc_iload_0
         ldrsb   tmp1, [jpc, #2]
 	DISPATCH_START	\seq_len
-	rsb	tmp2, r2, #0
-	ldr	r3, [locals, tmp2, lsl #2]
+	rsb	r1, r2, #0
+	ldr	r3, [locals, r1, lsl #2]
 	DISPATCH_NEXT
 	add	r3, r3, tmp1
 	DISPATCH_NEXT
-	str	r3, [locals, tmp2, lsl #2]
+	str	r3, [locals, r1, lsl #2]
 	DISPATCH_NEXT
 	ldr	tmp1, [locals, lr, lsl #2]
 	DISPATCH_NEXT
@@ -5324,24 +5282,24 @@
 (iload,fload,aload) {
 	ldrb	r2, [jpc, #3]
 	rsb	tmp1, r0, #opc_iaccess_0
-	ldrb	r3, [jpc, #2]
-	add	tmp2, constpool, r2, lsl #12
+	ldrb	r1, [jpc, #2]
+	add	r3, constpool, r2, lsl #12
 	DISPATCH_START	6
 	ldr	tmp1, [locals, tmp1, lsl #2]
-	add	tmp2, r3, lsl #4
-	ldrb	r3, [jpc, #-1]
+	add	r3, r1, lsl #4
+	ldrb	r1, [jpc, #-1]
 	DISPATCH_NEXT
 	SW_NPC	cmp	tmp1, #0
 	SW_NPC	beq	null_ptr_exception_jpc_5
 	DISPATCH_NEXT
-        ldr     tmp2, [tmp2, #CP_OFFSET+8]
+        ldr     r3, [r3, #CP_OFFSET+8]
 	DISPATCH_NEXT
-	rsb	r3, r3, #0
+	rsb	r1, r1, #0
 .abortentry89:
-	ldr	tmp2, [tmp1, tmp2]
-	ldr	r3, [locals, r3, lsl #2]
+	ldr	r3, [tmp1, r3]
+	ldr	r1, [locals, r1, lsl #2]
 	DISPATCH_NEXT
-	PUSH	r3, tmp2
+	PUSH	r1, r3
 	DISPATCH_FINISH
 }
 
@@ -5350,22 +5308,22 @@
 	ldrb	r2, [jpc, #3]
 	rsb	tmp1, r0, #opc_iaccess_0
 	ldrb	ip, [jpc, #2]
-	add	tmp2, constpool, r2, lsl #12
+	add	r3, constpool, r2, lsl #12
 	DISPATCH_START	5
-	rsb	r3, r1, #opc_iload_0
+	rsb	r1, r1, #opc_iload_0
 	ldr	tmp1, [locals, tmp1, lsl #2]
-	add	tmp2, ip, lsl #4
+	add	r3, ip, lsl #4
 	DISPATCH_NEXT
 	SW_NPC	cmp	tmp1, #0
 	SW_NPC	beq	null_ptr_exception_jpc_4
 	DISPATCH_NEXT
-        ldr     tmp2, [tmp2, #CP_OFFSET+8]
+        ldr     r3, [r3, #CP_OFFSET+8]
 	DISPATCH_NEXT
 .abortentry90:
-	ldr	tmp2, [tmp1, tmp2]
-	ldr	r3, [locals, r3, lsl #2]
+	ldr	r3, [tmp1, r3]
+	ldr	r1, [locals, r1, lsl #2]
 	DISPATCH_NEXT
-	PUSH	r3, tmp2
+	PUSH	r1, r3
 	DISPATCH_FINISH
 }
 
@@ -5374,22 +5332,22 @@
 	ldrb	r2, [jpc, #3]
 	rsb	tmp1, r0, #opc_iaccess_0
 	ldrb	ip, [jpc, #2]
-	add	tmp2, constpool, r2, lsl #12
+	add	r1, constpool, r2, lsl #12
 	DISPATCH_START	5
 	ldr	tmp1, [locals, tmp1, lsl #2]
-	add	tmp2, ip, lsl #4
+	add	r1, ip, lsl #4
 	DISPATCH_NEXT
 	SW_NPC	cmp	tmp1, #0
 	SW_NPC	beq	null_ptr_exception_jpc_4
 	DISPATCH_NEXT
-        ldr     tmp2, [tmp2, #CP_OFFSET+8]
+        ldr     r1, [r1, #CP_OFFSET+8]
 	DISPATCH_NEXT
 	POP	r3
 .abortentry91:
-	ldr	tmp2, [tmp1, tmp2]
+	ldr	r1, [tmp1, r1]
 	DISPATCH_NEXT
-	add	tmp2, tmp2, r3
-	PUSH	tmp2
+	add	r1, r1, r3
+	PUSH	r1
 	DISPATCH_FINISH
 }
 
@@ -6053,13 +6011,13 @@
         DISPATCH_START  \seq_len
 	sub	r3, r3, #opc_iconst_0
 	DISPATCH_NEXT
-        rsb     tmp2, lr, #0
+        rsb     r1, lr, #0
 	DISPATCH_NEXT
         ldr     tmp1, [locals, r2, lsl #2]
 	DISPATCH_NEXT
         add     r3, tmp1, r3
 	DISPATCH_NEXT
-        str     r3, [locals, tmp2, lsl #2]
+        str     r3, [locals, r1, lsl #2]
 	DISPATCH_FINISH
 }
 
@@ -6090,13 +6048,13 @@
         DISPATCH_START  \seq_len
 	sub	r3, r3, #opc_iconst_0
 	DISPATCH_NEXT
-        rsb     tmp2, lr, #opc_istore_0
+        rsb     r1, lr, #opc_istore_0
 	DISPATCH_NEXT
         ldr     tmp1, [locals, r2, lsl #2]
 	DISPATCH_NEXT
         add     r3, tmp1, r3
 	DISPATCH_NEXT
-        str     r3, [locals, tmp2, lsl #2]
+        str     r3, [locals, r1, lsl #2]
 	DISPATCH_FINISH
 }
 
@@ -6127,13 +6085,13 @@
         DISPATCH_START  \seq_len
 	sub	r3, r3, #opc_iconst_0
 	DISPATCH_NEXT
-        rsb     tmp2, lr, #0
+        rsb     r1, lr, #0
 	DISPATCH_NEXT
         ldr     tmp1, [locals, r2, lsl #2]
 	DISPATCH_NEXT
         sub     r3, tmp1, r3
 	DISPATCH_NEXT
-        str     r3, [locals, tmp2, lsl #2]
+        str     r3, [locals, r1, lsl #2]
 	DISPATCH_FINISH
 }
 
@@ -6164,13 +6122,13 @@
         DISPATCH_START  \seq_len
 	sub	r3, r3, #opc_iconst_0
 	DISPATCH_NEXT
-        rsb     tmp2, lr, #opc_istore_0
+        rsb     r1, lr, #opc_istore_0
 	DISPATCH_NEXT
         ldr     tmp1, [locals, r2, lsl #2]
 	DISPATCH_NEXT
         sub     r3, tmp1, r3
 	DISPATCH_NEXT
-        str     r3, [locals, tmp2, lsl #2]
+        str     r3, [locals, r1, lsl #2]
 	DISPATCH_FINISH
 }
 
@@ -6201,13 +6159,13 @@
         DISPATCH_START  \seq_len
 	sub	r3, r3, #opc_iconst_0
 	DISPATCH_NEXT
-        rsb     tmp2, lr, #0
+        rsb     r1, lr, #0
 	DISPATCH_NEXT
         ldr     tmp1, [locals, r2, lsl #2]
 	DISPATCH_NEXT
         and     r3, tmp1, r3
 	DISPATCH_NEXT
-        str     r3, [locals, tmp2, lsl #2]
+        str     r3, [locals, r1, lsl #2]
 	DISPATCH_FINISH
 }
 
@@ -6238,13 +6196,13 @@
         DISPATCH_START  \seq_len
 	sub	r3, r3, #opc_iconst_0
 	DISPATCH_NEXT
-        rsb     tmp2, lr, #opc_istore_0
+        rsb     r1, lr, #opc_istore_0
 	DISPATCH_NEXT
         ldr     tmp1, [locals, r2, lsl #2]
 	DISPATCH_NEXT
         and     r3, tmp1, r3
 	DISPATCH_NEXT
-        str     r3, [locals, tmp2, lsl #2]
+        str     r3, [locals, r1, lsl #2]
 	DISPATCH_FINISH
 }
 
@@ -6275,13 +6233,13 @@
         DISPATCH_START  \seq_len
 	sub	r3, r3, #opc_iconst_0
 	DISPATCH_NEXT
-        rsb     tmp2, lr, #0
+        rsb     r1, lr, #0
 	DISPATCH_NEXT
         ldr     tmp1, [locals, r2, lsl #2]
 	DISPATCH_NEXT
         orr     r3, tmp1, r3
 	DISPATCH_NEXT
-        str     r3, [locals, tmp2, lsl #2]
+        str     r3, [locals, r1, lsl #2]
 	DISPATCH_FINISH
 }
 
@@ -6312,13 +6270,13 @@
         DISPATCH_START  \seq_len
 	sub	r3, r3, #opc_iconst_0
 	DISPATCH_NEXT
-        rsb     tmp2, lr, #opc_istore_0
+        rsb     r1, lr, #opc_istore_0
 	DISPATCH_NEXT
         ldr     tmp1, [locals, r2, lsl #2]
 	DISPATCH_NEXT
         orr     r3, tmp1, r3
 	DISPATCH_NEXT
-        str     r3, [locals, tmp2, lsl #2]
+        str     r3, [locals, r1, lsl #2]
 	DISPATCH_FINISH
 }
 
@@ -6349,13 +6307,13 @@
         DISPATCH_START  \seq_len
 	sub	r3, r3, #opc_iconst_0
 	DISPATCH_NEXT
-        rsb     tmp2, lr, #0
+        rsb     r1, lr, #0
 	DISPATCH_NEXT
         ldr     tmp1, [locals, r2, lsl #2]
 	DISPATCH_NEXT
         eor     r3, tmp1, r3
 	DISPATCH_NEXT
-        str     r3, [locals, tmp2, lsl #2]
+        str     r3, [locals, r1, lsl #2]
 	DISPATCH_FINISH
 }
 
@@ -6386,13 +6344,13 @@
         DISPATCH_START  \seq_len
 	sub	r3, r3, #opc_iconst_0
 	DISPATCH_NEXT
-        rsb     tmp2, lr, #opc_istore_0
+        rsb     r1, lr, #opc_istore_0
 	DISPATCH_NEXT
         ldr     tmp1, [locals, r2, lsl #2]
 	DISPATCH_NEXT
         eor     r3, tmp1, r3
 	DISPATCH_NEXT
-        str     r3, [locals, tmp2, lsl #2]
+        str     r3, [locals, r1, lsl #2]
 	DISPATCH_FINISH
 }
 
@@ -6577,14 +6535,14 @@
         DISPATCH_START  \seq_len
 	rsb	r3, r3, #0
 	DISPATCH_NEXT
-	rsb	tmp2, lr, #opc_istore_0
+	rsb	r1, lr, #opc_istore_0
 	ldr	tmp1, [locals, r2, lsl #2]
 	ldr	r3, [locals, r3, lsl #2]
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	add	r3, tmp1, r3
 	DISPATCH_NEXT
-        str     r3, [locals, tmp2, lsl #2]
+        str     r3, [locals, r1, lsl #2]
 	DISPATCH_FINISH
 }
 
@@ -6597,14 +6555,14 @@
         DISPATCH_START  \seq_len
 	rsb	r3, r3, #opc_iload_0
 	DISPATCH_NEXT
-	rsb	tmp2, lr, #opc_istore_0
+	rsb	r1, lr, #opc_istore_0
 	ldr	tmp1, [locals, r2, lsl #2]
 	ldr	r3, [locals, r3, lsl #2]
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	add	r3, tmp1, r3
 	DISPATCH_NEXT
-        str     r3, [locals, tmp2, lsl #2]
+        str     r3, [locals, r1, lsl #2]
 	DISPATCH_FINISH
 }
 
@@ -6656,14 +6614,14 @@
         DISPATCH_START  \seq_len
 	rsb	r3, r3, #0
 	DISPATCH_NEXT
-	rsb	tmp2, lr, #opc_istore_0
+	rsb	r1, lr, #opc_istore_0
 	ldr	tmp1, [locals, r2, lsl #2]
 	ldr	r3, [locals, r3, lsl #2]
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	sub	r3, tmp1, r3
 	DISPATCH_NEXT
-        str     r3, [locals, tmp2, lsl #2]
+        str     r3, [locals, r1, lsl #2]
 	DISPATCH_FINISH
 }
 
@@ -6676,14 +6634,14 @@
         DISPATCH_START  \seq_len
 	rsb	r3, r3, #opc_iload_0
 	DISPATCH_NEXT
-	rsb	tmp2, lr, #opc_istore_0
+	rsb	r1, lr, #opc_istore_0
 	ldr	tmp1, [locals, r2, lsl #2]
 	ldr	r3, [locals, r3, lsl #2]
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	sub	r3, tmp1, r3
 	DISPATCH_NEXT
-        str     r3, [locals, tmp2, lsl #2]
+        str     r3, [locals, r1, lsl #2]
 	DISPATCH_FINISH
 }
 
@@ -6735,14 +6693,14 @@
         DISPATCH_START  \seq_len
 	rsb	r3, r3, #0
 	DISPATCH_NEXT
-	rsb	tmp2, lr, #opc_istore_0
+	rsb	r1, lr, #opc_istore_0
 	ldr	tmp1, [locals, r2, lsl #2]
 	ldr	r3, [locals, r3, lsl #2]
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	and	r3, tmp1, r3
 	DISPATCH_NEXT
-        str     r3, [locals, tmp2, lsl #2]
+        str     r3, [locals, r1, lsl #2]
 	DISPATCH_FINISH
 }
 
@@ -6755,14 +6713,14 @@
         DISPATCH_START  \seq_len
 	rsb	r3, r3, #opc_iload_0
 	DISPATCH_NEXT
-	rsb	tmp2, lr, #opc_istore_0
+	rsb	r1, lr, #opc_istore_0
 	ldr	tmp1, [locals, r2, lsl #2]
 	ldr	r3, [locals, r3, lsl #2]
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	and	r3, tmp1, r3
 	DISPATCH_NEXT
-        str     r3, [locals, tmp2, lsl #2]
+        str     r3, [locals, r1, lsl #2]
 	DISPATCH_FINISH
 }
 
@@ -6814,14 +6772,14 @@
         DISPATCH_START  \seq_len
 	rsb	r3, r3, #0
 	DISPATCH_NEXT
-	rsb	tmp2, lr, #opc_istore_0
+	rsb	r1, lr, #opc_istore_0
 	ldr	tmp1, [locals, r2, lsl #2]
 	ldr	r3, [locals, r3, lsl #2]
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	orr	r3, tmp1, r3
 	DISPATCH_NEXT
-        str     r3, [locals, tmp2, lsl #2]
+        str     r3, [locals, r1, lsl #2]
 	DISPATCH_FINISH
 }
 
@@ -6834,14 +6792,14 @@
         DISPATCH_START  \seq_len
 	rsb	r3, r3, #opc_iload_0
 	DISPATCH_NEXT
-	rsb	tmp2, lr, #opc_istore_0
+	rsb	r1, lr, #opc_istore_0
 	ldr	tmp1, [locals, r2, lsl #2]
 	ldr	r3, [locals, r3, lsl #2]
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	orr	r3, tmp1, r3
 	DISPATCH_NEXT
-        str     r3, [locals, tmp2, lsl #2]
+        str     r3, [locals, r1, lsl #2]
 	DISPATCH_FINISH
 }
 
@@ -6893,14 +6851,14 @@
         DISPATCH_START  \seq_len
 	rsb	r3, r3, #0
 	DISPATCH_NEXT
-	rsb	tmp2, lr, #opc_istore_0
+	rsb	r1, lr, #opc_istore_0
 	ldr	tmp1, [locals, r2, lsl #2]
 	ldr	r3, [locals, r3, lsl #2]
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	eor	r3, tmp1, r3
 	DISPATCH_NEXT
-        str     r3, [locals, tmp2, lsl #2]
+        str     r3, [locals, r1, lsl #2]
 	DISPATCH_FINISH
 }
 
@@ -6913,14 +6871,14 @@
         DISPATCH_START  \seq_len
 	rsb	r3, r3, #opc_iload_0
 	DISPATCH_NEXT
-	rsb	tmp2, lr, #opc_istore_0
+	rsb	r1, lr, #opc_istore_0
 	ldr	tmp1, [locals, r2, lsl #2]
 	ldr	r3, [locals, r3, lsl #2]
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	eor	r3, tmp1, r3
 	DISPATCH_NEXT
-        str     r3, [locals, tmp2, lsl #2]
+        str     r3, [locals, r1, lsl #2]
 	DISPATCH_FINISH
 }
 
@@ -6972,14 +6930,14 @@
         DISPATCH_START  \seq_len
 	rsb	r3, r3, #0
 	DISPATCH_NEXT
-	rsb	tmp2, lr, #0
+	rsb	r1, lr, #0
 	ldr	tmp1, [locals, r2, lsl #2]
 	ldr	r3, [locals, r3, lsl #2]
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	add	r3, tmp1, r3
 	DISPATCH_NEXT
-        str     r3, [locals, tmp2, lsl #2]
+        str     r3, [locals, r1, lsl #2]
 	DISPATCH_FINISH
 }
 
@@ -6992,14 +6950,14 @@
         DISPATCH_START  \seq_len
 	rsb	r3, r3, #opc_iload_0
 	DISPATCH_NEXT
-	rsb	tmp2, lr, #0
+	rsb	r1, lr, #0
 	ldr	tmp1, [locals, r2, lsl #2]
 	ldr	r3, [locals, r3, lsl #2]
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	add	r3, tmp1, r3
 	DISPATCH_NEXT
-        str     r3, [locals, tmp2, lsl #2]
+        str     r3, [locals, r1, lsl #2]
 	DISPATCH_FINISH
 }
 
@@ -7051,14 +7009,14 @@
         DISPATCH_START  \seq_len
 	rsb	r3, r3, #0
 	DISPATCH_NEXT
-	rsb	tmp2, lr, #0
+	rsb	r1, lr, #0
 	ldr	tmp1, [locals, r2, lsl #2]
 	ldr	r3, [locals, r3, lsl #2]
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	sub	r3, tmp1, r3
 	DISPATCH_NEXT
-        str     r3, [locals, tmp2, lsl #2]
+        str     r3, [locals, r1, lsl #2]
 	DISPATCH_FINISH
 }
 
@@ -7071,14 +7029,14 @@
         DISPATCH_START  \seq_len
 	rsb	r3, r3, #opc_iload_0
 	DISPATCH_NEXT
-	rsb	tmp2, lr, #0
+	rsb	r1, lr, #0
 	ldr	tmp1, [locals, r2, lsl #2]
 	ldr	r3, [locals, r3, lsl #2]
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	sub	r3, tmp1, r3
 	DISPATCH_NEXT
-        str     r3, [locals, tmp2, lsl #2]
+        str     r3, [locals, r1, lsl #2]
 	DISPATCH_FINISH
 }
 
@@ -7130,14 +7088,14 @@
         DISPATCH_START  \seq_len
 	rsb	r3, r3, #0
 	DISPATCH_NEXT
-	rsb	tmp2, lr, #0
+	rsb	r1, lr, #0
 	ldr	tmp1, [locals, r2, lsl #2]
 	ldr	r3, [locals, r3, lsl #2]
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	and	r3, tmp1, r3
 	DISPATCH_NEXT
-        str     r3, [locals, tmp2, lsl #2]
+        str     r3, [locals, r1, lsl #2]
 	DISPATCH_FINISH
 }
 
@@ -7150,14 +7108,14 @@
         DISPATCH_START  \seq_len
 	rsb	r3, r3, #opc_iload_0
 	DISPATCH_NEXT
-	rsb	tmp2, lr, #0
+	rsb	r1, lr, #0
 	ldr	tmp1, [locals, r2, lsl #2]
 	ldr	r3, [locals, r3, lsl #2]
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	and	r3, tmp1, r3
 	DISPATCH_NEXT
-        str     r3, [locals, tmp2, lsl #2]
+        str     r3, [locals, r1, lsl #2]
 	DISPATCH_FINISH
 }
 
@@ -7209,14 +7167,14 @@
         DISPATCH_START  \seq_len
 	rsb	r3, r3, #0
 	DISPATCH_NEXT
-	rsb	tmp2, lr, #0
+	rsb	r1, lr, #0
 	ldr	tmp1, [locals, r2, lsl #2]
 	ldr	r3, [locals, r3, lsl #2]
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	orr	r3, tmp1, r3
 	DISPATCH_NEXT
-        str     r3, [locals, tmp2, lsl #2]
+        str     r3, [locals, r1, lsl #2]
 	DISPATCH_FINISH
 }
 
@@ -7229,14 +7187,14 @@
         DISPATCH_START  \seq_len
 	rsb	r3, r3, #opc_iload_0
 	DISPATCH_NEXT
-	rsb	tmp2, lr, #0
+	rsb	r1, lr, #0
 	ldr	tmp1, [locals, r2, lsl #2]
 	ldr	r3, [locals, r3, lsl #2]
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	orr	r3, tmp1, r3
 	DISPATCH_NEXT
-        str     r3, [locals, tmp2, lsl #2]
+        str     r3, [locals, r1, lsl #2]
 	DISPATCH_FINISH
 }
 
@@ -7288,14 +7246,14 @@
         DISPATCH_START  \seq_len
 	rsb	r3, r3, #0
 	DISPATCH_NEXT
-	rsb	tmp2, lr, #0
+	rsb	r1, lr, #0
 	ldr	tmp1, [locals, r2, lsl #2]
 	ldr	r3, [locals, r3, lsl #2]
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	eor	r3, tmp1, r3
 	DISPATCH_NEXT
-        str     r3, [locals, tmp2, lsl #2]
+        str     r3, [locals, r1, lsl #2]
 	DISPATCH_FINISH
 }
 
@@ -7308,14 +7266,14 @@
         DISPATCH_START  \seq_len
 	rsb	r3, r3, #opc_iload_0
 	DISPATCH_NEXT
-	rsb	tmp2, lr, #0
+	rsb	r1, lr, #0
 	ldr	tmp1, [locals, r2, lsl #2]
 	ldr	r3, [locals, r3, lsl #2]
 	DISPATCH_NEXT
 	DISPATCH_NEXT
 	eor	r3, tmp1, r3
 	DISPATCH_NEXT
-        str     r3, [locals, tmp2, lsl #2]
+        str     r3, [locals, r1, lsl #2]
 	DISPATCH_FINISH
 }
 



More information about the distro-pkg-dev mailing list