Lines Matching refs:graph
55 HBasicBlock::HBasicBlock(HGraph* graph)
56 : block_id_(graph->GetNextBlockID()),
57 graph_(graph),
437 // Checks reachability of the blocks in this graph and stores a bit in
439 // from the start block of the graph. If "dont_visit" is non-null, the given
440 // block is treated as if it would not be part of the graph. "visited_count()"
536 // Check that the graph is fully connected.
982 explicit HRangeAnalysis(HGraph* graph) :
983 graph_(graph), zone_(graph->isolate()->zone()), changed_ranges_(16) { }
1326 explicit HStackCheckEliminator(HGraph* graph) : graph_(graph) { }
1408 explicit HGlobalValueNumberer(HGraph* graph, CompilationInfo* info)
1409 : graph_(graph),
1412 block_side_effects_(graph->blocks()->length()),
1413 loop_side_effects_(graph->blocks()->length()),
1414 visited_on_paths_(graph->zone(), graph->blocks()->length()) {
1441 HGraph* graph() { return graph_; }
1728 explicit HInferRepresentation(HGraph* graph)
1729 : graph_(graph),
1731 in_worklist_(graph->GetMaximumValueID(), graph->zone()) { }
2185 HBasicBlock* if_true = owner->graph()->CreateBasicBlock();
2186 HBasicBlock* if_false = owner->graph()->CreateBasicBlock();
2194 function_return_ = owner->graph()->CreateBasicBlock();
2277 HBasicBlock* empty_true = owner()->graph()->CreateBasicBlock();
2278 HBasicBlock* empty_false = owner()->graph()->CreateBasicBlock();
2303 HBasicBlock* materialize_false = owner()->graph()->CreateBasicBlock();
2304 HBasicBlock* materialize_true = owner()->graph()->CreateBasicBlock();
2309 owner()->Push(owner()->graph()->GetConstantTrue());
2311 owner()->Push(owner()->graph()->GetConstantFalse());
2335 HBasicBlock* empty_true = owner()->graph()->CreateBasicBlock();
2336 HBasicBlock* empty_false = owner()->graph()->CreateBasicBlock();
2347 // We expect the graph to be in edge-split form: there is no edge that
2355 HBasicBlock* empty_true = builder->graph()->CreateBasicBlock();
2356 HBasicBlock* empty_false = builder->graph()->CreateBasicBlock();
2450 current_block_ = graph()->entry_block();
2463 // Add an edge to the body entry. This is warty: the graph's start
2465 // environment on graph entry, but it has now been mutated by the
2500 HReturn* instr = new(zone()) HReturn(graph()->GetConstantUndefined());
2506 graph()->OrderBlocks();
2507 graph()->AssignDominators();
2510 // Do a full verify after building the graph and computing dominators.
2511 graph()->Verify(true);
2514 graph()->PropagateDeoptimizingMark();
2515 if (!graph()->CheckConstPhiUses()) {
2519 graph()->EliminateRedundantPhis();
2520 if (!graph()->CheckArgumentsPhiUses()) {
2524 if (FLAG_eliminate_dead_phis) graph()->EliminateUnreachablePhis();
2525 graph()->CollectPhis();
2527 if (graph()->has_osr_loop_entry()) {
2528 const ZoneList<HPhi*>* phis = graph()->osr_loop_entry()->phis();
2531 graph()->osr_values()->at(phi->merged_index())->set_incoming_value(phi);
2535 HInferRepresentation rep(graph());
2538 graph()->MarkDeoptimizeOnUndefined();
2539 graph()->InsertRepresentationChanges();
2541 graph()->InitializeInferredTypes();
2542 graph()->Canonicalize();
2546 HPhase phase("H_Global value numbering", graph());
2547 HGlobalValueNumberer gvn(graph(), info());
2559 HRangeAnalysis rangeAnalysis(graph());
2562 graph()->ComputeMinusZeroChecks();
2565 HStackCheckEliminator sce(graph());
2572 graph()->ReplaceCheckedValues();
2574 return graph();
2642 graph()->SetArgumentsObject(object);
2672 graph()->GetArgumentsObject());
2685 HBasicBlock* b = graph()->CreateBasicBlock();
2692 HBasicBlock* header = graph()->CreateBasicBlock();
2746 HBasicBlock* cond_true = graph()->CreateBasicBlock();
2747 HBasicBlock* cond_false = graph()->CreateBasicBlock();
2795 block = current->owner()->graph()->CreateBasicBlock();
2803 block = current->owner()->graph()->CreateBasicBlock();
2871 HBasicBlock* if_spec_object = graph()->CreateBasicBlock();
2872 HBasicBlock* not_spec_object = graph()->CreateBasicBlock();
2964 first_test_block = graph()->CreateBasicBlock();
2965 not_string_block = graph()->CreateBasicBlock();
2990 HBasicBlock* next_test_block = graph()->CreateBasicBlock();
2991 HBasicBlock* body_block = graph()->CreateBasicBlock();
3110 HBasicBlock* non_osr_entry = graph()->CreateBasicBlock();
3111 HBasicBlock* osr_entry = graph()->CreateBasicBlock();
3112 HValue* true_value = graph()->GetConstantTrue();
3116 HBasicBlock* loop_predecessor = graph()->CreateBasicBlock();
3143 graph()->set_osr_values(osr_values);
3181 if (osr_entry) graph()->set_osr_loop_entry(loop_entry);
3192 body_exit = graph()->CreateBasicBlock();
3193 loop_successor = graph()->CreateBasicBlock();
3224 if (osr_entry) graph()->set_osr_loop_entry(loop_entry);
3230 HBasicBlock* body_entry = graph()->CreateBasicBlock();
3231 loop_successor = graph()->CreateBasicBlock();
3271 if (osr_entry) graph()->set_osr_loop_entry(loop_entry);
3275 HBasicBlock* body_entry = graph()->CreateBasicBlock();
3276 loop_successor = graph()->CreateBasicBlock();
3367 if (osr_entry) graph()->set_osr_loop_entry(loop_entry);
3377 HBasicBlock* loop_body = graph()->CreateBasicBlock();
3378 HBasicBlock* loop_successor = graph()->CreateBasicBlock();
3415 graph()->GetConstant1());
3507 HBasicBlock* cond_true = graph()->CreateBasicBlock();
3508 HBasicBlock* cond_false = graph()->CreateBasicBlock();
3624 if (value == graph()->GetConstantHole()) {
3671 // size of all objects that are part of the graph.
4047 join = graph()->CreateBasicBlock();
4050 HBasicBlock* if_true = graph()->CreateBasicBlock();
4051 HBasicBlock* if_false = graph()->CreateBasicBlock();
4414 if (env_value == graph()->GetConstantHole()) {
4770 HBasicBlock* join = graph()->CreateBasicBlock();
4804 HBasicBlock* if_true = graph()->CreateBasicBlock();
4805 HBasicBlock* if_false = graph()->CreateBasicBlock();
4830 HBasicBlock* if_jsarray = graph()->CreateBasicBlock();
4831 HBasicBlock* if_fastobject = graph()->CreateBasicBlock();
4958 Push(graph()->GetArgumentsObject());
5091 join = graph()->CreateBasicBlock();
5094 HBasicBlock* if_true = graph()->CreateBasicBlock();
5095 HBasicBlock* if_false = graph()->CreateBasicBlock();
5357 HConstant* undefined = graph()->GetConstantUndefined();
5388 graph()->GetArgumentsObject());
5395 TraceInline(target, caller, "inline graph construction failed");
5677 HBasicBlock* return_left = graph()->CreateBasicBlock();
5678 HBasicBlock* return_right = graph()->CreateBasicBlock();
5695 HBasicBlock* left_is_number = graph()->CreateBasicBlock();
5696 HBasicBlock* left_is_nan = graph()->CreateBasicBlock();
6165 ? graph()->GetConstantTrue()
6166 : graph()->GetConstantFalse();
6175 return ast_context()->ReturnValue(graph()->GetConstantTrue());
6182 return ast_context()->ReturnValue(graph()->GetConstantUndefined());
6252 HBasicBlock* materialize_false = graph()->CreateBasicBlock();
6253 HBasicBlock* materialize_true = graph()->CreateBasicBlock();
6261 Push(graph()->GetConstantFalse());
6269 Push(graph()->GetConstantTrue());
6599 HBasicBlock* eval_right = graph()->CreateBasicBlock();
6623 HBasicBlock* empty_block = graph()->CreateBasicBlock();
6624 HBasicBlock* eval_right = graph()->CreateBasicBlock();
6646 HBasicBlock* empty_block = graph()->CreateBasicBlock();
6647 HBasicBlock* right_block = graph()->CreateBasicBlock();
6836 Factory* f = graph()->isolate()->factory();
7050 value = graph()->GetConstantHole();
7212 // We are generating graph for inlined function.
7214 ? graph()->GetConstantTrue()
7215 : graph()->GetConstantFalse();
7289 HBasicBlock* if_smi = graph()->CreateBasicBlock();
7290 HBasicBlock* if_heap_object = graph()->CreateBasicBlock();
7291 HBasicBlock* join = graph()->CreateBasicBlock();
7301 HBasicBlock* if_js_value = graph()->CreateBasicBlock();
7302 HBasicBlock* not_js_value = graph()->CreateBasicBlock();
7379 return ast_context()->ReturnValue(graph()->GetConstantUndefined());
7485 HBasicBlock* if_jsfunction = graph()->CreateBasicBlock();
7486 HBasicBlock* if_nonfunction = graph()->CreateBasicBlock();
7487 HBasicBlock* join = graph()->CreateBasicBlock();
7883 Trace(name, chunk->graph(), chunk);
7887 void HTracer::TraceHydrogen(const char* name, HGraph* graph) {
7888 Trace(name, graph, NULL);
7892 void HTracer::Trace(const char* name, HGraph* graph, LChunk* chunk) {
7895 const ZoneList<HBasicBlock*>* blocks = graph->blocks();
8152 HGraph* graph,
8156 graph_ = graph;