/art/runtime/interpreter/mterp/mips/ |
D | op_goto_32.S | 13 FETCH(a1, 2) # a1 <- AAAA (hi) 14 sll a1, a1, 16 15 or rINST, a0, a1 # rINST <- AAAAaaaa 18 addu a1, rFP, OFF_FP_SHADOWFRAME 22 addu a1, rINST, rINST # a1 <- byte offset 23 FETCH_ADVANCE_INST_RB(a1) # update rPC, load rINST 24 bgtz a1, 1f 32 FETCH(a1, 2) # a1 <- AAAA (hi) 33 sll a1, a1, 16 34 or rINST, a0, a1 # rINST <- AAAAaaaa [all …]
|
D | op_packed_switch.S | 14 FETCH(a1, 2) # a1 <- BBBB (hi) 16 sll t0, a1, 16 18 GET_VREG(a1, a3) # a1 <- vAA 24 addu a1, rFP, OFF_FP_SHADOWFRAME 28 addu a1, rINST, rINST # a1 <- byte offset 29 FETCH_ADVANCE_INST_RB(a1) # update rPC, load rINST 30 bgtz a1, .L${opcode}_finish 35 FETCH(a1, 2) # a1 <- BBBB (hi) 37 sll t0, a1, 16 39 GET_VREG(a1, a3) # a1 <- vAA [all …]
|
D | op_fill_array_data.S | 4 FETCH(a1, 2) # a1 <- BBBB (hi) 6 sll a1, a1, 16 # a1 <- BBBBbbbb 7 or a1, a0, a1 # a1 <- BBBBbbbb 9 EAS1(a1, rPC, a1) # a1 <- PC + BBBBbbbb*2 (array data off.)
|
D | op_const_4.S | 2 sll a1, rINST, 16 # a1 <- Bxxx0000 5 sra a1, a1, 28 # a1 <- sssssssB (sign-extended) 8 SET_VREG_GOTO(a1, a0, t0) # fp[A] <- a1
|
D | op_const_wide.S | 3 FETCH(a1, 2) # a1 <- BBBB (low middle) 5 sll a1, 16 # 6 or a0, a1 # a0 <- BBBBbbbb (low word) 10 or a1, a3, a2 # a1 <- HHHHhhhh (high word) 13 SET_VREG64(a0, a1, t1) # vAA <- a0/a1
|
D | op_goto_16.S | 12 addu a1, rFP, OFF_FP_SHADOWFRAME 16 addu a1, rINST, rINST # a1 <- byte offset, flags set 17 FETCH_ADVANCE_INST_RB(a1) # update rPC, load rINST 18 bgez a1, 1f 26 addu a1, rINST, rINST # a1 <- byte offset, flags set 27 FETCH_ADVANCE_INST_RB(a1) # update rPC, load rINST 28 bgez a1, 1f
|
D | op_iput_wide_quick.S | 3 GET_OPB(a1) # a1 <- B 4 GET_VREG(a2, a1) # a2 <- fp[B], the object pointer 8 LOAD64(a0, a1, a3) # a0/a1 <- fp[A] 11 addu a2, a2, a3 # obj.field (64 bits, aligned) <- a0/a1 12 STORE64(a0, a1, a2) # obj.field (64 bits, aligned) <- a0/a1
|
D | op_instance_of.S | 10 GET_OPB(a1) # a1 <- B 11 EAS2(a1, rFP, a1) # a1 <- &object 16 lw a1, THREAD_EXCEPTION_OFFSET(rSELF) 18 bnez a1, MterpException
|
D | op_const_wide_high16.S | 2 FETCH(a1, 1) # a1 <- 0000BBBB (zero-extended) 5 sll a1, 16 # a1 <- BBBB0000 8 SET_VREG64(a0, a1, a3) # vAA <- a0/a1
|
D | op_shr_long_2addr.S | 10 LOAD64(a0, a1, t0) # a0/a1 <- vAA/vAA+1 15 sra v1, a1, a2 # rhi<- ahi >> (shift&31) 19 sll a1, 1 20 sll a1, a0 # ahi<- ahi << (32-(shift&31)) 21 or v0, a1 # rlo<- rlo | ahi 22 SET_VREG64_GOTO(v0, v1, t2, t0) # vAA/vAA+1 <- a0/a1 26 sra a3, a1, 31 # a3<- sign(ah)
|
D | fbinopWide2addr.S | 11 GET_OPB(a1) # a1 <- B 12 EAS2(a1, rFP, a1) # a1 <- &fp[B] 15 LOAD64_F(fa1, fa1f, a1)
|
D | footer.S | 19 addu a1, rFP, OFF_FP_SHADOWFRAME 28 addu a1, rFP, OFF_FP_SHADOWFRAME 37 addu a1, rFP, OFF_FP_SHADOWFRAME 46 addu a1, rFP, OFF_FP_SHADOWFRAME 55 addu a1, rFP, OFF_FP_SHADOWFRAME 64 addu a1, rFP, OFF_FP_SHADOWFRAME 73 addu a1, rFP, OFF_FP_SHADOWFRAME 95 addu a1, rFP, OFF_FP_SHADOWFRAME 99 lw a1, OFF_FP_DEX_PC(rFP) 102 sll a1, a1, 1 [all …]
|
D | binopWide2addr.S | 17 GET_OPB(a1) # a1 <- B 18 EAS2(a1, rFP, a1) # a1 <- &fp[B] 20 LOAD64($arg2, $arg3, a1) # a2/a3 <- vBB/vBB+1 21 LOAD64($arg0, $arg1, t0) # a0/a1 <- vAA/vAA+1
|
D | op_const.S | 4 FETCH(a1, 2) # a1 <- BBBB (high) 6 sll a1, a1, 16 7 or a0, a1, a0 # a0 <- BBBBbbbb
|
D | op_ushr_long_2addr.S | 10 LOAD64(a0, a1, t0) # a0/a1 <- vAA/vAA+1 16 srl v1, a1, a2 # rhi<- ahi >> (shift&31) 20 sll a1, 1 21 sll a1, a0 # ahi<- ahi << (32-(shift&31)) 22 or v0, a1 # rlo<- rlo | ahi 23 SET_VREG64_GOTO(v0, v1, t3, t0) # vAA/vAA+1 <- a0/a1
|
D | op_shr_long.S | 14 LOAD64(a0, a1, a3) # a0/a1 <- vBB/vBB+1 19 sra v1, a1, a2 # rhi<- ahi >> (shift&31) 23 sll a1, 1 24 sll a1, a0 # ahi<- ahi << (32-(shift&31)) 25 or v0, a1 # rlo<- rlo | ahi 30 sra a3, a1, 31 # a3<- sign(ah)
|
D | op_check_cast.S | 7 GET_OPA(a1) # a1 <- AA 8 EAS2(a1, rFP, a1) # a1 <- &object
|
D | op_aget.S | 18 GET_VREG(a1, a3) # a1 <- vCC (requested index) 23 EASN(a0, a0, a1, $shift) # a0 <- arrayObj + index*width 25 addu a0, a0, a1 27 # a1 >= a3; compare unsigned index 28 bgeu a1, a3, common_errArrayIndex # index >= length, bail
|
D | op_sget_wide.S | 8 lw a1, OFF_FP_METHOD(rFP) # a1 <- method 13 GET_OPA(a1) # a1 <- AA 15 SET_VREG64(v0, v1, a1) # vAA/vAA+1 <- v0/v1
|
/art/runtime/interpreter/mterp/out/ |
D | mterp_mips.S | 75 #define rARG1 a1 87 #define a1 $5 macro 540 sw a1, SHADOWFRAME_CODE_ITEM_OFFSET(a2) 548 addu rPC, a1, CODEITEM_INSNS_OFFSET # Point to base of insns[] 582 GET_OPB(a1) # a1 <- B from 15:12 585 GET_VREG(a2, a1) # a2 <- fp[B] 600 FETCH(a1, 1) # a1 <- BBBB 603 GET_VREG(a2, a1) # a2 <- fp[BBBB] 618 FETCH(a1, 2) # a1 <- BBBB 621 GET_VREG(a2, a1) # a2 <- fp[BBBB] [all …]
|
D | mterp_mips64.S | 352 sd a1, SHADOWFRAME_CODE_ITEM_OFFSET(a2) 359 daddu rPC, a1, CODEITEM_INSNS_OFFSET 727 lh a1, 4(rPC) # a1 <- BBBB (high) 729 ins a0, a1, 16, 16 # a0 = BBBBbbbb 766 lh a1, 4(rPC) # a1 <- BBBB (high) 768 ins a0, a1, 16, 16 # a0 = BBBBbbbb 780 lh a1, 4(rPC) # a1 <- BBBB (low middle) 784 ins a0, a1, 16, 16 # a0 = BBBBbbbb 812 srl a1, rINST, 8 # a1 <- AA 831 srl a1, rINST, 8 # a1 <- AA [all …]
|
/art/runtime/interpreter/mterp/mips64/ |
D | op_fill_array_data.S | 4 lh a1, 2(rPC) # a1 <- bbbb (lo) 7 ins a1, a0, 16, 16 # a1 <- BBBBbbbb 9 dlsa a1, a1, rPC, 1 # a1 <- PC + BBBBbbbb*2 (array data off.)
|
D | op_instance_of.S | 11 srl a1, rINST, 12 # a1 <- B 12 dlsa a1, a1, rFP, 2 # a1 <- &object 16 ld a1, THREAD_EXCEPTION_OFFSET(rSELF) 19 bnez a1, MterpException
|
D | op_check_cast.S | 8 srl a1, rINST, 8 # a1 <- AA 9 dlsa a1, a1, rFP, 2 # a1 <- &object
|
D | op_iput.S | 11 srl a1, rINST, 12 # a1 <- B 12 GET_VREG_U a1, a1 # a1 <- fp[B], the object pointer
|