Lines Matching refs:graph_
140 } else if (graph_->IsDebuggable()) { in Run()
151 DCHECK(!graph_->HasAlwaysThrowingInvokes()); in Run()
155 if (outermost_graph_ == graph_) { in Run()
156 total_number_of_instructions_ = CountNumberOfInstructions(graph_); in Run()
175 ArenaVector<HBasicBlock*> blocks = graph_->GetReversePostOrder(); in Run()
213 return did_inline || graph_->HasAlwaysThrowingInvokes(); in Run()
488 if (outermost_graph_ == graph_) { in TryInline()
503 graph_->SetHasAlwaysThrowingInvokes(/* value= */ true); in TryInline()
655 ArtMethod* caller = graph_->GetArtMethod(); in GetInlineCacheJIT()
658 ProfilingInfo* profiling_info = graph_->GetProfilingInfo(); in GetInlineCacheJIT()
729 HInstanceFieldGet* result = new (graph_->GetAllocator()) HInstanceFieldGet( in BuildGetReceiverClass()
800 graph_->GetHandleCache()->NewHandle(GetMonomorphicType(classes)); in TryInlineMonomorphicCall()
832 ReferenceTypePropagation rtp_fixup(graph_, in TryInlineMonomorphicCall()
845 HShouldDeoptimizeFlag* deopt_flag = new (graph_->GetAllocator()) in AddCHAGuard()
846 HShouldDeoptimizeFlag(graph_->GetAllocator(), dex_pc); in AddCHAGuard()
852 HInstruction* compare = new (graph_->GetAllocator()) HNotEqual( in AddCHAGuard()
853 deopt_flag, graph_->GetIntConstant(0, dex_pc)); in AddCHAGuard()
854 HInstruction* deopt = new (graph_->GetAllocator()) HDeoptimize( in AddCHAGuard()
855 graph_->GetAllocator(), compare, DeoptimizationKind::kCHA, dex_pc); in AddCHAGuard()
903 HLoadClass* load_class = new (graph_->GetAllocator()) HLoadClass(graph_->GetCurrentMethod(), in AddTypeGuard()
925 HNotEqual* compare = new (graph_->GetAllocator()) HNotEqual(load_class, receiver_class); in AddTypeGuard()
928 HDeoptimize* deoptimize = new (graph_->GetAllocator()) HDeoptimize( in AddTypeGuard()
929 graph_->GetAllocator(), in AddTypeGuard()
973 graph_->GetHandleCache()->NewHandle(classes.GetReference(i)->AsClass()); in TryInlinePolymorphicCall()
1054 ReferenceTypePropagation rtp_fixup(graph_, in TryInlinePolymorphicCall()
1067 ArenaAllocator* allocator = graph_->GetAllocator(); in CreateDiamondPatternForPolymorphicInline()
1098 graph_->AddBlock(then); in CreateDiamondPatternForPolymorphicInline()
1099 graph_->AddBlock(otherwise); in CreateDiamondPatternForPolymorphicInline()
1100 graph_->AddBlock(merge); in CreateDiamondPatternForPolymorphicInline()
1117 size_t index = IndexOfElement(graph_->reverse_post_order_, cursor_block); in CreateDiamondPatternForPolymorphicInline()
1118 MakeRoomFor(&graph_->reverse_post_order_, 1, index); in CreateDiamondPatternForPolymorphicInline()
1119 graph_->reverse_post_order_[++index] = then; in CreateDiamondPatternForPolymorphicInline()
1120 index = IndexOfElement(graph_->reverse_post_order_, end_then); in CreateDiamondPatternForPolymorphicInline()
1121 MakeRoomFor(&graph_->reverse_post_order_, 2, index); in CreateDiamondPatternForPolymorphicInline()
1122 graph_->reverse_post_order_[++index] = otherwise; in CreateDiamondPatternForPolymorphicInline()
1123 graph_->reverse_post_order_[++index] = merge; in CreateDiamondPatternForPolymorphicInline()
1126 graph_->UpdateLoopAndTryInformationOfNewBlock( in CreateDiamondPatternForPolymorphicInline()
1128 graph_->UpdateLoopAndTryInformationOfNewBlock( in CreateDiamondPatternForPolymorphicInline()
1133 graph_->UpdateLoopAndTryInformationOfNewBlock( in CreateDiamondPatternForPolymorphicInline()
1199 DataType::Type type = Is64BitInstructionSet(graph_->GetInstructionSet()) in TryInlinePolymorphicCallToSameTarget()
1202 HClassTableGet* class_table_get = new (graph_->GetAllocator()) HClassTableGet( in TryInlinePolymorphicCallToSameTarget()
1212 constant = graph_->GetLongConstant( in TryInlinePolymorphicCallToSameTarget()
1215 constant = graph_->GetIntConstant( in TryInlinePolymorphicCallToSameTarget()
1219 HNotEqual* compare = new (graph_->GetAllocator()) HNotEqual(class_table_get, constant); in TryInlinePolymorphicCallToSameTarget()
1231 HDeoptimize* deoptimize = new (graph_->GetAllocator()) HDeoptimize( in TryInlinePolymorphicCallToSameTarget()
1232 graph_->GetAllocator(), in TryInlinePolymorphicCallToSameTarget()
1245 ReferenceTypePropagation rtp_fixup(graph_, in TryInlinePolymorphicCallToSameTarget()
1261 ReferenceTypePropagation(graph_, in MaybeRunReferenceTypePropagation()
1314 HInvokeStaticOrDirect* new_invoke = new (graph_->GetAllocator()) HInvokeStaticOrDirect( in TryDevirtualize()
1315 graph_->GetAllocator(), in TryDevirtualize()
1325 !graph_->IsDebuggable()); in TryDevirtualize()
1333 graph_->GetCurrentMethod()); in TryDevirtualize()
1375 if (current->graph_->GetArtMethod() == method) { in CountRecursiveCallsOf()
1523 HInvokeVirtual* new_invoke = new (graph_->GetAllocator()) HInvokeVirtual( in TryBuildAndInline()
1524 graph_->GetAllocator(), in TryBuildAndInline()
1532 !graph_->IsDebuggable()); in TryBuildAndInline()
1587 if (outermost_graph_ == graph_) { in TryBuildAndInline()
1630 *return_replacement = graph_->GetNullConstant(); in TryPatternSubstitution()
1632 *return_replacement = graph_->GetFloatConstant( in TryPatternSubstitution()
1635 *return_replacement = graph_->GetIntConstant(static_cast<int32_t>(inline_method.d.data)); in TryPatternSubstitution()
1718 new (graph_->GetAllocator()) HConstructorFence(obj, kNoDexPc, graph_->GetAllocator()); in TryPatternSubstitution()
1740 HInstanceFieldGet* iget = new (graph_->GetAllocator()) HInstanceFieldGet( in CreateInstanceFieldGet()
1755 graph_->GetHandleCache()->NewHandle(referrer->GetDexCache()); in CreateInstanceFieldGet()
1756 ReferenceTypePropagation rtp(graph_, in CreateInstanceFieldGet()
1779 HInstanceFieldSet* iput = new (graph_->GetAllocator()) HInstanceFieldSet( in CreateInstanceFieldSet()
1917 if (!last_instruction->IsThrow() && graph_->HasIrreducibleLoops()) { in CanInlineBody()
1930 if (graph_->GetExitBlock() == nullptr) { in CanInlineBody()
1937 } else if (graph_->HasIrreducibleLoops()) { in CanInlineBody()
1958 graph_->SetHasAlwaysThrowingInvokes(/* value= */ true); in CanInlineBody()
2073 graph_); in TryBuildAndInlineHelper()
2077 graph_); in TryBuildAndInlineHelper()
2080 graph_->GetHandleCache()->NewHandle(resolved_method->GetDeclaringClass()); in TryBuildAndInlineHelper()
2100 bool caller_dead_reference_safe = graph_->IsDeadReferenceSafe(); in TryBuildAndInlineHelper()
2108 const int32_t caller_instruction_counter = graph_->GetCurrentInstructionId(); in TryBuildAndInlineHelper()
2109 HGraph* callee_graph = new (graph_->GetAllocator()) HGraph( in TryBuildAndInlineHelper()
2110 graph_->GetAllocator(), in TryBuildAndInlineHelper()
2111 graph_->GetArenaStack(), in TryBuildAndInlineHelper()
2112 graph_->GetHandleCache()->GetHandles(), in TryBuildAndInlineHelper()
2118 graph_->IsDebuggable(), in TryBuildAndInlineHelper()
2119 graph_->GetCompilationKind(), in TryBuildAndInlineHelper()
2135 void* storage = graph_->GetAllocator()->Alloc<OptimizingCompilerStats>(kArenaAllocMisc); in TryBuildAndInlineHelper()
2172 DCHECK_EQ(caller_instruction_counter, graph_->GetCurrentInstructionId()) in TryBuildAndInlineHelper()
2177 graph_->SetCurrentInstructionId(callee_instruction_counter); in TryBuildAndInlineHelper()
2178 *return_replacement = callee_graph->InlineInto(graph_, invoke_instruction); in TryBuildAndInlineHelper()
2195 graph_->MarkDeadReferenceUnsafe(); in TryBuildAndInlineHelper()
2359 ? ReferenceTypeInfo::Create(graph_->GetHandleCache()->NewHandle(cls)) in FixUpReturnReferenceType()
2360 : graph_->GetInexactObjectRti(); in FixUpReturnReferenceType()