/art/runtime/interpreter/mterp/x86_64/ |
H A D | unop.S | 1 %default {"preinstr":"", "instr":"", "wide":"0"} 3 * Generic 32/64-bit unary operation. Provide an "instr" line that 16 $instr
|
/art/compiler/optimizing/ |
H A D | graph_visualizer.h | 66 void AddInstructionInterval(HInstruction* instr, size_t start, size_t end) { argument 67 instruction_intervals_.Put(instr, {start, end});
|
H A D | graph_test.cc | 31 HInstruction* instr = graph->GetIntConstant(4); local 32 HInstruction* equal = new (allocator) HEqual(instr, instr); 34 instr = new (allocator) HIf(equal); 35 if_block->AddInstruction(instr);
|
H A D | nodes_arm64.h | 43 HArm64DataProcWithShifterOp(HInstruction* instr, argument 51 : HExpression(instr->GetType(), SideEffects::None(), dex_pc), 52 instr_kind_(instr->GetKind()), op_kind_(op), shift_amount_(shift) { 53 DCHECK(!instr->HasSideEffects());
|
H A D | common_arm64.h | 70 static inline vixl::Register OutputRegister(HInstruction* instr) { argument 71 return RegisterFrom(instr->GetLocations()->Out(), instr->GetType()); 74 static inline vixl::Register InputRegisterAt(HInstruction* instr, int input_index) { argument 75 return RegisterFrom(instr->GetLocations()->InAt(input_index), 76 instr->InputAt(input_index)->GetType()); 94 static inline vixl::FPRegister OutputFPRegister(HInstruction* instr) { argument 95 return FPRegisterFrom(instr->GetLocations()->Out(), instr->GetType()); 98 static inline vixl::FPRegister InputFPRegisterAt(HInstruction* instr, in argument 108 OutputCPURegister(HInstruction* instr) argument 114 InputCPURegisterAt(HInstruction* instr, int index) argument 121 HConstant* instr = location.GetConstant(); local 140 InputOperandAt(HInstruction* instr, int input_index) argument 196 CanEncodeConstantAsImmediate(HConstant* constant, HInstruction* instr) argument 234 ARM64EncodableConstantOrRegister(HInstruction* constant, HInstruction* instr) argument 308 HasShifterOperand(HInstruction* instr) argument [all...] |
H A D | code_generator.cc | 1083 void CodeGenerator::MaybeRecordImplicitNullCheck(HInstruction* instr) { argument 1087 if (instr->IsStaticFieldSet() || instr->IsStaticFieldGet()) { 1091 if (!instr->CanDoImplicitNullCheckOn(instr->InputAt(0))) { 1096 HInstruction* first_prev_not_move = instr->GetPreviousDisregardingMoves(); 1098 // If the instruction is a null check it means that `instr` is the first user
|
H A D | reference_type_propagation.cc | 88 void VisitLoadString(HLoadString* instr) OVERRIDE; 89 void VisitLoadException(HLoadException* instr) OVERRIDE; 90 void VisitNewArray(HNewArray* instr) OVERRIDE; 91 void VisitParameterValue(HParameterValue* instr) OVERRIDE; 92 void UpdateFieldAccessTypeInfo(HInstruction* instr, const FieldInfo& info); 93 void SetClassAsTypeInfo(HInstruction* instr, mirror::Class* klass, bool is_exact) 95 void VisitInstanceFieldGet(HInstanceFieldGet* instr) OVERRIDE; 96 void VisitStaticFieldGet(HStaticFieldGet* instr) OVERRIDE; 97 void VisitUnresolvedInstanceFieldGet(HUnresolvedInstanceFieldGet* instr) OVERRIDE; 98 void VisitUnresolvedStaticFieldGet(HUnresolvedStaticFieldGet* instr) OVERRID 135 HInstruction* instr = iti.Current(); local 184 HInstruction* instr = it.Current(); local 435 SetClassAsTypeInfo(HInstruction* instr, mirror::Class* klass, bool is_exact) argument 472 UpdateReferenceTypeInfo(HInstruction* instr, uint16_t type_idx, const DexFile& dex_file, bool is_exact) argument 484 VisitNewInstance(HNewInstance* instr) argument 488 VisitNewArray(HNewArray* instr) argument 502 VisitParameterValue(HParameterValue* instr) argument 514 UpdateFieldAccessTypeInfo(HInstruction* instr, const FieldInfo& info) argument 537 VisitInstanceFieldGet(HInstanceFieldGet* instr) argument 541 VisitStaticFieldGet(HStaticFieldGet* instr) argument 545 VisitUnresolvedInstanceFieldGet( HUnresolvedInstanceFieldGet* instr) argument 553 VisitUnresolvedStaticFieldGet( HUnresolvedStaticFieldGet* instr) argument 561 VisitLoadClass(HLoadClass* instr) argument 576 VisitClinitCheck(HClinitCheck* instr) argument 580 VisitLoadString(HLoadString* instr) argument 585 VisitLoadException(HLoadException* instr) argument 600 VisitNullCheck(HNullCheck* instr) argument 607 VisitBoundType(HBoundType* instr) argument 732 UpdateArrayGet(HArrayGet* instr, HandleCache* handle_cache) argument 752 UpdateReferenceTypeInfo(HInstruction* instr) argument 776 VisitInvoke(HInvoke* instr) argument 791 VisitArrayGet(HArrayGet* instr) argument 803 UpdateBoundType(HBoundType* instr) argument 823 UpdatePhi(HPhi* instr) argument 868 UpdateNullability(HInstruction* instr) argument [all...] |
H A D | code_generator_mips64.cc | 266 explicit NullCheckSlowPathMIPS64(HNullCheck* instr) : SlowPathCodeMIPS64(instr) {} argument 1147 void LocationsBuilderMIPS64::HandleShift(HBinaryOperation* instr) { argument 1148 DCHECK(instr->IsShl() || instr->IsShr() || instr->IsUShr() || instr->IsRor()); 1150 LocationSummary* locations = new (GetGraph()->GetArena()) LocationSummary(instr); 1151 Primitive::Type type = instr->GetResultType(); 1156 locations->SetInAt(1, Location::RegisterOrConstant(instr 1165 HandleShift(HBinaryOperation* instr) argument [all...] |
H A D | intrinsics_arm64.cc | 371 static void GenBitCount(HInvoke* instr, Primitive::Type type, vixl::MacroAssembler* masm) { argument 373 DCHECK_EQ(instr->GetType(), Primitive::kPrimInt); 374 DCHECK_EQ(Primitive::PrimitiveKind(instr->InputAt(0)->GetType()), type); 378 Register src = InputRegisterAt(instr, 0); 379 Register dst = RegisterFrom(instr->GetLocations()->Out(), type);
|
H A D | code_generator_arm64.cc | 368 explicit NullCheckSlowPathARM64(HNullCheck* instr) : SlowPathCodeARM64(instr) {} argument 1563 void InstructionCodeGeneratorARM64::Visit##name(H##name* instr ATTRIBUTE_UNUSED) { \ 1566 void LocationsBuilderARM64::Visit##name(H##name* instr) { \ 1567 LocationSummary* locations = new (GetGraph()->GetArena()) LocationSummary(instr); \ 1576 void LocationsBuilderARM64::HandleBinaryOp(HBinaryOperation* instr) { argument 1577 DCHECK_EQ(instr->InputCount(), 2U); 1578 LocationSummary* locations = new (GetGraph()->GetArena()) LocationSummary(instr); 1579 Primitive::Type type = instr->GetResultType(); 1584 locations->SetInAt(1, ARM64EncodableConstantOrRegister(instr 1722 HandleBinaryOp(HBinaryOperation* instr) argument 1775 HandleShift(HBinaryOperation* instr) argument 1793 HandleShift(HBinaryOperation* instr) argument 1847 VisitBitwiseNegatedRight(HBitwiseNegatedRight* instr) argument 1856 VisitBitwiseNegatedRight(HBitwiseNegatedRight* instr) argument 1972 VisitMultiplyAccumulate(HMultiplyAccumulate* instr) argument 1989 VisitMultiplyAccumulate(HMultiplyAccumulate* instr) argument [all...] |
H A D | code_generator_mips.cc | 312 explicit NullCheckSlowPathMIPS(HNullCheck* instr) : SlowPathCodeMIPS(instr) {} argument 1401 void LocationsBuilderMIPS::HandleShift(HBinaryOperation* instr) { argument 1402 DCHECK(instr->IsShl() || instr->IsShr() || instr->IsUShr() || instr->IsRor()); 1404 LocationSummary* locations = new (GetGraph()->GetArena()) LocationSummary(instr); 1405 Primitive::Type type = instr->GetResultType(); 1409 locations->SetInAt(1, Location::RegisterOrConstant(instr 1424 HandleShift(HBinaryOperation* instr) argument [all...] |
/art/disassembler/ |
H A D | disassembler_arm64.cc | 42 const vixl::Instruction* instr, 44 USE(instr); 56 Disassembler::AppendRegisterNameToOutput(instr, reg); 59 void CustomDisassembler::VisitLoadLiteral(const vixl::Instruction* instr) { argument 60 Disassembler::VisitLoadLiteral(instr); 69 void* data_address = instr->LiteralAddress<void*>(); 76 vixl::Instr op = instr->Mask(vixl::LoadLiteralMask); 98 void CustomDisassembler::VisitLoadStoreUnsignedOffset(const vixl::Instruction* instr) { argument 99 Disassembler::VisitLoadStoreUnsignedOffset(instr); 101 if (instr 41 AppendRegisterNameToOutput( const vixl::Instruction* instr, const vixl::CPURegister& reg) argument 110 const vixl::Instruction* instr = reinterpret_cast<const vixl::Instruction*>(begin); local [all...] |
H A D | disassembler_x86.cc | 163 RegFile dst_reg_file, const uint8_t** instr, 168 *address_bits = *reinterpret_cast<const uint32_t*>(*instr); 171 address << StringPrintf("[RIP + 0x%x]", *reinterpret_cast<const uint32_t*>(*instr)); 173 (*instr) += 4; 175 uint8_t sib = **instr; 176 (*instr)++; 208 address << StringPrintf(" + %d", *reinterpret_cast<const int32_t*>(*instr)); 211 *address_bits = *reinterpret_cast<const uint32_t*>(*instr); 214 (*instr) += 4; 217 address << StringPrintf(" + %d", *reinterpret_cast<const int8_t*>(*instr)); 160 DumpAddress(uint8_t mod, uint8_t rm, uint8_t rex64, uint8_t rex_w, bool no_ops, bool byte_operand, bool byte_second_operand, uint8_t* prefix, bool load, RegFile src_reg_file, RegFile dst_reg_file, const uint8_t** instr, uint32_t* address_bits) argument 246 DumpInstruction(std::ostream& os, const uint8_t* instr) argument [all...] |
H A D | disassembler_arm.cc | 154 explicit RmLslImm2(uint32_t instr) : imm2((instr >> 4) & 0x3), rm(instr & 0xf) {} argument 205 FpRegister(uint32_t instr, uint16_t at_bit, uint16_t extra_at_bit) { argument 206 size = (instr >> 8) & 1; 207 uint32_t Vn = (instr >> at_bit) & 0xF; 208 uint32_t N = (instr >> extra_at_bit) & 1; 211 FpRegister(uint32_t instr, uint16_t at_bit, uint16_t extra_at_bit, uint32_t forced_size) { argument 213 uint32_t Vn = (instr >> at_bit) & 0xF; 214 uint32_t N = (instr >> extra_at_bi 228 FpRegisterRange(uint32_t instr) argument 485 uint32_t instr = (ReadU16(instr_ptr) << 16) | ReadU16(instr_ptr + 2); local 1598 uint16_t instr = ReadU16(instr_ptr); local [all...] |
/art/compiler/utils/mips/ |
H A D | assembler_mips_test.cc | 395 std::ostringstream instr; local 396 instr << "ins $" << *reg1 << ", $" << *reg2 << ", " << pos << ", " << size << "\n"; 397 expected += instr.str(); 414 std::ostringstream instr; local 415 instr << "ext $" << *reg1 << ", $" << *reg2 << ", " << pos << ", " << size << "\n"; 416 expected += instr.str();
|
/art/runtime/arch/arm/ |
H A D | fault_handler_arm.cc | 43 uint16_t instr = pc[0] | pc[1] << 8; local 44 bool is_32bit = ((instr & 0xF000) == 0xF000) || ((instr & 0xF800) == 0xE800);
|
/art/runtime/ |
H A D | instrumentation_test.cc | 154 instrumentation::Instrumentation* instr = Runtime::Current()->GetInstrumentation(); local 160 instr->ConfigureStubs(key, level); 174 instrumentation::Instrumentation* instr = Runtime::Current()->GetInstrumentation(); local 179 instr->AddListener(&listener, instrumentation_event); 187 EXPECT_TRUE(HasEventListener(instr, instrumentation_event)); 189 ReportEvent(instr, instrumentation_event, soa.Self(), event_method, event_obj, event_dex_pc); 196 instr->RemoveListener(&listener, instrumentation_event); 200 EXPECT_FALSE(HasEventListener(instr, instrumentation_event)); 202 ReportEvent(instr, instrumentation_event, soa.Self(), event_method, event_obj, event_dex_pc); 292 static bool HasEventListener(const instrumentation::Instrumentation* instr, uint32_ 395 instrumentation::Instrumentation* instr = Runtime::Current()->GetInstrumentation(); local 457 instrumentation::Instrumentation* instr = runtime->GetInstrumentation(); local 486 instrumentation::Instrumentation* instr = runtime->GetInstrumentation(); local 504 instrumentation::Instrumentation* instr = runtime->GetInstrumentation(); local 550 instrumentation::Instrumentation* instr = runtime->GetInstrumentation(); local 569 instrumentation::Instrumentation* instr = runtime->GetInstrumentation(); local [all...] |
H A D | common_throws.cc | 409 const Instruction* instr = Instruction::At(&code->insns_[throw_dex_pc]); local 410 switch (instr->Opcode()) { 412 ThrowNullPointerExceptionForMethodAccess(instr->VRegB_35c(), kDirect); 415 ThrowNullPointerExceptionForMethodAccess(instr->VRegB_3rc(), kDirect); 418 ThrowNullPointerExceptionForMethodAccess(instr->VRegB_35c(), kVirtual); 421 ThrowNullPointerExceptionForMethodAccess(instr->VRegB_3rc(), kVirtual); 424 ThrowNullPointerExceptionForMethodAccess(instr->VRegB_35c(), kInterface); 427 ThrowNullPointerExceptionForMethodAccess(instr->VRegB_3rc(), kInterface); 452 Runtime::Current()->GetClassLinker()->ResolveField(instr->VRegC_22c(), method, false); 484 Runtime::Current()->GetClassLinker()->ResolveField(instr [all...] |
H A D | debugger.cc | 2859 const Instruction* instr = Instruction::At(&code_item->insns_[location.dex_pc]); local 2860 CHECK_EQ(Instruction::MOVE_EXCEPTION, instr->Opcode());
|
H A D | class_linker.cc | 2785 instrumentation::Instrumentation* instr = runtime->GetInstrumentation(); local 2786 if (instr->InterpretOnly()) {
|
/art/runtime/interpreter/ |
H A D | interpreter.cc | 487 static bool IsStringInit(const Instruction* instr, ArtMethod* caller) 489 if (instr->Opcode() == Instruction::INVOKE_DIRECT || 490 instr->Opcode() == Instruction::INVOKE_DIRECT_RANGE) { 493 uint16_t callee_method_idx = (instr->Opcode() == Instruction::INVOKE_DIRECT_RANGE) ? 494 instr->VRegB_3rc() : instr->VRegB_35c(); 510 static int16_t GetReceiverRegisterForStringInit(const Instruction* instr) { argument 511 DCHECK(instr->Opcode() == Instruction::INVOKE_DIRECT_RANGE || 512 instr->Opcode() == Instruction::INVOKE_DIRECT); 513 return (instr 550 const Instruction* instr = Instruction::At(&code_item->insns_[dex_pc]); local [all...] |
/art/dexdump/ |
H A D | dexdump.cc | 640 const u2 instr = get2LE((const u1*) &insns[insnIdx]); local 641 if (instr == Instruction::kPackedSwitchSignature) { 643 } else if (instr == Instruction::kSparseSwitchSignature) { 645 } else if (instr == Instruction::kArrayDataSignature) {
|
/art/runtime/entrypoints/quick/ |
H A D | quick_trampoline_entrypoints.cc | 951 const Instruction* instr = Instruction::At(&code->insns_[dex_pc]); local 952 Instruction::Code instr_code = instr->Opcode(); 996 LOG(FATAL) << "Unexpected call into trampoline: " << instr->DumpString(nullptr); 999 called_method.dex_method_index = (is_range) ? instr->VRegB_3rc() : instr->VRegB_35c(); 2151 const Instruction* instr = Instruction::At(&code_item->insns_[dex_pc]); local 2152 Instruction::Code instr_code = instr->Opcode(); 2155 << "Unexpected call into interface trampoline: " << instr->DumpString(nullptr); 2158 dex_method_idx = instr->VRegB_35c(); 2161 dex_method_idx = instr [all...] |
/art/compiler/utils/arm/ |
H A D | assembler_thumb2.cc | 3384 int Thumb2Assembler::DecodeBranchOffset(int32_t instr) { argument 3386 if ((instr & B12) == B12) { 3387 uint32_t S = (instr >> 26) & 1; 3388 uint32_t J2 = (instr >> 11) & 1; 3389 uint32_t J1 = (instr >> 13) & 1; 3390 uint32_t imm10 = (instr >> 16) & 0x3FF; 3391 uint32_t imm11 = instr & 0x7FF; 3398 uint32_t S = (instr >> 26) & 1; 3399 uint32_t J2 = (instr >> 11) & 1; 3400 uint32_t J1 = (instr >> 1 [all...] |