/dalvik/vm/mterp/x86/ |
D | OP_USHR_LONG.S | 16 SPILL(rIBASE) 17 GET_VREG_WORD rIBASE %eax 1 # rIBASE<- v[BB+1] 20 shrdl rIBASE,%eax 21 shrl %cl,rIBASE 24 movl rIBASE,%eax 25 xorl rIBASE,rIBASE 27 SET_VREG_WORD rIBASE rINST 1 # v[AA+1]<- rIBASE 29 UNSPILL(rIBASE)
|
D | OP_DIV_LONG.S | 6 SPILL(rIBASE) # save rIBASE/%edx 7 GET_VREG_WORD rIBASE %eax 0 9 movl rIBASE,OUT_ARG2(%esp) 15 GET_VREG_WORD rIBASE %ecx 0 19 movl rIBASE,OUT_ARG0(%esp) 23 SET_VREG_WORD rIBASE rINST 1 24 UNSPILL(rIBASE) # restore rIBASE/%edx 31 testl rIBASE,rIBASE 35 testl rIBASE,%eax 37 GET_VREG_WORD rIBASE %ecx 0 [all …]
|
D | OP_USHR_LONG_2ADDR.S | 14 SPILL(rIBASE) 15 GET_VREG_WORD rIBASE rINST 1 # rIBASE<- v[AA+1] 17 shrdl rIBASE,%eax 18 shrl %cl,rIBASE 21 movl rIBASE,%eax 22 xorl rIBASE,rIBASE 24 SET_VREG_WORD rIBASE rINST 1 # v[AA+1]<- rIBASE 26 UNSPILL(rIBASE)
|
D | OP_DIV_LONG_2ADDR.S | 7 SPILL(rIBASE) # save rIBASE/%edx 8 GET_VREG_WORD rIBASE %eax 0 10 movl rIBASE,OUT_ARG2(%esp) 16 GET_VREG_WORD rIBASE rINST 0 20 movl rIBASE,OUT_ARG0(%esp) 24 SET_VREG_WORD rIBASE rINST 1 25 UNSPILL(rIBASE) # restore rIBASE/%edx 32 testl rIBASE,rIBASE 36 testl rIBASE,%eax 38 GET_VREG_WORD rIBASE rINST 0 [all …]
|
D | OP_SHR_LONG_2ADDR.S | 14 SPILL(rIBASE) 15 GET_VREG_WORD rIBASE rINST 1 # rIBASE<- v[AA+1] 17 shrdl rIBASE,%eax 18 sarl %cl,rIBASE 21 movl rIBASE,%eax 22 sarl $$31,rIBASE 24 SET_VREG_WORD rIBASE rINST 1 # v[AA+1]<- rIBASE 25 UNSPILL(rIBASE)
|
D | OP_SHR_LONG.S | 16 SPILL(rIBASE) 17 GET_VREG_WORD rIBASE %eax 1 # rIBASE<- v[BB+1] 20 shrdl rIBASE,%eax 21 sarl %cl,rIBASE 24 movl rIBASE,%eax 25 sarl $$31,rIBASE 27 SET_VREG_WORD rIBASE rINST 1 # v[AA+1]<- rIBASE 29 UNSPILL(rIBASE)
|
D | OP_IGET_JUMBO.S | 15 SPILL(rIBASE) # preserve rIBASE 16 movl 2(rPC),rIBASE # rIBASE<- AAAAAAAA 21 movl (%eax,rIBASE,4),%eax # resolved entry 24 movl rIBASE,OUT_ARG1(%esp) # needed by dvmResolveInstField 25 movl rSELF,rIBASE 27 movl offThread_method(rIBASE),rIBASE # rIBASE<- current method 28 movl offMethod_clazz(rIBASE),rIBASE # rIBASE<- method->clazz 30 movl rIBASE,OUT_ARG0(%esp) # pass in method->clazz 49 UNSPILL(rIBASE) # restore rIBASE
|
D | binopWide.S | 8 SPILL(rIBASE) # save rIBASE 9 GET_VREG_WORD rIBASE %eax 0 # rIBASE<- v[BB+0] 11 $instr1 # ex: addl (rFP,%ecx,4),rIBASE 13 SET_VREG_WORD rIBASE rINST 0 # v[AA+0] <- rIBASE 15 UNSPILL(rIBASE) # restore rIBASE
|
D | OP_IGET_WIDE_JUMBO.S | 11 SPILL(rIBASE) # preserve rIBASE 12 movl 2(rPC),rIBASE # rIBASE<- AAAAAAAA 17 movl (%eax,rIBASE,4),%eax # resolved entry 20 movl rIBASE,OUT_ARG1(%esp) # for dvmResolveInstField 21 movl rSELF,rIBASE 23 movl offThread_method(rIBASE),rIBASE # rIBASE<- current method 24 movl offMethod_clazz(rIBASE),rIBASE # rIBASE<- method->clazz 26 movl rIBASE,OUT_ARG0(%esp) # pass in method->clazz 48 UNSPILL(rIBASE) # restore rIBASE
|
D | OP_EXECUTE_INLINE.S | 18 SPILL(rIBASE) # preserve rIBASE 21 UNSPILL(rIBASE) # restore rIBASE 38 movzwl 4(rPC),rIBASE 41 andl rIBASE,%ecx 43 sarl $$4,rIBASE 47 andl rIBASE,%ecx 49 sarl $$4,rIBASE 53 andl rIBASE,%ecx 55 sarl $$4,rIBASE 59 andl rIBASE,%ecx [all …]
|
D | OP_IGET.S | 14 SPILL(rIBASE) # preserve rIBASE 15 movzwl 2(rPC),rIBASE # rIBASE<- 0000CCCC 22 movl (%eax,rIBASE,4),%eax # resolved entry 25 movl rIBASE,OUT_ARG1(%esp) # needed by dvmResolveInstField 26 movl rSELF,rIBASE 28 movl offThread_method(rIBASE),rIBASE # rIBASE<- current method 29 movl offMethod_clazz(rIBASE),rIBASE # rIBASE<- method->clazz 31 movl rIBASE,OUT_ARG0(%esp) # pass in method->clazz 50 UNSPILL(rIBASE)
|
D | OP_IGET_WIDE.S | 12 SPILL(rIBASE) # preserve rIBASE 13 movzwl 2(rPC),rIBASE # rIBASE<- 0000CCCC 20 movl (%eax,rIBASE,4),%eax # resolved entry 23 movl rIBASE,OUT_ARG1(%esp) # for dvmResolveInstField 24 movl rSELF,rIBASE 26 movl offThread_method(rIBASE),rIBASE # rIBASE<- current method 27 movl offMethod_clazz(rIBASE),rIBASE # rIBASE<- method->clazz 51 UNSPILL(rIBASE) # restore rIBASE
|
D | OP_IPUT_JUMBO.S | 15 SPILL(rIBASE) 16 movl 2(rPC),rIBASE # rIBASE<- AAAAAAAA 21 movl (%eax,rIBASE,4),%eax # resolved entry 24 movl rIBASE,OUT_ARG1(%esp) 25 movl rSELF,rIBASE 27 movl offThread_method(rIBASE),rIBASE # rIBASE<- current method 28 movl offMethod_clazz(rIBASE),rIBASE # rIBASE<- method->clazz 30 movl rIBASE,OUT_ARG0(%esp) # pass in method->clazz 50 UNSPILL(rIBASE)
|
D | OP_IPUT.S | 15 SPILL (rIBASE) 16 movzwl 2(rPC),rIBASE # rIBASE<- 0000CCCC 23 movl (%eax,rIBASE,4),%eax # resolved entry 26 movl rIBASE,OUT_ARG1(%esp) 27 movl rSELF,rIBASE 29 movl offThread_method(rIBASE),rIBASE # rIBASE<- current method 30 movl offMethod_clazz(rIBASE),rIBASE # rIBASE<- method->clazz 32 movl rIBASE,OUT_ARG0(%esp) # pass in method->clazz 52 UNSPILL(rIBASE)
|
D | OP_IPUT_WIDE_JUMBO.S | 11 SPILL(rIBASE) 12 movl 2(rPC),rIBASE # rIBASE<- AAAAAAAA 17 movl (%eax,rIBASE,4),%eax # resolved entry 20 movl rIBASE,OUT_ARG1(%esp) 21 movl rSELF,rIBASE 23 movl offThread_method(rIBASE),rIBASE # rIBASE<- current method 24 movl offMethod_clazz(rIBASE),rIBASE # rIBASE<- method->clazz 26 movl rIBASE,OUT_ARG0(%esp) # pass in method->clazz 50 UNSPILL(rIBASE)
|
D | OP_IPUT_WIDE.S | 12 SPILL(rIBASE) 13 movzwl 2(rPC),rIBASE # rIBASE<- 0000CCCC 20 movl (%eax,rIBASE,4),%eax # resolved entry 23 movl rIBASE,OUT_ARG1(%esp) 24 movl rSELF,rIBASE 26 movl offThread_method(rIBASE),rIBASE # rIBASE<- current method 27 movl offMethod_clazz(rIBASE),rIBASE # rIBASE<- method->clazz 29 movl rIBASE,OUT_ARG0(%esp) # pass in method->clazz 53 UNSPILL(rIBASE)
|
D | OP_SHL_LONG_2ADDR.S | 14 SPILL(rIBASE) 15 GET_VREG_WORD rIBASE rINST 1 # rIBASE<- v[AA+1] 17 shldl %eax,rIBASE 21 movl %eax,rIBASE 24 SET_VREG_WORD rIBASE rINST 1 # v[AA+1]<- rIBASE 25 UNSPILL(rIBASE)
|
D | OP_CONST_WIDE_32.S | 4 SPILL(rIBASE) # save rIBASE (cltd trashes it) 5 cltd # rIBASE:eax<- ssssssssssssBBBB 6 SET_VREG_WORD rIBASE rINST,1 # store msw 8 UNSPILL(rIBASE) # restore rIBASE
|
D | OP_CONST_WIDE_16.S | 4 SPILL(rIBASE) # preserve rIBASE (cltd trashes it) 5 cltd # rIBASE:eax<- ssssssssssssBBBB 6 SET_VREG_WORD rIBASE rINST 1 # store msw 8 UNSPILL(rIBASE) # restore rIBASE
|
D | OP_IPUT_OBJECT.S | 14 SPILL(rIBASE) 15 movzwl 2(rPC),rIBASE # rIBASE<- 0000CCCC 22 movl (%eax,rIBASE,4),%eax # resolved entry 25 movl rIBASE,OUT_ARG1(%esp) 26 movl rSELF,rIBASE 28 movl offThread_method(rIBASE),rIBASE # rIBASE<- current method 29 movl offMethod_clazz(rIBASE),rIBASE # rIBASE<- method->clazz 31 movl rIBASE,OUT_ARG0(%esp) # pass in method->clazz 58 UNSPILL(rIBASE)
|
D | OP_IPUT_OBJECT_JUMBO.S | 12 SPILL(rIBASE) 13 movl 2(rPC),rIBASE # rIBASE<- AAAAAAAA 18 movl (%eax,rIBASE,4),%eax # resolved entry 21 movl rIBASE,OUT_ARG1(%esp) 22 movl rSELF,rIBASE 24 movl offThread_method(rIBASE),rIBASE # rIBASE<- current method 25 movl offMethod_clazz(rIBASE),rIBASE # rIBASE<- method->clazz 27 movl rIBASE,OUT_ARG0(%esp) # pass in method->clazz 55 UNSPILL(rIBASE)
|
D | OP_SHL_LONG.S | 16 SPILL(rIBASE) 17 GET_VREG_WORD rIBASE %eax 1 # ecx<- v[BB+1] 20 shldl %eax,rIBASE 24 movl %eax,rIBASE 27 SET_VREG_WORD rIBASE rINST 1 # v[AA+1]<- rIBASE 29 UNSPILL(rIBASE)
|
D | OP_CMP_LONG.S | 12 SPILL(rIBASE) 13 movzbl 3(rPC),rIBASE # rIBASE- CC 16 cmpl 4(rFP,rIBASE,4),%eax 19 sub (rFP,rIBASE,4),%ecx 24 UNSPILL(rIBASE) 32 UNSPILL(rIBASE) 40 UNSPILL(rIBASE)
|
D | OP_INT_TO_LONG.S | 7 SPILL(rIBASE) # cltd trashes rIBASE/edx 9 SET_VREG_WORD rIBASE rINST 1 # v[A+1]<- rIBASE/rPC 11 UNSPILL(rIBASE)
|
/dalvik/vm/mterp/out/ |
D | InterpAsm-x86.S | 82 #define rIBASE %edx macro 224 jmp *(rIBASE,%eax,4) 233 jmp *(rIBASE,\_reg,4) 243 jmp *(rIBASE,\_reg,4) 613 SPILL(rIBASE) # preserve rIBASE (cltd trashes it) 614 cltd # rIBASE:eax<- ssssssssssssBBBB 615 SET_VREG_WORD rIBASE rINST 1 # store msw 617 UNSPILL(rIBASE) # restore rIBASE 627 SPILL(rIBASE) # save rIBASE (cltd trashes it) 628 cltd # rIBASE:eax<- ssssssssssssBBBB [all …]
|