Home
last modified time | relevance | path

Searched refs:HInvoke (Results 1 – 25 of 46) sorted by relevance

12

/art/compiler/optimizing/
Dinliner.h32 class HInvoke; variable
85 bool TryInline(HInvoke* invoke_instruction);
90 bool TryInlineAndReplace(HInvoke* invoke_instruction,
97 bool TryBuildAndInline(HInvoke* invoke_instruction,
104 bool TryBuildAndInlineHelper(HInvoke* invoke_instruction,
113 HInvoke* invoke_instruction,
127 bool TryPatternSubstitution(HInvoke* invoke_instruction,
143 bool IsInliningSupported(const HInvoke* invoke_instruction,
152 bool IsInliningEncouraged(const HInvoke* invoke_instruction,
163 HInvoke* invoke,
[all …]
Dintrinsics_x86_64.cc57 bool IntrinsicLocationsBuilderX86_64::TryDispatch(HInvoke* invoke) { in TryDispatch()
144 static void CreateFPToIntLocations(ArenaAllocator* allocator, HInvoke* invoke) { in CreateFPToIntLocations()
151 static void CreateIntToFPLocations(ArenaAllocator* allocator, HInvoke* invoke) { in CreateIntToFPLocations()
170 void IntrinsicLocationsBuilderX86_64::VisitDoubleDoubleToRawLongBits(HInvoke* invoke) { in VisitDoubleDoubleToRawLongBits()
173 void IntrinsicLocationsBuilderX86_64::VisitDoubleLongBitsToDouble(HInvoke* invoke) { in VisitDoubleLongBitsToDouble()
177 void IntrinsicCodeGeneratorX86_64::VisitDoubleDoubleToRawLongBits(HInvoke* invoke) { in VisitDoubleDoubleToRawLongBits()
180 void IntrinsicCodeGeneratorX86_64::VisitDoubleLongBitsToDouble(HInvoke* invoke) { in VisitDoubleLongBitsToDouble()
184 void IntrinsicLocationsBuilderX86_64::VisitFloatFloatToRawIntBits(HInvoke* invoke) { in VisitFloatFloatToRawIntBits()
187 void IntrinsicLocationsBuilderX86_64::VisitFloatIntBitsToFloat(HInvoke* invoke) { in VisitFloatIntBitsToFloat()
191 void IntrinsicCodeGeneratorX86_64::VisitFloatFloatToRawIntBits(HInvoke* invoke) { in VisitFloatFloatToRawIntBits()
[all …]
Dintrinsics_riscv64.cc92 bool IntrinsicLocationsBuilderRISCV64::TryDispatch(HInvoke* invoke) { in TryDispatch()
105 static void CreateFPToIntLocations(ArenaAllocator* allocator, HInvoke* invoke) { in CreateFPToIntLocations()
112 static void CreateIntToFPLocations(ArenaAllocator* allocator, HInvoke* invoke) { in CreateIntToFPLocations()
119 static void CreateFPToFPCallLocations(ArenaAllocator* allocator, HInvoke* invoke) { in CreateFPToFPCallLocations()
132 static void CreateFPFPToFPCallLocations(ArenaAllocator* allocator, HInvoke* invoke) { in CreateFPFPToFPCallLocations()
147 static void CreateFpFpFpToFpNoOverlapLocations(ArenaAllocator* allocator, HInvoke* invoke) { in CreateFpFpFpToFpNoOverlapLocations()
163 static void CreateFPToFPLocations(ArenaAllocator* allocator, HInvoke* invoke) { in CreateFPToFPLocations()
170 void IntrinsicLocationsBuilderRISCV64::VisitDoubleDoubleToRawLongBits(HInvoke* invoke) { in VisitDoubleDoubleToRawLongBits()
174 void IntrinsicCodeGeneratorRISCV64::VisitDoubleDoubleToRawLongBits(HInvoke* invoke) { in VisitDoubleDoubleToRawLongBits()
180 void IntrinsicLocationsBuilderRISCV64::VisitDoubleLongBitsToDouble(HInvoke* invoke) { in VisitDoubleLongBitsToDouble()
[all …]
Dintrinsics_arm64.cc163 bool IntrinsicLocationsBuilderARM64::TryDispatch(HInvoke* invoke) { in TryDispatch()
174 static void CreateFPToIntLocations(ArenaAllocator* allocator, HInvoke* invoke) { in CreateFPToIntLocations()
181 static void CreateIntToFPLocations(ArenaAllocator* allocator, HInvoke* invoke) { in CreateIntToFPLocations()
202 void IntrinsicLocationsBuilderARM64::VisitDoubleDoubleToRawLongBits(HInvoke* invoke) { in VisitDoubleDoubleToRawLongBits()
205 void IntrinsicLocationsBuilderARM64::VisitDoubleLongBitsToDouble(HInvoke* invoke) { in VisitDoubleLongBitsToDouble()
209 void IntrinsicCodeGeneratorARM64::VisitDoubleDoubleToRawLongBits(HInvoke* invoke) { in VisitDoubleDoubleToRawLongBits()
212 void IntrinsicCodeGeneratorARM64::VisitDoubleLongBitsToDouble(HInvoke* invoke) { in VisitDoubleLongBitsToDouble()
216 void IntrinsicLocationsBuilderARM64::VisitFloatFloatToRawIntBits(HInvoke* invoke) { in VisitFloatFloatToRawIntBits()
219 void IntrinsicLocationsBuilderARM64::VisitFloatIntBitsToFloat(HInvoke* invoke) { in VisitFloatIntBitsToFloat()
223 void IntrinsicCodeGeneratorARM64::VisitFloatFloatToRawIntBits(HInvoke* invoke) { in VisitFloatFloatToRawIntBits()
[all …]
Dintrinsics_x86.cc61 bool IntrinsicLocationsBuilderX86::TryDispatch(HInvoke* invoke) { in TryDispatch()
150 static void CreateFPToIntLocations(ArenaAllocator* allocator, HInvoke* invoke, bool is64bit) { in CreateFPToIntLocations()
160 static void CreateIntToFPLocations(ArenaAllocator* allocator, HInvoke* invoke, bool is64bit) { in CreateIntToFPLocations()
202 void IntrinsicLocationsBuilderX86::VisitDoubleDoubleToRawLongBits(HInvoke* invoke) { in VisitDoubleDoubleToRawLongBits()
205 void IntrinsicLocationsBuilderX86::VisitDoubleLongBitsToDouble(HInvoke* invoke) { in VisitDoubleLongBitsToDouble()
209 void IntrinsicCodeGeneratorX86::VisitDoubleDoubleToRawLongBits(HInvoke* invoke) { in VisitDoubleDoubleToRawLongBits()
212 void IntrinsicCodeGeneratorX86::VisitDoubleLongBitsToDouble(HInvoke* invoke) { in VisitDoubleLongBitsToDouble()
216 void IntrinsicLocationsBuilderX86::VisitFloatFloatToRawIntBits(HInvoke* invoke) { in VisitFloatFloatToRawIntBits()
219 void IntrinsicLocationsBuilderX86::VisitFloatIntBitsToFloat(HInvoke* invoke) { in VisitFloatIntBitsToFloat()
223 void IntrinsicCodeGeneratorX86::VisitFloatFloatToRawIntBits(HInvoke* invoke) { in VisitFloatFloatToRawIntBits()
[all …]
Dintrinsics_arm_vixl.cc155 bool IntrinsicLocationsBuilderARMVIXL::TryDispatch(HInvoke* invoke) { in TryDispatch()
164 static void CreateFPToIntLocations(ArenaAllocator* allocator, HInvoke* invoke) { in CreateFPToIntLocations()
171 static void CreateIntToFPLocations(ArenaAllocator* allocator, HInvoke* invoke) { in CreateIntToFPLocations()
198 void IntrinsicLocationsBuilderARMVIXL::VisitDoubleDoubleToRawLongBits(HInvoke* invoke) { in VisitDoubleDoubleToRawLongBits()
201 void IntrinsicLocationsBuilderARMVIXL::VisitDoubleLongBitsToDouble(HInvoke* invoke) { in VisitDoubleLongBitsToDouble()
205 void IntrinsicCodeGeneratorARMVIXL::VisitDoubleDoubleToRawLongBits(HInvoke* invoke) { in VisitDoubleDoubleToRawLongBits()
208 void IntrinsicCodeGeneratorARMVIXL::VisitDoubleLongBitsToDouble(HInvoke* invoke) { in VisitDoubleLongBitsToDouble()
212 void IntrinsicLocationsBuilderARMVIXL::VisitFloatFloatToRawIntBits(HInvoke* invoke) { in VisitFloatFloatToRawIntBits()
215 void IntrinsicLocationsBuilderARMVIXL::VisitFloatIntBitsToFloat(HInvoke* invoke) { in VisitFloatIntBitsToFloat()
219 void IntrinsicCodeGeneratorARMVIXL::VisitFloatFloatToRawIntBits(HInvoke* invoke) { in VisitFloatFloatToRawIntBits()
[all …]
Dintrinsics.h44 void Dispatch(HInvoke* invoke) { in Dispatch()
74 virtual void Visit##Name([[maybe_unused]] HInvoke* invoke) = 0;
78 static void MoveArguments(HInvoke* invoke, in ART_INTRINSICS_WITH_HINVOKE_LIST()
110 static void ComputeValueOfLocations(HInvoke* invoke,
147 HInvoke* invoke,
156 static void CreateReferenceGetReferentLocations(HInvoke* invoke, CodeGenerator* codegen);
157 static void CreateReferenceRefersToLocations(HInvoke* invoke, CodeGenerator* codegen);
200 explicit IntrinsicOptimizations(HInvoke* invoke) in IntrinsicOptimizations()
202 explicit IntrinsicOptimizations(const HInvoke& invoke) in IntrinsicOptimizations()
236 explicit StringEqualsOptimizations(HInvoke* invoke) : IntrinsicOptimizations(invoke) {} in StringEqualsOptimizations()
[all …]
Dintrinsics_utils.h49 explicit IntrinsicSlowPath(HInvoke* invoke) : TSlowPathCode(invoke), invoke_(invoke) { } in IntrinsicSlowPath()
99 HInvoke* const invoke_;
104 static inline size_t GetExpectedVarHandleCoordinatesCount(HInvoke *invoke) { in GetExpectedVarHandleCoordinatesCount()
113 static inline DataType::Type GetDataTypeFromShorty(HInvoke* invoke, uint32_t index) { in GetDataTypeFromShorty()
122 static inline bool IsVarHandleGetAndBitwiseOp(HInvoke* invoke) { in IsVarHandleGetAndBitwiseOp()
139 static inline bool IsVarHandleGetAndAdd(HInvoke* invoke) { in IsVarHandleGetAndAdd()
150 static inline bool IsVarHandleGet(HInvoke* invoke) { in IsVarHandleGet()
156 static inline bool IsUnsafeGetReference(HInvoke* invoke) { in IsUnsafeGetReference()
169 static inline bool IsUnsafeCASReference(HInvoke* invoke) { in IsUnsafeCASReference()
180 static inline bool IsUnsafeGetAndSetReference(HInvoke* invoke) { in IsUnsafeGetAndSetReference()
[all …]
Dprofiling_info_builder.h48 HInvoke* invoke);
49 static bool IsInlineCacheUseful(HInvoke* invoke, CodeGenerator* codegen);
51 const HInliner* inliner, const CompilerOptions& compiler_options, HInvoke* invoke)
58 void HandleInvoke(HInvoke* invoke);
Dintrinsics_riscv64.h44 void Visit##Name(HInvoke* invoke) override;
51 bool TryDispatch(HInvoke* invoke);
67 void Visit##Name(HInvoke* invoke);
75 void HandleValueOf(HInvoke* invoke,
Dintrinsics_arm_vixl.h39 void Visit ## Name(HInvoke* invoke) override;
46 bool TryDispatch(HInvoke* invoke);
64 void Visit ## Name(HInvoke* invoke) override;
72 void HandleValueOf(HInvoke* invoke,
Dintrinsics_x86_64.h42 void Visit ## Name(HInvoke* invoke) override;
49 bool TryDispatch(HInvoke* invoke);
65 void Visit ## Name(HInvoke* invoke) override;
74 void HandleValueOf(HInvoke* invoke,
Dintrinsics_x86.h42 void Visit ## Name(HInvoke* invoke) override;
49 bool TryDispatch(HInvoke* invoke);
65 void Visit ## Name(HInvoke* invoke) override;
74 void HandleValueOf(HInvoke* invoke,
Dintrinsics_arm64.h50 void Visit ## Name(HInvoke* invoke) override;
57 bool TryDispatch(HInvoke* invoke);
73 void Visit ## Name(HInvoke* invoke) override;
82 void HandleValueOf(HInvoke* invoke,
Dprofiling_info_builder.cc47 HInvoke* invoke) { in EncodeInlinedDexPc()
64 static uint32_t EncodeDexPc(HInvoke* invoke, const CompilerOptions& compiler_options) { in EncodeDexPc()
81 void ProfilingInfoBuilder::HandleInvoke(HInvoke* invoke) { in HandleInvoke()
102 bool ProfilingInfoBuilder::IsInlineCacheUseful(HInvoke* invoke, CodeGenerator* codegen) { in IsInlineCacheUseful()
134 HInvoke* instruction) { in GetInlineCache()
Dconstant_folding.cc54 void VisitInvoke(HInvoke* inst) override;
60 void FoldReverseIntrinsic(HInvoke* invoke);
61 void FoldReverseBytesIntrinsic(HInvoke* invoke);
62 void FoldBitCountIntrinsic(HInvoke* invoke);
63 void FoldDivideUnsignedIntrinsic(HInvoke* invoke);
64 void FoldHighestOneBitIntrinsic(HInvoke* invoke);
65 void FoldLowestOneBitIntrinsic(HInvoke* invoke);
66 void FoldNumberOfLeadingZerosIntrinsic(HInvoke* invoke);
67 void FoldNumberOfTrailingZerosIntrinsic(HInvoke* invoke);
353 void HConstantFoldingVisitor::VisitInvoke(HInvoke* inst) { in VisitInvoke()
[all …]
Dintrinsics.cc68 static bool CanReferenceBootImageObjects(HInvoke* invoke, const CompilerOptions& compiler_options) { in CanReferenceBootImageObjects()
83 void IntrinsicVisitor::ComputeValueOfLocations(HInvoke* invoke, in ComputeValueOfLocations()
123 HInvoke* invoke, in ComputeValueOfInfo()
190 void IntrinsicVisitor::CreateReferenceGetReferentLocations(HInvoke* invoke, in CreateReferenceGetReferentLocations()
203 void IntrinsicVisitor::CreateReferenceRefersToLocations(HInvoke* invoke, CodeGenerator* codegen) { in CreateReferenceRefersToLocations()
Dssa_builder.h98 void AddUninitializedStringPhi(HInvoke* invoke) { in AddUninitializedStringPhi()
138 ScopedArenaVector<HInvoke*> uninitialized_string_phis_;
Dinliner.cc181 HInvoke* call = instruction->AsInvokeOrNull(); in Run()
241 static ArtMethod* FindVirtualOrInterfaceTarget(HInvoke* invoke, ReferenceTypeInfo info) in FindVirtualOrInterfaceTarget()
450 bool HInliner::TryInline(HInvoke* invoke_instruction) { in TryInline()
521 HInvoke* invoke_to_analyze = nullptr; in TryInline()
573 bool HInliner::TryInlineFromCHA(HInvoke* invoke_instruction) { in TryInlineFromCHA()
626 bool HInliner::TryInlineFromInlineCache(HInvoke* invoke_instruction) in TryInlineFromInlineCache()
690 HInvoke* invoke_instruction, in GetInlineCacheJIT()
734 HInvoke* invoke_instruction, in GetInlineCacheAOT()
817 HInvoke* invoke_instruction, in ResolveMethodFromInlineCache()
854 HInvoke* invoke_instruction, in TryInlineMonomorphicCall()
[all …]
Dinstruction_builder.h241 HInvoke* invoke);
255 bool HandleInvoke(HInvoke* invoke,
260 bool HandleStringInit(HInvoke* invoke,
Dinstruction_simplifier.cc115 void VisitInvoke(HInvoke* invoke) override;
118 void SimplifyBoxUnbox(HInvoke* instruction, ArtField* field, DataType::Type type);
119 void SimplifySystemArrayCopy(HInvoke* invoke);
120 void SimplifyStringEquals(HInvoke* invoke);
121 void SimplifyFP2Int(HInvoke* invoke);
122 void SimplifyStringCharAt(HInvoke* invoke);
123 void SimplifyStringLength(HInvoke* invoke);
124 void SimplifyStringIndexOf(HInvoke* invoke);
125 void SimplifyNPEOnArgN(HInvoke* invoke, size_t);
126 void SimplifyReturnThis(HInvoke* invoke);
[all …]
Dcode_generator_x86_64.h238 void HandleInvoke(HInvoke* invoke);
526 void LoadMethod(MethodLoadKind load_kind, Location temp, HInvoke* invoke);
534 void RecordBootImageMethodPatch(HInvoke* invoke);
535 void RecordMethodBssEntryPatch(HInvoke* invoke);
551 void LoadIntrinsicDeclaringClass(CpuRegister reg, HInvoke* invoke);
Dcode_generator_x86.h243 void HandleInvoke(HInvoke* invoke);
529 void LoadMethod(MethodLoadKind load_kind, Location temp, HInvoke* invoke);
541 void RecordBootImageMethodPatch(HInvoke* invoke);
542 void RecordMethodBssEntryPatch(HInvoke* invoke);
764 Register GetInvokeExtraParameter(HInvoke* invoke, Register temp);
Dcode_generator.h288 bool IsImplementedIntrinsic(HInvoke* invoke) const { in IsImplementedIntrinsic()
598 HInvoke* invoke, InvokeDexCallingConventionVisitor* visitor);
663 static uint32_t GetBootImageOffset(HInvoke* invoke);
665 static uint32_t GetBootImageOffsetOfIntrinsicDeclaringClass(HInvoke* invoke);
668 HInvoke* invoke, int32_t length_threshold = -1, size_t num_temps = 3);
Dgraph_checker.h72 void VisitInvoke(HInvoke* invoke) override;

12