Lines Matching defs:builder

756 HGraphBuilder::IfBuilder::IfBuilder(HGraphBuilder* builder)
758 Initialize(builder);
762 HGraphBuilder::IfBuilder::IfBuilder(HGraphBuilder* builder,
765 InitializeDontCreateBlocks(builder);
771 HGraphBuilder* builder) {
772 builder_ = builder;
788 void HGraphBuilder::IfBuilder::Initialize(HGraphBuilder* builder) {
789 InitializeDontCreateBlocks(builder);
790 HEnvironment* env = builder->environment();
791 first_true_block_ = builder->CreateBasicBlock(env->Copy());
792 first_false_block_ = builder->CreateBasicBlock(env->Copy());
808 HEnvironment* env = builder()->environment();
809 first_true_block_ = builder()->CreateBasicBlock(env->Copy());
810 first_false_block_ = builder()->CreateBasicBlock(env->Copy());
814 HBasicBlock* split_edge = builder()->CreateBasicBlock(env->Copy());
822 builder()->GotoNoSimulate(split_edge, split_edge_merge_block_);
827 builder()->FinishCurrentBlock(compare);
839 split_edge_merge_block_ = builder()->CreateBasicBlock(env->Copy());
840 builder()->GotoNoSimulate(first_true_block_, split_edge_merge_block_);
843 builder()->set_current_block(first_false_block_);
844 first_false_block_ = builder()->CreateBasicBlock(env->Copy());
854 split_edge_merge_block_ = builder()->CreateBasicBlock(env->Copy());
855 builder()->GotoNoSimulate(first_false_block_, split_edge_merge_block_);
858 builder()->set_current_block(first_true_block_);
859 first_true_block_ = builder()->CreateBasicBlock(env->Copy());
876 builder()->set_current_block(NULL);
891 builder()->GotoNoSimulate(true_block, continuation->true_branch());
895 builder()->GotoNoSimulate(false_block, continuation->false_branch());
909 // so that the graph builder visits it and sees any live range extending
911 HConstant* constant_false = builder()->graph()->GetConstantFalse();
914 HBranch* branch = builder()->New<HBranch>(
916 builder()->FinishCurrentBlock(branch);
918 builder()->set_current_block(first_true_block_);
928 builder()->set_current_block(first_false_block_);
936 builder()->Add<HDeoptimize>(reason, Deoptimizer::EAGER);
942 HValue* parameter_count = builder()->graph()->GetConstantMinus1();
943 builder()->FinishExitCurrentBlock(
944 builder()->New<HReturn>(value, parameter_count));
951 HBasicBlock* block = builder()->current_block();
953 MergeAtJoinBlock* record = new (builder()->zone())
964 builder()->set_current_block(NULL);
1007 total_merged_blocks == 1 ? NULL : builder()->graph()->CreateBasicBlock();
1018 builder()->set_current_block(current->block_);
1021 builder()->GotoNoSimulate(current->block_, merge_block);
1030 current->block_->FinishExit(HAbnormalExit::New(builder()->zone(), NULL),
1035 builder()->set_current_block(merge_block);
1039 HGraphBuilder::LoopBuilder::LoopBuilder(HGraphBuilder* builder) {
1040 Initialize(builder, NULL, kWhileTrue, NULL);
1044 HGraphBuilder::LoopBuilder::LoopBuilder(HGraphBuilder* builder, HValue* context,
1046 Initialize(builder, context, direction, builder->graph()->GetConstant1());
1050 HGraphBuilder::LoopBuilder::LoopBuilder(HGraphBuilder* builder, HValue* context,
1053 Initialize(builder, context, direction, increment_amount);
1058 void HGraphBuilder::LoopBuilder::Initialize(HGraphBuilder* builder,
1062 builder_ = builder;
1068 header_block_ = builder->CreateLoopHeaderBlock();
1606 IfBuilder builder(this);
1607 builder.If<HCompareObjectEqAndBranch>(properties_map, hash_map);
1608 builder.CaptureContinuation(continuation);
2808 LoopBuilder builder(this, context(), LoopBuilder::kPostDecrement);
2810 HValue* key = builder.BeginBody(to, from, Token::GT);
2817 builder.EndBody();
2886 LoopBuilder builder(this, context(), LoopBuilder::kPostDecrement);
2888 HValue* key = builder.BeginBody(length, graph()->GetConstant0(),
2921 builder.EndBody();
3141 HGraphBuilder::JSArrayBuilder::JSArrayBuilder(HGraphBuilder* builder,
3146 builder_(builder),
3159 HGraphBuilder::JSArrayBuilder::JSArrayBuilder(HGraphBuilder* builder,
3162 builder_(builder),
3171 if (!builder()->top_info()->IsStub()) {
3173 Handle<Map> map(builder()->isolate()->get_initial_js_array_map(kind_),
3174 builder()->isolate());
3175 return builder()->Add<HConstant>(map);
3182 return builder()->Add<HLoadNamedField>(
3189 ? builder()->BuildGetNativeContext(constructor_function_)
3190 : builder()->BuildGetNativeContext();
3192 HInstruction* index = builder()->Add<HConstant>(
3195 HInstruction* map_array = builder()->Add<HLoadKeyed>(
3198 HInstruction* kind_index = builder()->Add<HConstant>(kind_);
3200 return builder()->Add<HLoadKeyed>(
3208 return builder()->Add<HLoadNamedField>(
3214 HConstant* capacity = builder()->Add<HConstant>(initial_capacity());
3217 builder()->graph()->GetConstant0());
3240 : builder()->EstablishElementsAllocationSize(kind_, capacity_upper_bound);
3258 builder()->AddUncasted<HForceRepresentation>(capacity,
3261 builder()->AddUncasted<HForceRepresentation>(length_field,
3267 builder()->BuildCalculateElementsSize(kind_, capacity);
3270 HAllocate* array_object = builder()->AllocateJSArrayObject(mode_);
3280 builder()->BuildJSArrayHeader(array_object,
3289 elements_location_ = builder()->BuildAllocateElements(kind_, elements_size);
3291 builder()->BuildInitializeElementsHeader(elements_location_, kind_, capacity);
3294 builder()->Add<HStoreNamedField>(
3298 builder()->BuildFillElementsWithHole(elements_location_, kind_,
4135 HOptimizedGraphBuilder* builder = owner();
4136 builder->AddInstruction(instr);
4140 builder->Push(instr);
4141 builder->Add<HSimulate>(ast_id, REMOVABLE_SIMULATE);
4142 builder->Pop();
4181 HOptimizedGraphBuilder* builder = owner();
4183 builder->Bailout(kArgumentsObjectValueInATestContext);
6501 IfBuilder builder(this);
6503 builder.If<HCompareNumericAndBranch>(value, c_constant, Token::EQ);
6505 builder.If<HCompareObjectEqAndBranch>(value, c_constant);
6507 builder.Then();
6508 builder.Else();
6511 builder.End();
9573 LoopBuilder builder(this, context(), LoopBuilder::kPostIncrement);
9575 HValue* key = builder.BeginBody(
9580 builder.EndBody();