Lines Matching refs:dex
35 dex::u4 src_reg, in BoxValue()
36 dex::u4 dst_reg) { in BoxValue()
83 boxing_invoke->opcode = dex::OP_INVOKE_STATIC_RANGE; in BoxValue()
89 move_result->opcode = dex::OP_MOVE_RESULT_OBJECT; in BoxValue()
124 if ((ir_method->access_flags & dex::kAccStatic) == 0) { in Apply()
157 hook_invoke->opcode = dex::OP_INVOKE_STATIC_RANGE; in Apply()
166 void GenerateShiftParamsCode(lir::CodeIr* code_ir, lir::Instruction* position, dex::u4 shift) { in GenerateShiftParamsCode()
172 if ((ir_method->access_flags & dex::kAccStatic) == 0) { in GenerateShiftParamsCode()
180 const dex::u4 regs = ir_method->code->registers; in GenerateShiftParamsCode()
181 const dex::u4 ins_count = ir_method->code->ins_count; in GenerateShiftParamsCode()
185 dex::u4 reg = regs - ins_count; in GenerateShiftParamsCode()
190 move->opcode = dex::OP_MOVE_OBJECT_16; in GenerateShiftParamsCode()
196 move->opcode = dex::OP_MOVE_16; in GenerateShiftParamsCode()
202 move->opcode = dex::OP_MOVE_WIDE_16; in GenerateShiftParamsCode()
219 bool is_static = (ir_method->access_flags & dex::kAccStatic) != 0; in InjectArrayParamsHook()
222 dex::u2 regs_count = 3; in InjectArrayParamsHook()
238 dex::u4 array_size_reg = 0; in InjectArrayParamsHook()
241 dex::u4 array_reg = 1; in InjectArrayParamsHook()
243 dex::u4 value_reg = 2; in InjectArrayParamsHook()
246 const_size_op->opcode = dex::OP_CONST; in InjectArrayParamsHook()
255 allocate_array_op->opcode = dex::OP_NEW_ARRAY; in InjectArrayParamsHook()
273 dex::u4 current_reg = ir_method->code->registers - ir_method->code->ins_count; in InjectArrayParamsHook()
275 dex::u4 array_index_reg = array_size_reg; in InjectArrayParamsHook()
278 dex::u4 src_reg = 0; in InjectArrayParamsHook()
283 const_str_op->opcode = dex::OP_CONST_STRING; in InjectArrayParamsHook()
300 index_const_op->opcode = dex::OP_CONST; in InjectArrayParamsHook()
306 aput_op->opcode = dex::OP_APUT_OBJECT; in InjectArrayParamsHook()
330 hook_invoke->opcode = dex::OP_INVOKE_STATIC_RANGE; in InjectArrayParamsHook()
338 for (dex::u2 i = 0; i < regs_count; ++i) { in InjectArrayParamsHook()
340 cleanup->opcode = dex::OP_CONST; in InjectArrayParamsHook()
393 dex::Opcode move_result_opcode = dex::OP_NOP; in Apply()
394 dex::u4 reg = 0; in Apply()
397 case dex::OP_RETURN_VOID: in Apply()
400 case dex::OP_RETURN: in Apply()
402 move_result_opcode = dex::OP_MOVE_RESULT; in Apply()
406 case dex::OP_RETURN_OBJECT: in Apply()
408 move_result_opcode = dex::OP_MOVE_RESULT_OBJECT; in Apply()
412 case dex::OP_RETURN_WIDE: in Apply()
414 move_result_opcode = dex::OP_MOVE_RESULT_WIDE; in Apply()
423 dex::u4 scratch_reg = 0; in Apply()
437 if (reg == 0 && bytecode->opcode != dex::OP_RETURN_VOID) { in Apply()
440 case dex::OP_RETURN_OBJECT: in Apply()
441 move_op->opcode = dex::OP_MOVE_OBJECT_16; in Apply()
445 case dex::OP_RETURN: in Apply()
446 move_op->opcode = dex::OP_MOVE_16; in Apply()
450 case dex::OP_RETURN_WIDE: in Apply()
451 move_op->opcode = dex::OP_MOVE_WIDE_16; in Apply()
463 scratch_reg = bytecode->opcode == dex::OP_RETURN_VOID ? 0 : reg - 1; in Apply()
470 const_str_op->opcode = dex::OP_CONST_STRING; in Apply()
480 hook_invoke->opcode = dex::OP_INVOKE_STATIC_RANGE; in Apply()
492 if (move_result_opcode != dex::OP_NOP) { in Apply()
500 check_cast->opcode = dex::OP_CHECK_CAST; in Apply()
524 dex::Opcode new_call_opcode = GetNewOpcode(bytecode->opcode); in Apply()
525 if (new_call_opcode == dex::OP_NOP) { in Apply()
566 dex::Opcode DetourVirtualInvoke::GetNewOpcode(dex::Opcode opcode) { in GetNewOpcode()
568 case dex::OP_INVOKE_VIRTUAL: in GetNewOpcode()
569 return dex::OP_INVOKE_STATIC; in GetNewOpcode()
570 case dex::OP_INVOKE_VIRTUAL_RANGE: in GetNewOpcode()
571 return dex::OP_INVOKE_STATIC_RANGE; in GetNewOpcode()
574 return dex::OP_NOP; in GetNewOpcode()
578 dex::Opcode DetourInterfaceInvoke::GetNewOpcode(dex::Opcode opcode) { in GetNewOpcode()
580 case dex::OP_INVOKE_INTERFACE: in GetNewOpcode()
581 return dex::OP_INVOKE_STATIC; in GetNewOpcode()
582 case dex::OP_INVOKE_INTERFACE_RANGE: in GetNewOpcode()
583 return dex::OP_INVOKE_STATIC_RANGE; in GetNewOpcode()
586 return dex::OP_NOP; in GetNewOpcode()
676 const dex::u4 shift = left_to_allocate_; in ShiftParams()
686 void AllocateScratchRegs::Allocate(lir::CodeIr* code_ir, dex::u4 first_reg, int count) { in Allocate()