Home | History | Annotate | Download | only in out

Lines Matching refs:r3

31 r0-r3 hold first 4 args to a method; they are not preserved across method calls
345 ldr r3, [r2, #offShadowSpace_jitExitState] @ jit exit state
346 cmp r3, #kSVSTraceSelect @ hot trace following?
349 cmp r3, #kSVSNoProfile @ don't profile the next instruction?
499 mov r3, rINST, lsr #12 @ r3<- B
501 add r3, rFP, r3, lsl #2 @ r3<- &fp[B]
503 ldmia r3, {r0-r1} @ r0/r1<- fp[B]
515 FETCH(r3, 1) @ r3<- BBBB
517 add r3, rFP, r3, lsl #2 @ r3<- &fp[BBBB]
519 ldmia r3, {r0-r1} @ r0/r1<- fp[BBBB]
531 FETCH(r3, 2) @ r3<- BBBB
533 add r3, rFP, r3, lsl #2 @ r3<- &fp[BBBB]
535 ldmia r3, {r0-r1} @ r0/r1<- fp[BBBB]
609 add r3, rGLUE, #offGlue_retval @ r3<- &glue->retval
611 ldmia r3, {r0-r1} @ r0/r1<- retval.j
639 ldr r3, [r0, #offThread_exception] @ r3<- dvmGetException bypass
642 SET_VREG(r3, r2) @ fp[AA]<- exception obj
680 add r3, rGLUE, #offGlue_retval @ r3<- &glue->retval
682 stmia r3, {r0-r1} @ retval<- r0/r1
722 mov r3, rINST, lsr #8 @ r3<- AA
724 SET_VREG(r0, r3) @ vAA<- r0
733 mov r3, rINST, lsr #8 @ r3<- AA
739 SET_VREG(r0, r3) @ vAA<- r0
748 mov r3, rINST, lsr #8 @ r3<- AA
751 SET_VREG(r0, r3) @ vAA<- r0
761 mov r3, rINST, lsr #8 @ r3<- AA
764 add r3, rFP, r3, lsl #2 @ r3<- &fp[AA]
766 stmia r3, {r0-r1} @ vAA<- r0/r1
775 mov r3, rINST, lsr #8 @ r3<- AA
779 add r3, rFP, r3, lsl #2 @ r3<- &fp[AA]
782 stmia r3, {r0-r1} @ vAA<- r0/r1
794 FETCH(r3, 4) @ r3<- HHHH (high)
796 orr r1, r2, r3, lsl #16 @ r1<- HHHHhhhh (high word)
809 mov r3, rINST, lsr #8 @ r3<- AA
813 add r3, rFP, r3, lsl #2 @ r3<- &fp[AA]
815 stmia r3, {r0-r1} @ vAA<- r0/r1
932 mov r3, rINST, lsr #8 @ r3<- AA
934 GET_VREG(r9, r3) @ r9<- object
962 mov r3, rINST, lsr #12 @ r3<- B
964 GET_VREG(r0, r3) @ r0<- vB (object)
969 FETCH(r3, 1) @ r3<- CCCC
971 ldr r1, [r2, r3, lsl #2] @ r1<- resolved class
993 ldr r3, [r0, #offArrayObject_length] @ r3<- array length
995 SET_VREG(r3, r2) @ vB<- length
1006 ldr r3, [rGLUE, #offGlue_methodClassDex] @ r3<- pDvmDex
1008 ldr r3, [r3, #offDvmDex_pResClasses] @ r3<- pDvmDex->pResClasses
1009 ldr r0, [r3, r1, lsl #2] @ r0<- resolved class
1036 ldr r3, [rGLUE, #offGlue_methodClassDex] @ r3<- pDvmDex
1038 ldr r3, [r3, #offDvmDex_pResClasses] @ r3<- pDvmDex->pResClasses
1040 ldr r0, [r3, r2, lsl #2] @ r0<- resolved class
1058 ldr r3, [rGLUE, #offGlue_methodClassDex] @ r3<- pDvmDex
1060 ldr r3, [r3, #offDvmDex_pResClasses] @ r3<- pDvmDex->pResClasses
1062 ldr r0, [r3, r1, lsl #2] @ r0<- resolved class
1066 8: ldr r3, [rGLUE, #offGlue_method] @ r3<- glue->method
1068 ldr r0, [r3, #offMethod_clazz] @ r0<- method->clazz
1086 ldr r3, [rGLUE, #offGlue_methodClassDex] @ r3<- pDvmDex
1088 ldr r3, [r3, #offDvmDex_pResClasses] @ r3<- pDvmDex->pResClasses
1090 ldr r0, [r3, r1, lsl #2] @ r0<- resolved class
1094 8: ldr r3, [rGLUE, #offGlue_method] @ r3<- glue->method
1096 ldr r0, [r3, #offMethod_clazz] @ r0<- method->clazz
1110 mov r3, rINST, lsr #8 @ r3<- AA
1112 GET_VREG(r0, r3) @ r0<- vAA (array object)
1246 mov r3, rINST, lsr #8 @ r3<- AA
1248 GET_VREG(r1, r3) @ r1<- vAA
1284 mov r3, rINST, lsr #8 @ r3<- AA
1286 GET_VREG(r1, r3) @ r1<- vAA
1330 mov r3, r0, lsr #8 @ r3<- CC
1332 VREG_INDEX_TO_ADDR(r3, r3) @ r3<- &vCC
1334 flds s1, [r3] @ s1<- vCC
1369 mov r3, r0, lsr #8 @ r3<- CC
1371 VREG_INDEX_TO_ADDR(r3, r3) @ r3<- &vCC
1373 flds s1, [r3] @ s1<- vCC
1408 mov r3, r0, lsr #8 @ r3<- CC
1410 VREG_INDEX_TO_ADDR(r3, r3) @ r3<- &vCC
1412 fldd d1, [r3] @ d1<- vCC
1447 mov r3, r0, lsr #8 @ r3<- CC
1449 VREG_INDEX_TO_ADDR(r3, r3) @ r3<- &vCC
1451 fldd d1, [r3] @ d1<- vCC
1476 * sbcs ip, r1, r3
1490 mov r3, r0, lsr #8 @ r3<- CC
1492 add r3, rFP, r3, lsl #2 @ r3<- &fp[CC]
1494 ldmia r3, {r2-r3} @ r2/r3<- vCC/vCC+1
1495 cmp r1, r3 @ compare (vBB+1, vCC+1)
1518 GET_VREG(r3, r1) @ r3<- vB
1521 cmp r2, r3 @ compare (vA, vB)
1553 GET_VREG(r3, r1) @ r3<- vB
1556 cmp r2, r3 @ compare (vA, vB)
1588 GET_VREG(r3, r1) @ r3<- vB
1591 cmp r2, r3 @ compare (vA, vB)
1623 GET_VREG(r3, r1) @ r3<- vB
1626 cmp r2, r3 @ compare (vA, vB)
1658 GET_VREG(r3, r1) @ r3<- vB
1661 cmp r2, r3 @ compare (vA, vB)
1693 GET_VREG(r3, r1) @ r3<- vB
1696 cmp r2, r3 @ compare (vA, vB)
1992 FETCH_B(r3, 1, 1) @ r3<- CC
1994 GET_VREG(r1, r3) @ r1<- vCC (requested index)
1997 ldr r3, [r0, #offArrayObject_length] @ r3<- arrayObj->length
1999 cmp r1, r3 @ compare unsigned index, length
2020 mov r3, r0, lsr #8 @ r3<- CC
2022 GET_VREG(r1, r3) @ r1<- vCC (requested index)
2025 ldr r3, [r0, #offArrayObject_length] @ r3<- arrayObj->length
2027 cmp r1, r3 @ compare unsigned index, length
2050 FETCH_B(r3, 1, 1) @ r3<- CC
2052 GET_VREG(r1, r3) @ r1<- vCC (requested index)
2055 ldr r3, [r0, #offArrayObject_length] @ r3<- arrayObj->length
2057 cmp r1, r3 @ compare unsigned index, length
2082 FETCH_B(r3, 1, 1) @ r3<- CC
2084 GET_VREG(r1, r3) @ r1<- vCC (requested index)
2087 ldr r3, [r0, #offArrayObject_length] @ r3<- arrayObj->length
2089 cmp r1, r3 @ compare unsigned index, length
2114 FETCH_B(r3, 1, 1) @ r3<- CC
2116 GET_VREG(r1, r3) @ r1<- vCC (requested index)
2119 ldr r3, [r0, #offArrayObject_length] @ r3<- arrayObj->length
2121 cmp r1, r3 @ compare unsigned index, length
2146 FETCH_B(r3, 1, 1) @ r3<- CC
2148 GET_VREG(r1, r3) @ r1<- vCC (requested index)
2151 ldr r3, [r0, #offArrayObject_length] @ r3<- arrayObj->length
2153 cmp r1, r3 @ compare unsigned index, length
2178 FETCH_B(r3, 1, 1) @ r3<- CC
2180 GET_VREG(r1, r3) @ r1<- vCC (requested index)
2183 ldr r3, [r0, #offArrayObject_length] @ r3<- arrayObj->length
2185 cmp r1, r3 @ compare unsigned index, length
2209 FETCH_B(r3, 1, 1) @ r3<- CC
2211 GET_VREG(r1, r3) @ r1<- vCC (requested index)
2214 ldr r3, [r0, #offArrayObject_length] @ r3<- arrayObj->length
2216 cmp r1, r3 @ compare unsigned index, length
2237 mov r3, r0, lsr #8 @ r3<- CC
2239 GET_VREG(r1, r3) @ r1<- vCC (requested index)
2242 ldr r3, [r0, #offArrayObject_length] @ r3<- arrayObj->length
2244 cmp r1, r3 @ compare unsigned index, length
2266 mov r3, r0, lsr #8 @ r3<- CC
2268 GET_VREG(r0, r3) @ r0<- vCC (requested index)
2272 ldr r3, [rINST, #offArrayObject_length] @ r3<- arrayObj->length
2274 cmp r0, r3 @ compare unsigned index, length
2295 FETCH_B(r3, 1, 1) @ r3<- CC
2297 GET_VREG(r1, r3) @ r1<- vCC (requested index)
2300 ldr r3, [r0, #offArrayObject_length] @ r3<- arrayObj->length
2302 cmp r1, r3 @ compare unsigned index, length
2327 FETCH_B(r3, 1, 1) @ r3<- CC
2329 GET_VREG(r1, r3) @ r1<- vCC (requested index)
2332 ldr r3, [r0, #offArrayObject_length] @ r3<- arrayObj->length
2334 cmp r1, r3 @ compare unsigned index, length
2359 FETCH_B(r3, 1, 1) @ r3<- CC
2361 GET_VREG(r1, r3) @ r1<- vCC (requested index)
2364 ldr r3, [r0, #offArrayObject_length] @ r3<- arrayObj->length
2366 cmp r1, r3 @ compare unsigned index, length
2391 FETCH_B(r3, 1, 1) @ r3<- CC
2393 GET_VREG(r1, r3) @ r1<- vCC (requested index)
2396 ldr r3, [r0, #offArrayObject_length] @ r3<- arrayObj->length
2398 cmp r1, r3 @ compare unsigned index, length
2418 ldr r3, [rGLUE, #offGlue_methodClassDex] @ r3<- DvmDex
2420 ldr r2, [r3, #offDvmDex_pResFields] @ r2<- pDvmDex->pResFields
2442 ldr r3, [rGLUE, #offGlue_methodClassDex] @ r3<- DvmDex
2444 ldr r2, [r3, #offDvmDex_pResFields] @ r2<- pResFields
2469 ldr r3, [rGLUE, #offGlue_methodClassDex] @ r3<- DvmDex
2471 ldr r2, [r3, #offDvmDex_pResFields] @ r2<- pDvmDex->pResFields
2498 ldr r3, [rGLUE, #offGlue_methodClassDex] @ r3<- DvmDex
2500 ldr r2, [r3, #offDvmDex_pResFields] @ r2<- pDvmDex->pResFields
2527 ldr r3, [rGLUE, #offGlue_methodClassDex] @ r3<- DvmDex
2529 ldr r2, [r3, #offDvmDex_pResFields] @ r2<- pDvmDex->pResFields
2556 ldr r3, [rGLUE, #offGlue_methodClassDex] @ r3<- DvmDex
2558 ldr r2, [r3, #offDvmDex_pResFields] @ r2<- pDvmDex->pResFields
2585 ldr r3, [rGLUE, #offGlue_methodClassDex] @ r3<- DvmDex
2587 ldr r2, [r3, #offDvmDex_pResFields] @ r2<- pDvmDex->pResFields
2612 ldr r3, [rGLUE, #offGlue_methodClassDex] @ r3<- DvmDex
2614 ldr r2, [r3, #offDvmDex_pResFields] @ r2<- pDvmDex->pResFields
2633 ldr r3, [rGLUE, #offGlue_methodClassDex] @ r3<- DvmDex
2635 ldr r2, [r3, #offDvmDex_pResFields] @ r2<- pResFields
2659 ldr r3, [rGLUE, #offGlue_methodClassDex] @ r3<- DvmDex
2661 ldr r2, [r3, #offDvmDex_pResFields] @ r2<- pDvmDex->pResFields
2687 ldr r3, [rGLUE, #offGlue_methodClassDex] @ r3<- DvmDex
2689 ldr r2, [r3, #offDvmDex_pResFields] @ r2<- pDvmDex->pResFields
2716 ldr r3, [rGLUE, #offGlue_methodClassDex] @ r3<- DvmDex
2718 ldr r2, [r3, #offDvmDex_pResFields] @ r2<- pDvmDex->pResFields
2745 ldr r3, [rGLUE, #offGlue_methodClassDex] @ r3<- DvmDex
2747 ldr r2, [r3, #offDvmDex_pResFields] @ r2<- pDvmDex->pResFields
2774 ldr r3r3<- DvmDex
2776 ldr r2, [r3, #offDvmDex_pResFields] @ r2<- pDvmDex->pResFields
3175 ldr r3, [rGLUE, #offGlue_methodClassDex] @ r3<- pDvmDex
3177 ldr r3, [r3, #offDvmDex_pResMethods] @ r3<- pDvmDex->pResMethods
3179 ldr r0, [r3, r1, lsl #2] @ r0<- resolved baseMethod
3186 ldr r3, [rGLUE, #offGlue_method] @ r3<- glue->method
3187 ldr r0, [r3, #offMethod_clazz] @ r0<- method->clazz
3206 ldr r3, [rGLUE, #offGlue_methodClassDex] @ r3<- pDvmDex
3211 ldr r3, [r3, #offDvmDex_pResMethods] @ r3<- pDvmDex->pResMethods
3213 ldr r0, [r3, r1, lsl #2] @ r0<- resolved baseMethod
3239 ldr r3, [rGLUE, #offGlue_methodClassDex] @ r3<- pDvmDex
3241 ldr r3, [r3, #offDvmDex_pResMethods] @ r3<- pDvmDex->pResMethods
3243 ldr r0, [r3, r1, lsl #2] @ r0<- resolved methodToCall
3267 ldr r3, [rGLUE, #offGlue_methodClassDex] @ r3<- pDvmDex
3269 ldr r3, [r3, #offDvmDex_pResMethods] @ r3<- pDvmDex->pResMethods
3270 ldr r0, [r3, r1, lsl #2] @ r0<- resolved methodToCall
3274 0: ldr r3, [rGLUE, #offGlue_method] @ r3<- glue->method
3275 ldr r0, [r3, #offMethod_clazz] @ r0<- method->clazz
3300 ldr r3, [rGLUE, #offGlue_methodClassDex] @ r3<- methodClassDex
3330 ldr r3, [rGLUE, #offGlue_methodClassDex] @ r3<- pDvmDex
3332 ldr r3, [r3, #offDvmDex_pResMethods] @ r3<- pDvmDex->pResMethods
3334 ldr r0, [r3, r1, lsl #2] @ r0<- resolved baseMethod
3341 ldr r3, [rGLUE, #offGlue_method] @ r3<- glue->method
3342 ldr r0, [r3, #offMethod_clazz] @ r0<- method->clazz
3363 ldr r3, [rGLUE, #offGlue_methodClassDex] @ r3<- pDvmDex
3368 ldr r3, [r3, #offDvmDex_pResMethods] @ r3<- pDvmDex->pResMethods
3370 ldr r0, [r3, r1, lsl #2] @ r0<- resolved baseMethod
3398 ldr r3, [rGLUE, #offGlue_methodClassDex] @ r3<- pDvmDex
3400 ldr r3, [r3, #offDvmDex_pResMethods] @ r3<- pDvmDex->pResMethods
3402 ldr r0, [r3, r1, lsl #2] @ r0<- resolved methodToCall
3428 ldr r3, [rGLUE, #offGlue_methodClassDex] @ r3<- pDvmDex
3430 ldr r3, [r3, #offDvmDex_pResMethods] @ r3<- pDvmDex->pResMethods
3431 ldr r0, [r3, r1, lsl #2] @ r0<- resolved methodToCall
3435 0: ldr r3, [rGLUE, #offGlue_method] @ r3<- glue->method
3436 ldr r0, [r3, #offMethod_clazz] @ r0<- method->clazz
3463 ldr r3, [rGLUE, #offGlue_methodClassDex] @ r3<- methodClassDex
3504 mov r3, rINST, lsr #12 @ r3<- B
3506 GET_VREG(r0, r3) @ r0<- vB
3509 rsb r0, r0, #0 @ r0<- op, r0-r3 changed
3530 mov r3, rINST, lsr #12 @ r3<- B
3532 GET_VREG(r0, r3) @ r0<- vB
3535 mvn r0, r0 @ r0<- op, r0-r3 changed
3555 mov r3, rINST, lsr #12 @ r3<- B
3557 add r3, rFP, r3, lsl #2 @ r3<- &fp[B]
3559 ldmia r3, {r0-r1} @ r0/r1<- vAA
3562 rsc r1, r1, #0 @ r0/r1<- op, r2-r3 changed
3582 mov r3, rINST, lsr #12 @ r3<- B
3584 add r3, rFP, r3, lsl #2 @ r3<- &fp[B]
3586 ldmia r3, {r0-r1} @ r0/r1<- vAA
3589 mvn r1, r1 @ r0/r1<- op, r2-r3 changed
3610 mov r3, rINST, lsr #12 @ r3<- B
3612 GET_VREG(r0, r3) @ r0<- vB
3615 add r0, r0, #0x80000000 @ r0<- op, r0-r3 changed
3635 mov r3, rINST, lsr #12 @ r3<- B
3637 add r3, rFP, r3, lsl #2 @ r3<- &fp[B]
3639 ldmia r3, {r0-r1} @ r0/r1<- vAA
3642 add r1, r1, #0x80000000 @ r0/r1<- op, r2-r3 changed
3662 mov r3, rINST, lsr #12 @ r3<- B
3664 GET_VREG(r0, r3) @ r0<- vB
3668 mov r1, r0, asr #31 @ r0<- op, r0-r3 changed
3687 mov r3, rINST, lsr #12 @ r3<- B
3689 VREG_INDEX_TO_ADDR(r3, r3) @ r3<- &vB
3690 flds s0, [r3] @ s0<- vB
3712 mov r3, rINST, lsr #12 @ r3<- B
3714 VREG_INDEX_TO_ADDR(r3, r3) @ r3<- &vB
3715 flds s0, [r3] @ s0<- vB
3759 mov r3, rINST, lsr #12 @ r3<- B
3761 add r3, rFP, r3, lsl #2 @ r3<- &fp[B]
3762 ldmia r3, {r0-r1} @ r0/r1<- vB/vB+1
3765 bl __aeabi_l2f @ r0<- op, r0-r3 changed
3785 mov r3, rINST, lsr #12 @ r3<- B
3787 add r3, rFP, r3, lsl #2 @ r3<- &fp[B]
3789 ldmia r3, {r0-r1} @ r0/r1<- vAA
3792 bl __aeabi_l2d @ r0/r1<- op, r2-r3 changed
3811 mov r3, rINST, lsr #12 @ r3<- B
3813 VREG_INDEX_TO_ADDR(r3, r3) @ r3<- &vB
3814 flds s0, [r3] @ s0<- vB
3838 mov r3, rINST, lsr #12 @ r3<- B
3840 GET_VREG(r0, r3) @ r0<- vB
3844 bl f2l_doconv @ r0<- op, r0-r3 changed
3864 mov r3, rINST, lsr #12 @ r3<- B
3866 VREG_INDEX_TO_ADDR(r3, r3) @ r3<- &vB
3867 flds s0, [r3] @ s0<- vB
3889 mov r3, rINST, lsr #12 @ r3<- B
3891 VREG_INDEX_TO_ADDR(r3, r3) @ r3<- &vB
3892 fldd d0, [r3] @ d0<- vB
3916 mov r3, rINST, lsr #12 @ r3<- B
3918 add r3, rFP, r3, lsl #2 @ r3<- &fp[B]
3920 ldmia r3, {r0-r1} @ r0/r1<- vAA
3923 bl d2l_doconv @ r0/r1<- op, r2-r3 changed
3943 mov r3, rINST, lsr #12 @ r3<- B
3945 VREG_INDEX_TO_ADDR(r3, r3) @ r3<- &vB
3946 fldd d0, [r3] @ d0<- vB
3970 mov r3, rINST, lsr #12 @ r3<- B
3972 GET_VREG(r0, r3) @ r0<- vB
3975 sxtb r0, r0 @ r0<- op, r0-r3 changed
3996 mov r3, rINST, lsr #12 @ r3<- B
3998 GET_VREG(r0, r3) @ r0<- vB
4001 uxth r0, r0 @ r0<- op, r0-r3 changed
4022 mov r3, rINST, lsr #12 @ r3<- B
4024 GET_VREG(r0, r3) @ r0<- vB
4027 sxth r0, r0 @ r0<- op, r0-r3 changed
4057 mov r3, r0, lsr #8 @ r3<- CC
4059 GET_VREG(r1, r3) @ r1<- vCC
4068 add r0, r0, r1 @ r0<- op, r0-r3 changed
4098 mov r3, r0, lsr #8 @ r3<- CC
4100 GET_VREG(r1, r3) @ r1<- vCC
4109 sub r0, r0, r1 @ r0<- op, r0-r3 changed
4140 mov r3, r0, lsr #8 @ r3<- CC
4142 GET_VREG(r1, r3) @ r1<- vCC
4151 mul r0, r1, r0 @ r0<- op, r0-r3 changed
4181 mov r3, r0, lsr #8 @ r3<- CC
4183 GET_VREG(r1, r3) @ r1<- vCC
4192 bl __aeabi_idiv @ r0<- op, r0-r3 changed
4223 mov r3, r0, lsr #8 @ r3<- CC
4225 GET_VREG(r1, r3) @ r1<- vCC
4234 bl __aeabi_idivmod @ r1<- op, r0-r3 changed
4264 mov r3, r0, lsr #8 @ r3<- CC
4266 GET_VREG(r1, r3) @ r1<- vCC
4275 and r0, r0, r1 @ r0<- op, r0-r3 changed
4305 mov r3, r0, lsr #8 @ r3<- CC
4307 GET_VREG(r1, r3) @ r1<- vCC
4316 orr r0, r0, r1 @ r0<- op, r0-r3 changed
4346 mov r3, r0, lsr #8 @ r3<- CC
4348 GET_VREG(r1, r3) @ r1<- vCC
4357 eor r0, r0, r1 @ r0<- op, r0-r3 changed
4387 mov r3, r0, lsr #8 @ r3<- CC
4389 GET_VREG(r1, r3) @ r1<- vCC
4398 mov r0, r0, asl r1 @ r0<- op, r0-r3 changed
4428 mov r3, r0, lsr #8 @ r3<- CC
4430 GET_VREG(r1, r3) @ r1<- vCC
4439 mov r0, r0, asr r1 @ r0<- op, r0-r3 changed
4469 mov r3, r0, lsr #8 @ r3<- CC
4471 GET_VREG(r1, r3) @ r1<- vCC
4480 mov r0, r0, lsr r1 @ r0<- op, r0-r3 changed
4494 * specifies an instruction that performs "result = r0-r1 op r2-r3".
4511 mov r3, r0, lsr #8 @ r3<- CC
4514 add r3, rFP, r3, lsl #2 @ r3<- &fp[CC]
4516 ldmia r3, {r2-r3} @ r2/r3<- vCC/vCC+1
4518 orrs ip, r2, r3 @ second arg (r2-r3) is zero?
4524 adc r1, r1, r3 @ result<- op, r0-r3 changed
4538 * specifies an instruction that performs "result = r0-r1 op r2-r3".
4555 mov r3, r0, lsr #8 @ r3<- CC
4558 add r3, rFP, r3, lsl #2 @ r3<- &fp[CC]
4560 ldmia r3, {r2-r3} @ r2/r3<- vCC/vCC+1
4562 orrs ip, r2, r3 @ second arg (r2-r3) is zero?
4568 sbc r1, r1, r3 @ result<- op, r0-r3 changed
4600 mov r3, r0, lsr #8 @ r3<- CC
4602 add r3, rFP, r3, lsl #2 @ r3<- &fp[CC]
4604 ldmia r3, {r2-r3} @ r2/r3<- vCC/vCC+1
4607 mla r2, r0, r3, ip @ r2<- YxX + (ZxW)
4621 * specifies an instruction that performs "result = r0-r1 op r2-r3".
4638 mov r3, r0, lsr #8 @ r3<- CC
4641 add r3, rFP, r3, lsl #2 @ r3<- &fp[CC]
4643 ldmia r3, {r2-r3} @ r2/r3<- vCC/vCC+1
4645 orrs ip, r2, r3 @ second arg (r2-r3) is zero?
4651 bl __aeabi_ldivmod @ result<- op, r0-r3 changed
4662 /* ldivmod returns quotient in r0/r1 and remainder in r2/r3 */
4666 * specifies an instruction that performs "result = r0-r1 op r2-r3".
4683 mov r3r3<- CC
4686 add r3, rFP, r3, lsl #2 @ r3<- &fp[CC]
4688 ldmia r3, {r2-r3} @ r2/r3<- vCC/vCC+1
4690 orrs ip, r2, r3 @ second arg (r2-r3) is zero?
4696 bl __aeabi_ldivmod @ result<- op, r0-r3 changed
4698 stmia r9, {r2,r3} @ vAA/vAA+1<- r2/r3
4710 * specifies an instruction that performs "result = r0-r1 op r2-r3".
4727 mov r3, r0, lsr #8 @ r3<- CC
4730 add r3, rFP, r3, lsl #2 @ r3<- &fp[CC]
4732 ldmia r3, {r2-r3} @ r2/r3<- vCC/vCC+1
4734 orrs ip, r2, r3 @ second arg (r2-r3) is zero?
4740 and r1, r1, r3 @ result<- op, r0-r3 changed
4754 * specifies an instruction that performs "result = r0-r1 op r2-r3".
4771 mov r3, r0, lsr #8 @ r3<- CC
4774 add r3, rFP, r3, lsl #2 @ r3<- &fp[CC]
4776 ldmia r3, {r2-r3} @ r2/r3<- vCC/vCC+1
4778 orrs ip, r2, r3 @ second arg (r2-r3) is zero?
4784 orr r1, r1, r3 @ result<- op, r0-r3 changed
4798 * specifies an instruction that performs "result = r0-r1 op r2-r3".
4815 mov r3, r0, lsr #8 @ r3<- CC
4818 add r3, rFP, r3, lsl #2 @ r3<- &fp[CC]
4820 ldmia r3, {r2-r3} @ r2/r3<- vCC/vCC+1
4822 orrs ip, r2, r3 @ second arg (r2-r3) is zero?
4828 eor r1, r1, r3 @ result<- op, r0-r3 changed
4848 and r3, r0, #255 @ r3<- BB
4850 add r3, rFP, r3, lsl #2 @ r3<- &fp[BB]
4852 ldmia r3, {r0-r1} @ r0/r1<- vBB/vBB+1
4857 rsb r3, r2, #32 @ r3<- 32 - r2
4858 orr r1, r1, r0, lsr r3 @ r1<- r1 | (r0 << (32-r2))
4877 and r3, r0, #255 @ r3<- BB
4879 add r3, rFP, r3, lsl #2 @ r3<- &fp[BB]
4881 ldmia r3, {r0-r1} @ r0/r1<- vBB/vBB+1
4886 rsb r3, r2, #32 @ r3<- 32 - r2
4887 orr r0, r0, r1, asl r3 @ r0<- r0 | (r1 << (32-r2))
4906 and r3, r0, #255 @ r3<- BB
4908 add r3, rFP, r3, lsl #2 @ r3<- &fp[BB]
4910 ldmia r3, {r0-r1} @ r0/r1<- vBB/vBB+1
4915 rsb r3, r2, #32 @ r3<- 32 - r2
4916 orr r0, r0, r1, asl r3 @ r0<- r0 | (r1 << (32-r2))
4937 mov r3, r0, lsr #8 @ r3<- CC
4939 VREG_INDEX_TO_ADDR(r3, r3) @ r3<- &vCC
4941 flds s1, [r3] @ s1<- vCC
4967 mov r3, r0, lsr #8 @ r3<- CC
4969 VREG_INDEX_TO_ADDR(r3, r3) @ r3<- &vCC
4971 flds s1, [r3] @ s1<- vCC
4997 mov r3, r0, lsr #8 @ r3<- CC
4999 VREG_INDEX_TO_ADDR(r3, r3) @ r3<- &vCC
5001 flds s1, [r3] @ s1<- vCC
5027 mov r3, r0, lsr #8 @ r3<- CC
5029 VREG_INDEX_TO_ADDR(r3, r3) @ r3<- &vCC
5031 flds s1, [r3] @ s1<- vCC
5066 mov r3, r0, lsr #8 @ r3<- CC
5068 GET_VREG(r1, r3) @ r1<- vCC
5077 bl fmodf @ r0<- op, r0-r3 changed
5099 mov r3, r0, lsr #8 @ r3<- CC
5101 VREG_INDEX_TO_ADDR(r3, r3) @ r3<- &vCC
5103 fldd d1, [r3] @ d1<- vCC
5129 mov r3, r0, lsr #8 @ r3<- CC
5131 VREG_INDEX_TO_ADDR(r3, r3) @ r3<- &vCC
5133 fldd d1, [r3] @ d1<- vCC
5159 mov r3, r0, lsr #8 @ r3<- CC
5161 VREG_INDEX_TO_ADDR(r3, r3) @ r3<- &vCC
5163 fldd d1, [r3] @ d1<- vCC
5189 mov r3, r0, lsr #8 @ r3<- CC
5191 VREG_INDEX_TO_ADDR(r3, r3) @ r3<- &vCC
5193 fldd d1, [r3] @ d1<- vCC
5212 * specifies an instruction that performs "result = r0-r1 op r2-r3".
5229 mov r3, r0, lsr #8 @ r3<- CC
5232 add r3, rFP, r3, lsl #2 @ r3<- &fp[CC]
5234 ldmia r3, {r2-r3} @ r2/r3<- vCC/vCC+1
5236 orrs ip, r2, r3 @ second arg (r2-r3) is zero?
5242 bl fmod @ result<- op, r0-r3 changed
5269 mov r3, rINST, lsr #12 @ r3<- B
5271 GET_VREG(r1, r3) @ r1<- vB
5280 add r0, r0, r1 @ r0<- op, r0-r3 changed
5307 mov r3, rINST, lsr #12 @ r3<- B
5309 GET_VREG(r1, r3) @ r1<- vB
5318 sub r0, r0, r1 @ r0<- op, r0-r3 changed
5346 mov r3, rINST, lsr #12 @ r3<- B
5348 GET_VREG(r1, r3) @ r1<- vB
5357 mul r0, r1, r0 @ r0<- op, r0-r3 changed
5384 mov r3, rINST, lsr #12 @ r3<- B
5386 GET_VREG(r1, r3) @ r1<- vB
5395 bl __aeabi_idiv @ r0<- op, r0-r3 changed
5423 mov r3, rINST, lsr #12 @ r3<- B
5425 GET_VREG(r1, r3) @ r1<- vB
5434 bl __aeabi_idivmod @ r1<- op, r0-r3 changed
5461 mov r3, rINST, lsr #12 @ r3<- B
5463 GET_VREG(r1, r3) @ r1<- vB
5472 and r0, r0, r1 @ r0<- op, r0-r3 changed
5499 mov r3, rINST, lsr #12 @ r3<- B
5501 GET_VREG(r1, r3) @ r1<- vB
5510 orr r0, r0, r1 @ r0<- op, r0-r3 changed
5537 mov r3, rINST, lsr #12 @ r3<- B
5539 GET_VREG(r1, r3) @ r1<- vB
5548 eor r0, r0, r1 @ r0<- op, r0-r3 changed
5575 mov r3, rINST, lsr #12 @ r3<- B
5577 GET_VREG(r1, r3) @ r1<- vB
5586 mov r0, r0, asl r1 @ r0<- op, r0-r3 changed
5613 mov r3, rINST, lsr #12 @ r3<- B
5615 GET_VREG(r1, r3) @ r1<- vB
5624 mov r0, r0, asr r1 @ r0<- op, r0-r3 changed
5651 mov r3, rINST, lsr #12 @ r3<- B
5653 GET_VREG(r1, r3) @ r1<- vB
5662 mov r0, r0, lsr r1 @ r0<- op, r0-r3 changed
5676 * that specifies an instruction that performs "result = r0-r1 op r2-r3".
5693 ldmia r1, {r2-r3} @ r2/r3<- vBB/vBB+1
5696 orrs ip, r2, r3 @ second arg (r2-r3) is zero?
5702 adc r1, r1, r3 @ result<- op, r0-r3 changed
5716 * that specifies an instruction that performs "result = r0-r1 op r2-r3".
5733 ldmia r1, {r2-r3} @ r2/r3<- vBB/vBB+1
5736 orrs ip, r2, r3 @ second arg (r2-r3) is zero?
5742 sbc r1, r1, r3 @ result<- op, r0-r3 changed
5766 ldmia r1, {r2-r3} @ r2/r3<- vBB/vBB+1
5770 mla r2, r0, r3, ip @ r2<- YxX + (ZxW)
5785 * that specifies an instruction that performs "result = r0-r1 op r2-r3".
5802 ldmia r1, {r2-r3} @ r2/r3<- vBB/vBB+1
5805 orrs ip, r2, r3 @ second arg (r2-r3) is zero?
5811 bl __aeabi_ldivmod @ result<- op, r0-r3 changed
5822 /* ldivmod returns quotient in r0/r1 and remainder in r2/r3 */
5826 * that specifies an instruction that performs "result = r0-r1 op r2-r3".
5843 ldmia r1, {r2-r3} @ r2/r3<- vBB/vBB+1
5846 orrs ip, r2, r3 @ second arg (r2-r3) is zero?
5852 bl __aeabi_ldivmod @ result<- op, r0-r3 changed
5854 stmia r9, {r2,r3} @ vAA/vAA+1<- r2/r3
5866 * that specifies an instruction that performs "result = r0-r1 op r2-r3".
5883 ldmia r1, {r2-r3} @ r2/r3<- vBB/vBB+1
5886 orrs ip, r2, r3 @ second arg (r2-r3) is zero?
5892 and r1, r1, r3 @ result<- op, r0-r3 changed
5906 * that specifies an instruction that performs "result = r0-r1 op r2-r3".
5923 ldmia r1, {r2-r3} @ r2/r3<- vBB/vBB+1
5926 orrs ip, r2, r3 @ second arg (r2-r3) is zero?
5932 orr r1, r1, r3 @ result<- op, r0-r3 changed
5946 * that specifies an instruction that performs "result = r0-r1 op r2-r3".
5963 ldmia r1, {r2-r3} @ r2/r3<- vBB/vBB+1
5966 orrs ip, r2, r3 @ second arg (r2-r3) is zero?
5972 eor r1, r1, r3 @ result<- op, r0-r3 changed
5988 mov r3, rINST, lsr #12 @ r3<- B
5990 GET_VREG(r2, r3) @ r2<- vB
5996 rsb r3, r2, #32 @ r3<- 32 - r2
5997 orr r1, r1, r0, lsr r3 @ r1<- r1 | (r0 << (32-r2))
6013 mov r3, rINST, lsr #12 @ r3<- B
6015 GET_VREG(r2, r3) @ r2<- vB
6021 rsb r3, r2, #32 @ r3<- 32 - r2
6022 orr r0, r0, r1, asl r3 @ r0<- r0 | (r1 << (32-r2))
6038 mov r3, rINST, lsr #12 @ r3<- B
6040 GET_VREG(r2, r3) @ r2<- vB
6046 rsb r3, r2, #32 @ r3<- 32 - r2
6047 orr r0, r0, r1, asl r3 @ r0<- r0 | (r1 << (32-r2))
6067 mov r3, rINST, lsr #12 @ r3<- B
6069 VREG_INDEX_TO_ADDR(r3, r3) @ r3<- &vB
6071 flds s1, [r3] @ s1<- vB
6095 mov r3, rINST, lsr #12 @ r3<- B
6097 VREG_INDEX_TO_ADDR(r3, r3) @ r3<- &vB
6099 flds s1, [r3] @ s1<- vB
6123 mov r3, rINST, lsr #12 @ r3<- B
6125 VREG_INDEX_TO_ADDR(r3, r3) @ r3<- &vB
6127 flds s1, [r3] @ s1<- vB
6151 mov r3, rINST, lsr #12 @ r3<- B
6153 VREG_INDEX_TO_ADDR(r3, r3) @ r3<- &vB
6155 flds s1, [r3] @ s1<- vB
6187 mov r3, rINST, lsr #12 @ r3<- B
6189 GET_VREG(r1, r3) @ r1<- vB
6198 bl fmodf @ r0<- op, r0-r3 changed
6219 mov r3, rINST, lsr #12 @ r3<- B
6221 VREG_INDEX_TO_ADDR(r3, r3) @ r3<- &vB
6223 fldd d1, [r3] @ d1<- vB
6248 mov r3, rINST, lsr #12 @ r3<- B
6250 VREG_INDEX_TO_ADDR(r3, r3) @ r3<- &vB
6252 fldd d1, [r3] @ d1<- vB
6277 mov r3, rINST, lsr #12 @ r3<- B
6279 VREG_INDEX_TO_ADDR(r3, r3) @ r3<- &vB
6281 fldd d1, [r3] @ d1<- vB
6306 mov r3, rINST, lsr #12 @ r3<- B
6308 VREG_INDEX_TO_ADDR(r3, r3) @ r3<- &vB
6310 fldd d1, [r3] @ d1<- vB
6329 * that specifies an instruction that performs "result = r0-r1 op r2-r3".
6346 ldmia r1, {r2-r3} @ r2/r3<- vBB/vBB+1
6349 orrs ip, r2, r3 @ second arg (r2-r3) is zero?
6355 bl fmod @ result<- op, r0-r3 changed
6390 add r0, r0, r1 @ r0<- op, r0-r3 changed
6426 rsb r0, r0, r1 @ r0<- op, r0-r3 changed
6462 mul r0, r1, r0 @ r0<- op, r0-r3 changed
6497 bl __aeabi_idiv @ r0<- op, r0-r3 changed
6533 bl __aeabi_idivmod @ r1<- op, r0-r3 changed
6568 and r0, r0, r1 @ r0<- op, r0-r3 changed
6603 orr r0, r0, r1 @ r0<- op, r0-r3 changed
6638 eor r0, r0, r1 @ r0<- op, r0-r3 changed
6664 FETCH_S(r3, 1) @ r3<- ssssCCBB (sign-extended for CC)
6666 and r2, r3, #255 @ r2<- BB
6668 movs r1, r3, asr #8 @ r1<- ssssssCC (sign extended)
6676 add r0, r0, r1 @ r0<- op, r0-r3 changed
6702 FETCH_S(r3, 1) @ r3<- ssssCCBB (sign-extended for CC)
6704 and r2, r3, #255 @ r2<- BB
6706 movs r1, r3, asr #8 @ r1<- ssssssCC (sign extended)
6714 rsb r0, r0, r1 @ r0<- op, r0-r3 changed
6741 FETCH_S(r3, 1) @ r3<- ssssCCBB (sign-extended for CC)
6743 and r2, r3, #255 @ r2<- BB
6745 movs r1, r3, asr #8 @ r1<- ssssssCC (sign extended)
6753 mul r0, r1, r0 @ r0<- op, r0-r3 changed
6779 FETCH_S(r3, 1) @ r3<- ssssCCBB (sign-extended for CC)
6781 and r2, r3, #255 @ r2<- BB
6783 movs r1, r3, asr #8 @ r1<- ssssssCC (sign extended)
6791 bl __aeabi_idiv @ r0<- op, r0-r3 changed
6818 FETCH_S(r3, 1) @ r3<- ssssCCBB (sign-extended for CC)
6820 and r2, r3, #255 @ r2<- BB
6822 movs r1, r3, asr #8 @ r1<- ssssssCC (sign extended)
6830 bl __aeabi_idivmod @ r1<- op, r0-r3 changed
6856 FETCH_S(r3, 1) @ r3<- ssssCCBB (sign-extended for CC)
6858 and r2, r3, #255 @ r2<- BB
6860 movs r1, r3, asr #8 @ r1<- ssssssCC (sign extended)
6868 and r0, r0, r1 @ r0<- op, r0-r3 changed
6894 FETCH_S(r3, 1) @ r3<- ssssCCBB (sign-extended for CC)
6896 and r2, r3, #255 @ r2<- BB
6898 movs r1, r3, asr #8 @ r1<- ssssssCC (sign extended)
6906 orr r0, r0, r1 @ r0<- op, r0-r3 changed
6932 FETCH_S(r3, 1) @ r3<- ssssCCBB (sign-extended for CC)
6934 and r2, r3, #255 @ r2<- BB
6936 movs r1, r3, asr #8 @ r1<- ssssssCC (sign extended)
6944 eor r0, r0, r1 @ r0<- op, r0-r3 changed
6970 FETCH_S(r3, 1) @ r3<- ssssCCBB (sign-extended for CC)
6972 and r2, r3, #255 @ r2<- BB
6974 movs r1, r3, asr #8 @ r1<- ssssssCC (sign extended)
6982 mov r0, r0, asl r1 @ r0<- op, r0-r3 changed
7008 FETCH_S(r3, 1) @ r3<- ssssCCBB (sign-extended for CC)
7010 and r2, r3, #255 @ r2<- BB
7012 movs r1, r3, asr #8 @ r1<- ssssssCC (sign extended)
7020 mov r0, r0, asr r1 @ r0<- op, r0-r3 changed
7046 FETCH_S(r3, 1) @ r3<- ssssCCBB (sign-extended for CC)
7048 and r2, r3, #255 @ r2<- BB
7050 movs r1, r3, asr #8 @ r1<- ssssssCC (sign extended)
7058 mov r0, r0, lsr r1 @ r0<- op, r0-r3 changed
7077 ldr r3, [rGLUE, #offGlue_methodClassDex] @ r3<- DvmDex
7079 ldr r2, [r3, #offDvmDex_pResFields] @ r2<- pDvmDex->pResFields
7105 ldr r3, [rGLUE, #offGlue_methodClassDex] @ r3<- DvmDex
7107 ldr r2, [r3, #offDvmDex_pResFields] @ r2<- pDvmDex->pResFields
7187 ldr r3, [rGLUE, #offGlue_methodClassDex] @ r3<- DvmDex
7189 ldr r2, [r3, #offDvmDex_pResFields] @ r2<- pDvmDex->pResFields
7213 ldr r3, [rGLUE, #offGlue_methodClassDex] @ r3<- DvmDex
7215 ldr r2, [r3, #offDvmDex_pResFields] @ r2<- pResFields
7236 ldr r3, [rGLUE, #offGlue_methodClassDex] @ r3<- DvmDex
7238 ldr r2, [r3, #offDvmDex_pResFields] @ r2<- pResFields
7347 * The first four args are in r0-r3, pointer to return value storage
7377 * The first four args are in r0-r3, pointer to return value storage
7423 GET_VREG(r3, r2) @ r3<- object we're operating on
7425 cmp r3, #0 @ check object for null
7427 ldr r0, [r3, r1] @ r0<- obj.field (always 32 bits)
7440 GET_VREG(r3, r2) @ r3<- object we're operating on
7442 cmp r3, #0 @ check object for null
7444 ldrd r0, [r3, ip] @ r0<- obj.field (64 bits, aligned)
7446 add r3, rFP, r2, lsl #2 @ r3<- &fp[A]
7448 stmia r3, {r0-r1} @ fp[A]<- r0/r1
7459 GET_VREG(r3, r2) @ r3<- object we're operating on
7461 cmp r3, #0 @ check object for null
7464 ldr r0, [r3, r1] @ r0<- obj.field (always 32 bits)
7480 GET_VREG(r3, r2) @ r3<- fp[B], the object pointer
7482 cmp r3, #0 @ check object for null
7486 str r0, [r3, r1] @ obj.field (always 32 bits)<- r0
7498 add r3, rFP, r0, lsl #2 @ r3<- &fp[A]
7500 ldmia r3, {r0-r1} @ r0/r1<- fp[A]
7502 FETCH(r3, 1) @ r3<- field byte offset
7504 strd r0, [r2, r3] @ obj.field (64 bits, aligned)<- r0/r1
7515 GET_VREG(r3, r2) @ r3<- fp[B], the object pointer
7517 cmp r3, #0 @ check object for null
7524 str r0, [r3, r1] @ obj.field (always 32 bits)<- r0
7526 strneb r2, [r2, r3, lsr #GC_CARD_SHIFT] @ mark card based on obj head
7541 FETCH(r3, 2) @ r3<- FEDC or CCCC
7544 and r3, r3, #15 @ r3<- C (or stays CCCC)
7546 GET_VREG(r2, r3) @ r2<- vC ("this" ptr)
7552 ldr r0, [r2, r1, lsl #2] @ r3<- vtable[BBBB]
7567 FETCH(r3, 2) @ r3<- FEDC or CCCC
7570 and r3, r3, #15 @ r3<- C (or stays CCCC)
7572 GET_VREG(r2, r3) @ r2<- vC ("this" ptr)
7578 ldr r0, [r2, r1, lsl #2] @ r3<- vtable[BBBB]
7602 GET_VREG(r3, r10) @ r3<- "this"
7604 cmp r3, #0 @ null "this" ref?
7630 GET_VREG(r3, r10) @ r3<- "this"
7632 cmp r3, #0 @ null "this" ref?
7650 ldr r3, [rGLUE, #offGlue_methodClassDex] @ r3<- DvmDex
7652 ldr r2, [r3, #offDvmDex_pResFields] @ r2<- pDvmDex->pResFields
7819 ldr r3, [r9, #offObject_clazz] @ r3<- obj->clazz
7821 ldr r1, [r3, #offClassObject_descriptor] @ r1<- obj->clazz->descriptor
7833 ldr r3, [rGLUE, #offGlue_method] @ r3<- glue->method
7836 ldr r0, [r3, #offMethod_clazz] @ r0<- method->clazz
7884 * r3 holds BBBB
7890 mov r1, r3 @ r1<- BBBB
7897 mov r3, rINST, lsr #12 @ r3<- B
7898 GET_VREG(r0, r3) @ r0<- vB (object)
7906 mov r3, rINST, lsr #8 @ r3<- AA
7911 SET_VREG(r0, r3) @ vAA<- r0
7933 ldr r3, [rGLUE, #offGlue_method] @ r3<- glue->method
7935 ldr r0, [r3, #offMethod_clazz] @ r0<- method->clazz
7954 ldr r3, [rGLUE, #offGlue_method] @ r3<- glue->method
7958 ldr r0, [r3, #offMethod_clazz] @ r0<- method->clazz
7991 ldr r3, [r0, #offClassObject_descriptor] @ r3<- arrayClass->descriptor
7993 ldrb rINST, [r3, #1] @ rINST<- descriptor[1]
8020 1: ldr r3, [r2], #4 @ r3<- *r2++
8022 str r3, [r0], #4 @ *contents++ = vX
8029 GET_VREG(r3, r2) @ r3<- vA
8031 str r3, [r0, #16] @ contents[4] = vA
8033 GET_VREG(r3, r2) @ r3<- vF/vE/vD/vC
8036 str r3, [r0], #4 @ *contents++ = vX
8075 ldr r3, [r0, #offClassObject_descriptor] @ r3<- arrayClass->descriptor
8077 ldrb rINST, [r3, #1] @ rINST<- descriptor[1]
8104 1: ldr r3, [r2], #4 @ r3<- *r2++
8106 str r3, [r0], #4 @ *contents++ = vX
8113 GET_VREG(r3, r2) @ r3<- vA
8115 str r3, [r0, #16] @ contents[4] = vA
8117 GET_VREG(r3, r2) @ r3<- vF/vE/vD/vC
8120 str r3, [r0], #4 @ *contents++ = vX
8196 ldrd r2, [r0, #offArrayObject_contents] @ r2/r3<- vBB[vCC]
8199 stmia r9, {r2-r3} @ vAA/vAA+1<- r2/r3
8206 ldmia r9, {r2-r3} @ r2/r3<- vAA/vAA+1
8208 strd r2, [r0, #offArrayObject_contents] @ r2/r3<- vBB[vCC]
8250 ldr r3, [r0, #offInstField_byteOffset] @ r3<- byte offset of field
8252 ldr r0, [r9, r3] @ r0<- obj.field (8/16/32 bits)
8268 ldr r3, [r0, #offInstField_byteOffset] @ r3<- byte offset of field
8270 ldrd r0, [r9, r3] @ r0/r1<- obj.field (64-bit align ok)
8273 add r3, rFP, r2, lsl #2 @ r3<- &fp[A]
8275 stmia r3, {r0-r1} @ fp[A]<- r0/r1
8288 ldr r3, [r0, #offInstField_byteOffset] @ r3<- byte offset of field
8290 ldr r0, [r9, r3] @ r0<- obj.field (8/16/32 bits)
8309 ldr r3, [r0, #offInstField_byteOffset] @ r3<- byte offset of field
8311 ldr r0, [r9, r3] @ r0<- obj.field (8/16/32 bits)
8330 ldr r3, [r0, #offInstField_byteOffset] @ r3<- byte offset of field
8332 ldr r0, [r9, r3] @ r0<- obj.field (8/16/32 bits)
8351 ldr r3, [r0, #offInstField_byteOffset] @ r3<- byte offset of field
8353 ldr r0, [r9, r3] @ r0<- obj.field (8/16/32 bits)
8372 ldr r3, [r0, #offInstField_byteOffset] @ r3<- byte offset of field
8374 ldr r0, [r9, r3] @ r0<- obj.field (8/16/32 bits)
8392 ldr r3, [r0, #offInstField_byteOffset] @ r3<- byte offset of field
8399 str r0, [r9, r3] @ obj.field (8/16/32 bits)<- r0
8412 ldr r3, [r0, #offInstField_byteOffset] @ r3<- byte offset of field
8413 add r2, rFP, r2, lsl #2 @ r3<- &fp[A]
8418 strd r0, [r9, r3] @ obj.field (64 bits, aligned)<- r0
8431 ldr r3, [r0, #offInstField_byteOffset] @ r3<- byte offset of field
8440 str r0, [r9, r3] @ obj.field (32 bits)<- r0
8455 ldr r3, [r0, #offInstField_byteOffset] @ r3<- byte offset of field
8463 str r0, [r9, r3] @ obj.field (8/16/32 bits)<- r0
8476 ldr r3, [r0, #offInstField_byteOffset] @ r3<- byte offset of field
8484 str r0, [r9, r3] @ obj.field (8/16/32 bits)<- r0
8497 ldr r3, [r0, #offInstField_byteOffset] @ r3<- byte offset of field
8505 str r0, [r9, r3] @ obj.field (8/16/32 bits)<- r0
8518 ldr r3, [r0, #offInstField_byteOffset] @ r3<- byte offset of field
8526 str r0, [r9, r3] @ obj.field (8/16/32 bits)<- r0
8756 ldr r3, [r1, #offObject_clazz] @ r1<- thisPtr->clazz
8757 ldr r3, [r3, #offClassObject_vtable] @ r3<- thisPtr->clazz->vtable
8758 ldr r0, [r3, r2, lsl #2] @ r3<- vtable[methodIndex]
8771 ldr r3, [r1, #offClassObject_vtableCount] @ r3<- super->vtableCount
8773 cmp r2, r3 @ compare (methodIndex, vtableCount)
8776 ldr r0, [r1, r2, lsl #2] @ r3<- vtable[methodIndex]
8803 ldr r3, [rGLUE, #offGlue_method] @ r3<- glue->method
8804 ldr r0, [r3, #offMethod_clazz] @ r0<- method->clazz
8824 ldr r3, [r1, #offObject_clazz] @ r1<- thisPtr->clazz
8825 ldr r3, [r3, #offClassObject_vtable] @ r3<- thisPtr->clazz->vtable
8826 ldr r0, [r3, r2, lsl #2] @ r3<- vtable[methodIndex]
8839 ldr r3, [r1, #offClassObject_vtableCount] @ r3<- super->vtableCount
8841 cmp r2, r3 @ compare (methodIndex, vtableCount)
8844 ldr r0, [r1, r2, lsl #2] @ r3<- vtable[methodIndex]
8871 ldr r3, [rGLUE, #offGlue_method] @ r3<- glue->method
8872 ldr r0, [r3, #offMethod_clazz] @ r0<- method->clazz
8927 mov r3, #0x43000000 @ maxlong, as a double (high word)
8928 add r3, #0x00e00000 @ 0x43e00000
8941 mov r3, #0xc3000000 @ minlong, as a double (high word)
8942 add r3, #0x00e00000 @ 0xc3e00000
8953 mov r3, r5
9029 ldr r3, [r0, #offInstField_byteOffset] @ r3<- byte offset of field
9031 ldr r0, [r9, r3] @ r0<- obj.field (8/16/32 bits)
9050 ldr r3, [r0, #offInstField_byteOffset] @ r3<- byte offset of field
9058 str r0, [r9, r3] @ obj.field (8/16/32 bits)<- r0
9101 ldr r3, [r0, #offInstField_byteOffset] @ r3<- byte offset of field
9103 ldr r0, [r9, r3] @ r0<- obj.field (8/16/32 bits)
9121 ldr r3, [r0, #offInstField_byteOffset] @ r3<- byte offset of field
9124 add r0, r9, r3 @ r0<- address of field
9127 ldrd r0, [r9, r3] @ r0/r1<- obj.field (64-bit align ok)
9132 add r3, rFP, r2, lsl #2 @ r3<- &fp[A]
9134 stmia r3, {r0-r1} @ fp[A]<- r0/r1
9148 ldr r3, [r0, #offInstField_byteOffset] @ r3<- byte offset of field
9149 add r2, rFP, r2, lsl #2 @ r3<- &fp[A]
9155 add r2, r9, r3 @ r2<- target address
9158 strd r0, [r9, r3] @ obj.field (64 bits, aligned)<- r0/r1
9218 ldr r3, [rFP, ip, lsr #10] @ r3<- vF (shift right 12, left 2)
9247 GET_VREG(r3, ip) @ r3<- vBase[3]
9272 ldr r3, [r0, #offInstField_byteOffset] @ r3<- byte offset of field
9281 str r0, [r9, r3] @ obj.field (32 bits)<- r0
9338 mov r3, #0
9339 str r3, [r10, #offThread_inJitCodeCache] @ Back to the interp land
9354 mov r3, #0 @ 0 means !inJitCodeCache
9355 str r3, [r10, #offThread_inJitCodeCache] @ back to the interp land
9363 mov r3, #0 @ 0 means !inJitCodeCache
9364 str r3, [r10, #offThread_inJitCodeCache] @ Back to the interp land
9372 mov r3, #0 @ 0 means !inJitCodeCache
9373 str r3, [r10, #offThread_inJitCodeCache] @ Back to the interp land
9381 mov r3, #0 @ 0 means !inJitCodeCache
9382 str r3, [r10, #offThread_inJitCodeCache] @ Back to the interp land
9390 mov r3, #0 @ 0 means !inJitCodeCache
9391 str r3, [r10, #offThread_inJitCodeCache] @ Back to the interp land
9399 mov r3, #0 @ 0 means !inJitCodeCache
9400 str r3, [r10, #offThread_inJitCodeCache] @ Back to the interp land
9607 eor r3,rPC,rPC,lsr #12 @ cheap, but fast hash function
9608 lsl r3,r3,#(32 - JIT_PROF_SIZE_LOG_2) @ shift out excess bits
9609 ldrb r1,[r0,r3,lsr #(32 - JIT_PROF_SIZE_LOG_2)] @ get counter
9612 strb r1,[r0,r3,lsr #(32 - JIT_PROF_SIZE_LOG_2)] @ and store it
9623 strb r1,[r0,r3,lsr #(32 - JIT_PROF_SIZE_LOG_2)] @ reset counter
9649 mov r3, #0 @ 0 means not in the JIT code cache
9650 str r3, [r10, #offThread_inJitCodeCache] @ back to the interp land
9679 mov r3,r10 @ r3<- target translation
9762 ldr r3, [rGLUE, #offGlue_pSelfSuspendCount] @ r3<- &suspendCount
9767 ldr ip, [r3] @ ip<- suspendCount (int)
9784 ldr ip, [r3] @ ip<- suspendCount (int)
9794 ldr r3, [rGLUE, #offGlue_ppJitProfTable] @ r3<-&gDvmJit.pJitProfTable
9796 ldr r3, [r3] @ r3 <- pJitProfTable
9798 str r3, [rGLUE, #offGlue_pJitProfTable] @ refresh Jit's on/off switch
9868 add r3, rFP, r1, lsl #2 @ r3<- &fp[CCCC]
9871 1: ldr r1, [r3], #4 @ val = *fp++
9875 ldrh r3, [r0, #offMethod_outsSize] @ r3<- methodToCall->outsSize
9891 ldrh r3, [r0, #offMethod_outsSize] @ r3<- methodToCall->outsSize
9894 @ r0=methodToCall, r1=GFED, r3=outSize, r2=count, r9=regSize, r10=outs
9921 .LinvokeArgsDone: @ r0=methodToCall, r3=outSize, r9=regSize
9930 sub r3, r10, r3, lsl #2 @ r3<- bottom (newsave - outsSize)
9931 cmp r3, r9 @ bottom < interpStackEnd?
9932 ldr r3, [r0, #offMethod_accessFlags] @ r3<- methodToCall->accessFlags
9947 tst r3, #ACC_NATIVE
9951 stmfd sp!, {r0-r3}
9956 ldmfd sp!, {r0-r3}
9957 stmfd sp!, {r0-r3}
9962 ldmfd sp!, {r0-r3}
9966 ldr r3, [rINST, #offClassObject_pDvmDex] @ r3<- method->clazz->pDvmDex
9971 @ r0=methodToCall, r1=newFp, r2=self, r3=newMethodClass, r9=newINST
9973 str r3, [rGLUE, #offGlue_methodClassDex] @ glue->methodClassDex = ...
9994 ldr r3, [rGLUE, #offGlue_self] @ r3<- glue->self
9995 ldr r9, [r3, #offThread_jniLocal_topCookie] @ r9<- thread->localRef->...
9996 str r1, [r3, #offThread_curFrame] @ self->curFrame = newFp
9998 mov r9, r3 @ r9<- glue->self (preserve)
10020 ldr r3, [rGLUE, #offGlue_ppJitProfTable] @ Refresh Jit's on/off status
10028 ldr r3, [r3] @ r3 <- gDvmJit.pProfTable
10034 str r3, [rGLUE, #offGlue_pJitProfTable] @ refresh cached on/off switch
10071 mov r3, rINST, lsr #8 @ A3<- AA
10096 ldr r3, [rGLUE, #offGlue_self] @ r3<- glue->self
10105 str rFP, [r3, #offThread_curFrame] @ self->curFrame = fp
10110 str r10, [r3, #offThread_inJitCodeCache] @ may return to JIT'ed land
10156 mov r3, #0 @ r3<- NULL
10157 str r3, [r10, #offThread_exception] @ self->exception = NULL
10163 mov r3, #0 @ r3<- false
10197 ldr r3, [r1, #offMethod_insns] @ r3<- method->insns
10199 add rPC, r3, r0, asl #1 @ rPC<- method->insns + catchRelPc
10238 ldr r3, [r9, #offObject_clazz]
10239 ldr r3, [r3, #offClassObject_descriptor]
10354 stmfd sp!, {r0, r1, r2, r3, ip, lr}
10358 ldmfd sp!, {r0, r1, r2, r3, ip, lr}
10373 stmfd sp!, {r0, r1, r2, r3, ip, lr}
10377 ldmfd sp!, {r0, r1, r2, r3, ip, lr}
10384 stmfd sp!, {r0, r1, r2, r3, ip, lr}
10387 ldmfd sp!, {r0, r1, r2, r3, ip, lr}
10394 stmfd sp!, {r0, r1, r2, r3, ip, lr}
10398 ldmfd sp!, {r0, r1, r2, r3, ip, lr}
10405 stmfd sp!, {r0, r1, r2, r3, ip, lr}
10406 mov r3, r1
10410 ldmfd sp!, {r0, r1, r2, r3, ip, lr}
10417 stmfd sp!, {r0, r1, r2, r3, ip, lr}
10419 ldmfd sp!, {r0, r1, r2, r3, ip, lr}
10428 stmfd sp!, {r0, r1, r2, r3, ip, lr}
10430 ldmfd sp!, {r0, r1, r2, r3, ip, lr}