/art/runtime/interpreter/mterp/out/ |
D | mterp_x86.S | 243 movzx rINSTbl,%eax 245 shll MACRO_LITERAL(7), %eax 246 addl rIBASE, %eax 247 jmp *%eax 369 movl IN_ARG3(%esp), %eax 370 movl %eax, SHADOWFRAME_RESULT_REGISTER_OFFSET(%edx) 377 movl SHADOWFRAME_NUMBER_OF_VREGS_OFFSET(%edx), %eax 379 leal (rFP, %eax, 4), rREFS 380 movl SHADOWFRAME_DEX_PC_OFFSET(%edx), %eax 382 lea (rPC, %eax, 2), rPC [all …]
|
/art/runtime/interpreter/mterp/x86/ |
D | footer.S | 18 movl rSELF, %eax 19 movl %eax, OUT_ARG0(%esp) 29 movl rSELF, %eax 30 movl %eax, OUT_ARG0(%esp) 40 movl rSELF, %eax 41 movl %eax, OUT_ARG0(%esp) 51 movl rSELF, %eax 52 movl %eax, OUT_ARG0(%esp) 62 movl rSELF, %eax 63 movl %eax, OUT_ARG0(%esp) [all …]
|
D | op_cmp_long.S | 6 movzbl 2(rPC), %eax # eax <- BB 8 GET_VREG_HIGH %eax, %eax # eax <- v[BB+1], BB is clobbered 9 cmpl VREG_HIGH_ADDRESS(%ecx), %eax 12 movzbl 2(rPC), %eax # eax <- BB, restore BB 13 GET_VREG %eax, %eax # eax <- v[BB] 14 sub VREG_ADDRESS(%ecx), %eax 18 SET_VREG %eax, rINST 22 movl $$1, %eax 26 movl $$-1, %eax
|
D | op_shl_long.S | 13 movzbl 2(rPC), %eax # eax <- BB 16 GET_VREG_HIGH rIBASE, %eax # ecx <- v[BB+1] 18 GET_VREG %eax, %eax # eax <- v[BB+0] 19 shldl %eax,rIBASE 20 sall %cl, %eax 23 movl %eax, rIBASE 24 xorl %eax, %eax 28 SET_VREG %eax, rINST # v[AA+0] <- %eax
|
D | op_const_wide_high16.S | 2 movzwl 2(rPC), %eax # eax <- 0000BBBB 3 sall $$16, %eax # eax <- BBBB0000 4 SET_VREG_HIGH %eax, rINST # v[AA+1] <- eax 5 xorl %eax, %eax 6 SET_VREG %eax, rINST # v[AA+0] <- eax
|
D | op_aget.S | 9 movzbl 2(rPC), %eax # eax <- BB 11 GET_VREG %eax, %eax # eax <- vBB (array object) 13 testl %eax, %eax # null array object? 15 cmpl MIRROR_ARRAY_LENGTH_OFFSET(%eax), %ecx 17 $load $data_offset(%eax,%ecx,$shift), %eax 18 SET_VREG %eax, rINST
|
D | op_mul_long_2addr.S | 13 movzbl rINSTbl, %eax # eax <- BA 14 andb $$0xf, %al # eax <- A 15 CLEAR_WIDE_REF %eax # clear refs in advance 20 leal (rFP,%eax,4), %esi # esi <- &v[A] 24 movl 4(rFP), %eax # eax <- Bmsw 25 imull (%esi), %eax # eax <- (Bmsw*Alsw) 26 addl %eax, %ecx # ecx <- (Amsw*Blsw)+(Bmsw*Alsw) 27 movl (rFP), %eax # eax <- Blsw 28 mull (%esi) # eax <- (Blsw*Alsw) 29 leal (%ecx,rIBASE), rIBASE # full result now in %edx:%eax [all …]
|
D | op_aput.S | 9 movzbl 2(rPC), %eax # eax <- BB 11 GET_VREG %eax, %eax # eax <- vBB (array object) 13 testl %eax, %eax # null array object? 15 cmpl MIRROR_ARRAY_LENGTH_OFFSET(%eax), %ecx 17 leal $data_offset(%eax,%ecx,$shift), %eax 19 $store $reg, (%eax)
|
D | op_int_to_long.S | 2 movzbl rINSTbl, %eax # eax <- +A 3 sarl $$4, %eax # eax <- B 4 GET_VREG %eax, %eax # eax <- vB 7 cltd # rINST:eax<- sssssssBBBBBBBB 9 SET_VREG %eax, rINST # v[A+0] <- %eax
|
D | op_aget_wide.S | 5 movzbl 2(rPC), %eax # eax <- BB 7 GET_VREG %eax, %eax # eax <- vBB (array object) 9 testl %eax, %eax # null array object? 11 cmpl MIRROR_ARRAY_LENGTH_OFFSET(%eax), %ecx 13 leal MIRROR_WIDE_ARRAY_DATA_OFFSET(%eax,%ecx,8), %eax 14 movq (%eax), %xmm0 # xmm0 <- vBB[vCC]
|
D | op_aput_wide.S | 6 movzbl 2(rPC), %eax # eax <- BB 8 GET_VREG %eax, %eax # eax <- vBB (array object) 10 testl %eax, %eax # null array object? 12 cmpl MIRROR_ARRAY_LENGTH_OFFSET(%eax), %ecx 14 leal MIRROR_WIDE_ARRAY_DATA_OFFSET(%eax,%ecx,8), %eax 16 movq %xmm0, (%eax) # vBB[vCC] <- xmm0
|
D | op_instance_of.S | 9 movzwl 2(rPC), %eax # eax <- BBBB 10 movl %eax, OUT_ARG0(%esp) 11 movl rINST, %eax # eax <- BA 12 sarl $$4, %eax # eax <- B 13 leal VREG_ADDRESS(%eax), %ecx # Get object address 15 movl OFF_FP_METHOD(rFP),%eax 16 movl %eax, OUT_ARG2(%esp) 25 SET_VREG %eax, rINST
|
D | op_mul_long.S | 13 movzbl 2(rPC), %eax # eax <- B 18 leal (rFP,%eax,4), %esi # esi <- &v[B] 22 movl 4(rFP), %eax # eax <- Cmsw 23 imull (%esi), %eax # eax <- (Cmsw*Blsw) 24 addl %eax, %ecx # ecx <- (Bmsw*Clsw)+(Cmsw*Blsw) 25 movl (rFP), %eax # eax <- Clsw 26 mull (%esi) # eax <- (Clsw*Alsw) 29 leal (%ecx,rIBASE), rIBASE # full result now in rIBASE:%eax 32 SET_VREG %eax, rINST # v[B] <- eax
|
D | op_mul_int_lit16.S | 3 movzbl rINSTbl, %eax # eax <- 000000BA 4 sarl $$4, %eax # eax <- B 5 GET_VREG %eax, %eax # eax <- vB 9 imull rIBASE, %eax # trashes rIBASE/edx 11 SET_VREG %eax, rINST
|
D | op_shr_long.S | 13 movzbl 2(rPC), %eax # eax <- BB 16 GET_VREG_HIGH rIBASE, %eax # rIBASE<- v[BB+1] 18 GET_VREG %eax, %eax # eax <- v[BB+0] 19 shrdl rIBASE, %eax 23 movl rIBASE, %eax 28 SET_VREG %eax, rINST # v[AA+0] <- eax
|
D | bindivLit16.S | 8 movzbl rINSTbl, %eax # eax <- 000000BA 9 sarl $$4, %eax # eax <- B 10 GET_VREG %eax, %eax # eax <- vB 17 cmpl $$0x80000000, %eax 19 movl $special, %eax 20 SET_VREG %eax, rINST
|
D | op_ushr_long.S | 13 movzbl 2(rPC), %eax # eax <- BB 16 GET_VREG_HIGH rIBASE, %eax # rIBASE <- v[BB+1] 18 GET_VREG %eax, %eax # eax <- v[BB+0] 19 shrdl rIBASE, %eax 23 movl rIBASE, %eax 28 SET_VREG %eax, rINST # v[BB+0] <- eax
|
D | binopLit16.S | 12 movzbl rINSTbl, %eax # eax <- 000000BA 13 sarl $$4, %eax # eax <- B 14 GET_VREG %eax, %eax # eax <- vB 17 $instr # for example: addl %ecx, %eax
|
D | op_div_long.S | 9 movzbl 3(rPC), %eax # eax <- CC 10 GET_VREG %ecx, %eax 11 GET_VREG_HIGH %ebx, %eax 15 movzbl 2(rPC), %eax # eax <- BB 16 GET_VREG_HIGH %ecx, %eax 17 GET_VREG %eax, %eax 21 SET_VREG %eax, rINST
|
D | binopWide.S | 5 movzbl 2(rPC), %eax # eax <- BB 8 GET_VREG rIBASE, %eax # rIBASE <- v[BB+0] 9 GET_VREG_HIGH %eax, %eax # eax <- v[BB+1] 11 $instr2 # ex: adcl 4(rFP,%ecx,4),%eax 14 SET_VREG_HIGH %eax, rINST # v[AA+1] <- eax
|
D | op_shl_long_2addr.S | 11 GET_VREG %eax, rINST # eax <- v[AA+0] 16 shldl %eax, rIBASE 17 sall %cl, %eax 20 movl %eax, rIBASE 21 xorl %eax, %eax 25 SET_VREG %eax, rINST # v[AA+0] <- eax
|
D | binop1.S | 7 movzbl 2(rPC),%eax # eax <- BB 9 GET_VREG %eax, %eax # eax <- vBB 10 GET_VREG %ecx, %ecx # eax <- vBB 11 $instr # ex: addl %ecx,%eax
|
D | op_mul_int_lit8.S | 2 movzbl 2(rPC), %eax # eax <- BB 4 GET_VREG %eax, %eax # eax <- rBB 6 imull rIBASE, %eax # trashes rIBASE/edx 8 SET_VREG %eax, rINST
|
D | op_div_long_2addr.S | 8 movzbl rINSTbl, %eax 9 shrl $$4, %eax # eax <- B 13 GET_VREG %edx, %eax 14 GET_VREG_HIGH %ebx, %eax 15 movl %edx, %eax 16 orl %ebx, %eax 18 GET_VREG %eax, %ecx 23 SET_VREG %eax, rINST
|
/art/runtime/arch/x86/ |
D | quick_entrypoints_x86.S | 177 PUSH eax // Store the ArtMethod reference at the bottom of the stack. 204 POP eax // Restore Method* 236 PUSH eax 317 POP eax 388 PUSH eax // pass arg1 398 PUSH eax // alignment padding 402 PUSH eax // pass arg1 421 movl (FRAME_SIZE_SAVE_EVERYTHING - 2 * __SIZEOF_POINTER__)(%esp), %eax 429 PUSH eax // pass arg1 486 PUSH eax // pass arg1 [all …]
|