Home
last modified time | relevance | path

Searched refs:merge_block (Results 1 – 25 of 69) sorted by relevance

123

/external/deqp-deps/SPIRV-Tools/source/fuzz/
Dfuzzer_pass_merge_function_returns.cpp145 for (uint32_t merge_block : merge_blocks) { in Apply() local
146 opt::BasicBlock* block = GetIRContext()->get_instr_block(merge_block); in Apply()
151 ->get_instr_block(merge_block) in Apply()
157 actual_merge_blocks.emplace_back(merge_block); in Apply()
165 GetOrCreateSimpleLoopPreheader(merge_block)->id()); in Apply()
172 SplitBlockAfterOpPhiOrOpVariable(merge_block); in Apply()
173 actual_merge_blocks.emplace_back(merge_block); in Apply()
262 uint32_t merge_block = in GetMergeBlocksOfLoopsContainingBlocks() local
265 while (merge_block != 0 && !result.count(merge_block)) { in GetMergeBlocksOfLoopsContainingBlocks()
267 result.emplace(merge_block); in GetMergeBlocksOfLoopsContainingBlocks()
[all …]
Dtransformation_merge_function_returns.cpp103 uint32_t merge_block = in IsApplicable() local
106 while (merge_block != 0) { in IsApplicable()
109 if (merge_blocks_to_returning_preds.count(merge_block)) { in IsApplicable()
110 merge_blocks_to_returning_preds[merge_block].emplace(block); in IsApplicable()
116 merge_blocks_to_returning_preds.emplace(merge_block, in IsApplicable()
120 block = merge_block; in IsApplicable()
121 merge_block = in IsApplicable()
122 ir_context->GetStructuredCFGAnalysis()->LoopMergeBlock(merge_block); in IsApplicable()
129 uint32_t merge_block = merge_block_entry.first; in IsApplicable() local
131 ir_context->get_instr_block(merge_block) in IsApplicable()
[all …]
Dfuzzer_pass_add_dead_breaks.cpp43 auto merge_block = in Apply() local
46 assert(merge_block && "Merge block can't be null"); in Apply()
48 merge_blocks.push_back(merge_block); in Apply()
56 for (auto* merge_block : merge_blocks) { in Apply() local
68 if (!block.IsSuccessor(merge_block)) { in Apply()
69 merge_block->ForEachPhiInst([this, &phi_ids](opt::Instruction* phi) { in Apply()
88 block.id(), merge_block->id(), break_condition, std::move(phi_ids)); in Apply()
/external/swiftshader/third_party/SPIRV-Tools/source/fuzz/
Dfuzzer_pass_merge_function_returns.cpp145 for (uint32_t merge_block : merge_blocks) { in Apply() local
146 opt::BasicBlock* block = GetIRContext()->get_instr_block(merge_block); in Apply()
151 ->get_instr_block(merge_block) in Apply()
157 actual_merge_blocks.emplace_back(merge_block); in Apply()
165 GetOrCreateSimpleLoopPreheader(merge_block)->id()); in Apply()
172 SplitBlockAfterOpPhiOrOpVariable(merge_block); in Apply()
173 actual_merge_blocks.emplace_back(merge_block); in Apply()
262 uint32_t merge_block = in GetMergeBlocksOfLoopsContainingBlocks() local
265 while (merge_block != 0 && !result.count(merge_block)) { in GetMergeBlocksOfLoopsContainingBlocks()
267 result.emplace(merge_block); in GetMergeBlocksOfLoopsContainingBlocks()
[all …]
Dtransformation_merge_function_returns.cpp103 uint32_t merge_block = in IsApplicable() local
106 while (merge_block != 0) { in IsApplicable()
109 if (merge_blocks_to_returning_preds.count(merge_block)) { in IsApplicable()
110 merge_blocks_to_returning_preds[merge_block].emplace(block); in IsApplicable()
116 merge_blocks_to_returning_preds.emplace(merge_block, in IsApplicable()
120 block = merge_block; in IsApplicable()
121 merge_block = in IsApplicable()
122 ir_context->GetStructuredCFGAnalysis()->LoopMergeBlock(merge_block); in IsApplicable()
129 uint32_t merge_block = merge_block_entry.first; in IsApplicable() local
131 ir_context->get_instr_block(merge_block) in IsApplicable()
[all …]
Dfuzzer_pass_add_dead_breaks.cpp43 auto merge_block = in Apply() local
46 assert(merge_block && "Merge block can't be null"); in Apply()
48 merge_blocks.push_back(merge_block); in Apply()
56 for (auto* merge_block : merge_blocks) { in Apply() local
68 if (!block.IsSuccessor(merge_block)) { in Apply()
69 merge_block->ForEachPhiInst([this, &phi_ids](opt::Instruction* phi) { in Apply()
88 block.id(), merge_block->id(), break_condition, std::move(phi_ids)); in Apply()
Dtransformation_duplicate_region_with_selection.cpp168 auto merge_block = in IsApplicable() local
170 if (region_set.count(&block) != region_set.count(merge_block)) { in IsApplicable()
312 std::unique_ptr<opt::BasicBlock> merge_block = in Apply() local
500 merge_block->AddInstruction(MakeUnique<opt::Instruction>( in Apply()
522 &merge_block](opt::Instruction* user, uint32_t operand_index) { in Apply()
525 user_block == merge_block.get()) { in Apply()
560 merge_block->AddInstruction(std::unique_ptr<opt::Instruction>(cloned_instr)); in Apply()
607 opt::Instruction* merge_block_terminator = merge_block->terminator(); in Apply()
624 enclosing_function->InsertBasicBlockAfter(std::move(merge_block), in Apply()
/external/angle/third_party/vulkan-deps/spirv-tools/src/source/fuzz/
Dfuzzer_pass_merge_function_returns.cpp143 for (uint32_t merge_block : merge_blocks) { in Apply() local
144 opt::BasicBlock* block = GetIRContext()->get_instr_block(merge_block); in Apply()
149 ->get_instr_block(merge_block) in Apply()
155 actual_merge_blocks.emplace_back(merge_block); in Apply()
163 GetOrCreateSimpleLoopPreheader(merge_block)->id()); in Apply()
170 SplitBlockAfterOpPhiOrOpVariable(merge_block); in Apply()
171 actual_merge_blocks.emplace_back(merge_block); in Apply()
261 uint32_t merge_block = in GetMergeBlocksOfLoopsContainingBlocks() local
264 while (merge_block != 0 && !result.count(merge_block)) { in GetMergeBlocksOfLoopsContainingBlocks()
266 result.emplace(merge_block); in GetMergeBlocksOfLoopsContainingBlocks()
[all …]
Dfuzzer_pass_add_dead_breaks.cpp41 auto merge_block = in Apply() local
44 assert(merge_block && "Merge block can't be null"); in Apply()
46 merge_blocks.push_back(merge_block); in Apply()
54 for (auto* merge_block : merge_blocks) { in Apply() local
66 if (!block.IsSuccessor(merge_block)) { in Apply()
67 merge_block->ForEachPhiInst([this, &phi_ids](opt::Instruction* phi) { in Apply()
86 block.id(), merge_block->id(), break_condition, std::move(phi_ids)); in Apply()
Dtransformation_merge_function_returns.cpp107 uint32_t merge_block = in IsApplicable() local
110 while (merge_block != 0) { in IsApplicable()
113 if (merge_blocks_to_returning_preds.count(merge_block)) { in IsApplicable()
114 merge_blocks_to_returning_preds[merge_block].emplace(block); in IsApplicable()
120 merge_blocks_to_returning_preds.emplace(merge_block, in IsApplicable()
124 block = merge_block; in IsApplicable()
125 merge_block = in IsApplicable()
126 ir_context->GetStructuredCFGAnalysis()->LoopMergeBlock(merge_block); in IsApplicable()
133 uint32_t merge_block = merge_block_entry.first; in IsApplicable() local
135 ir_context->get_instr_block(merge_block) in IsApplicable()
[all …]
/external/llvm/test/Transforms/SimplifyCFG/
Dguards.ll36 br i1 %c, label %guard_block, label %merge_block
41 br label %merge_block
43 merge_block:
50 ; CHECK: merge_block:
58 br i1 %c0, label %guard_block, label %merge_block
66 merge_block:
71 %val.left = phi i32 [ %val, %guard_block ], [ 50, %merge_block ]
75 %val.right = phi i32 [ %val, %guard_block ], [ 100, %merge_block ]
82 ; CHECK: merge_block:
/external/llvm-project/llvm/test/Transforms/SimplifyCFG/
Dguards.ll47 ; CHECK: merge_block:
51 br i1 %c, label %guard_block, label %merge_block
56 br label %merge_block
58 merge_block:
72 ; CHECK: merge_block:
79 br i1 %c0, label %guard_block, label %merge_block
87 merge_block:
92 %val.left = phi i32 [ %val, %guard_block ], [ 50, %merge_block ]
96 %val.right = phi i32 [ %val, %guard_block ], [ 100, %merge_block ]
/external/angle/third_party/vulkan-deps/spirv-tools/src/source/reduce/
Dstructured_construct_to_block_reduction_opportunity.cpp26 auto merge_block = context_->cfg()->block(header_block->MergeBlockId()); in Apply() local
39 if (header_block != &*block_it && merge_block != &*block_it && in Apply()
41 postdominators->Dominates(merge_block, &*block_it)) { in Apply()
60 {{SPV_OPERAND_TYPE_ID, {merge_block->id()}}}); in Apply()
Dstructured_construct_to_block_reduction_opportunity_finder.cpp84 auto* merge_block = context->cfg()->block( in GetAvailableOpportunities() local
86 if (!context->IsReachable(*merge_block)) { in GetAvailableOpportunities()
91 assert(dominators->Dominates(&block, merge_block) && in GetAvailableOpportunities()
93 if (!postdominators->Dominates(merge_block, &block)) { in GetAvailableOpportunities()
/external/tensorflow/tensorflow/compiler/mlir/tensorflow/transforms/
Dfunctional_control_flow_to_cfg.cc147 Block* merge_block = orig_block->splitBlock(op); in LowerIfOp() local
152 merge_block->addArgument(value.getType()); in LowerIfOp()
153 ReplaceOpResultWithBlockArgs(loc, op_inst, merge_block, &builder); in LowerIfOp()
160 Block* then_block = builder.createBlock(merge_block); in LowerIfOp()
164 JumpToBlock(loc, get_then_result, merge_block, &builder); in LowerIfOp()
167 Block* else_block = builder.createBlock(merge_block); in LowerIfOp()
171 JumpToBlock(loc, get_else_result, merge_block, &builder); in LowerIfOp()
/external/angle/third_party/vulkan-deps/spirv-tools/src/source/opt/
Dmerge_return_pass.cpp265 void MergeReturnPass::CreatePhiNodesForInst(BasicBlock* merge_block, in CreatePhiNodesForInst() argument
268 context()->GetDominatorAnalysis(merge_block->GetParent()); in CreatePhiNodesForInst()
306 const std::set<uint32_t>& new_edges = new_edges_[merge_block]; in CreatePhiNodesForInst()
310 std::vector<uint32_t> preds = cfg()->preds(merge_block->id()); in CreatePhiNodesForInst()
343 Instruction* insert_pos = &*merge_block->begin(); in CreatePhiNodesForInst()
349 context()->set_instr_block(new_phi, merge_block); in CreatePhiNodesForInst()
351 new_phi->ForEachInId([dom_tree, merge_block, this](uint32_t* use_id) { in CreatePhiNodesForInst()
354 if (use_bb != nullptr && !dom_tree->Dominates(use_bb, merge_block)) { in CreatePhiNodesForInst()
355 CreatePhiNodesForInst(merge_block, *use); in CreatePhiNodesForInst()
360 context(), &*merge_block->begin(), in CreatePhiNodesForInst()
[all …]
/external/deqp-deps/SPIRV-Tools/source/opt/
Dmerge_return_pass.cpp265 void MergeReturnPass::CreatePhiNodesForInst(BasicBlock* merge_block, in CreatePhiNodesForInst() argument
268 context()->GetDominatorAnalysis(merge_block->GetParent()); in CreatePhiNodesForInst()
306 const std::set<uint32_t>& new_edges = new_edges_[merge_block]; in CreatePhiNodesForInst()
310 std::vector<uint32_t> preds = cfg()->preds(merge_block->id()); in CreatePhiNodesForInst()
343 Instruction* insert_pos = &*merge_block->begin(); in CreatePhiNodesForInst()
349 context()->set_instr_block(new_phi, merge_block); in CreatePhiNodesForInst()
351 new_phi->ForEachInId([dom_tree, merge_block, this](uint32_t* use_id) { in CreatePhiNodesForInst()
354 if (use_bb != nullptr && !dom_tree->Dominates(use_bb, merge_block)) { in CreatePhiNodesForInst()
355 CreatePhiNodesForInst(merge_block, *use); in CreatePhiNodesForInst()
360 context(), &*merge_block->begin(), in CreatePhiNodesForInst()
[all …]
/external/swiftshader/third_party/SPIRV-Tools/source/opt/
Dmerge_return_pass.cpp265 void MergeReturnPass::CreatePhiNodesForInst(BasicBlock* merge_block, in CreatePhiNodesForInst() argument
268 context()->GetDominatorAnalysis(merge_block->GetParent()); in CreatePhiNodesForInst()
306 const std::set<uint32_t>& new_edges = new_edges_[merge_block]; in CreatePhiNodesForInst()
310 std::vector<uint32_t> preds = cfg()->preds(merge_block->id()); in CreatePhiNodesForInst()
343 Instruction* insert_pos = &*merge_block->begin(); in CreatePhiNodesForInst()
349 context()->set_instr_block(new_phi, merge_block); in CreatePhiNodesForInst()
351 new_phi->ForEachInId([dom_tree, merge_block, this](uint32_t* use_id) { in CreatePhiNodesForInst()
354 if (use_bb != nullptr && !dom_tree->Dominates(use_bb, merge_block)) { in CreatePhiNodesForInst()
355 CreatePhiNodesForInst(merge_block, *use); in CreatePhiNodesForInst()
360 context(), &*merge_block->begin(), in CreatePhiNodesForInst()
[all …]
/external/angle/third_party/vulkan-deps/spirv-tools/src/source/val/
Dfunction.cpp72 BasicBlock& merge_block = blocks_.at(merge_id); in RegisterLoopMerge() local
78 merge_block.set_type(kBlockTypeMerge); in RegisterLoopMerge()
81 AddConstruct({ConstructType::kLoop, current_block_, &merge_block}); in RegisterLoopMerge()
87 merge_block_header_[&merge_block] = current_block_; in RegisterLoopMerge()
100 BasicBlock& merge_block = blocks_.at(merge_id); in RegisterSelectionMerge() local
102 merge_block.set_type(kBlockTypeMerge); in RegisterSelectionMerge()
103 merge_block_header_[&merge_block] = current_block_; in RegisterSelectionMerge()
105 AddConstruct({ConstructType::kSelection, current_block(), &merge_block}); in RegisterSelectionMerge()
/external/swiftshader/third_party/SPIRV-Tools/source/val/
Dfunction.cpp72 BasicBlock& merge_block = blocks_.at(merge_id); in RegisterLoopMerge() local
78 merge_block.set_type(kBlockTypeMerge); in RegisterLoopMerge()
81 AddConstruct({ConstructType::kLoop, current_block_, &merge_block}); in RegisterLoopMerge()
87 merge_block_header_[&merge_block] = current_block_; in RegisterLoopMerge()
100 BasicBlock& merge_block = blocks_.at(merge_id); in RegisterSelectionMerge() local
102 merge_block.set_type(kBlockTypeMerge); in RegisterSelectionMerge()
103 merge_block_header_[&merge_block] = current_block_; in RegisterSelectionMerge()
105 AddConstruct({ConstructType::kSelection, current_block(), &merge_block}); in RegisterSelectionMerge()
/external/deqp-deps/SPIRV-Tools/source/val/
Dfunction.cpp72 BasicBlock& merge_block = blocks_.at(merge_id); in RegisterLoopMerge() local
78 merge_block.set_type(kBlockTypeMerge); in RegisterLoopMerge()
81 AddConstruct({ConstructType::kLoop, current_block_, &merge_block}); in RegisterLoopMerge()
87 merge_block_header_[&merge_block] = current_block_; in RegisterLoopMerge()
100 BasicBlock& merge_block = blocks_.at(merge_id); in RegisterSelectionMerge() local
102 merge_block.set_type(kBlockTypeMerge); in RegisterSelectionMerge()
103 merge_block_header_[&merge_block] = current_block_; in RegisterSelectionMerge()
105 AddConstruct({ConstructType::kSelection, current_block(), &merge_block}); in RegisterSelectionMerge()
/external/mesa3d/src/gallium/auxiliary/gallivm/
Dlp_bld_flow.c413 ifthen->merge_block = lp_build_insert_new_block(gallivm, "endif-block"); in lp_build_if()
418 ifthen->merge_block, in lp_build_if()
435 LLVMBuildBr(builder, ifthen->merge_block); in lp_build_else()
440 ifthen->merge_block, in lp_build_else()
457 LLVMBuildBr(builder, ifthen->merge_block); in lp_build_endif()
473 ifthen->true_block, ifthen->merge_block); in lp_build_endif()
477 LLVMPositionBuilderAtEnd(builder, ifthen->merge_block); in lp_build_endif()
/external/deqp-deps/SPIRV-Tools/test/fuzz/
Dtransformation_add_dead_break_test.cpp108 const uint32_t merge_block = 16; in TEST() local
111 ASSERT_TRUE(TransformationAddDeadBreak(15, merge_block, true, {}) in TEST()
113 ASSERT_TRUE(TransformationAddDeadBreak(15, merge_block, false, {}) in TEST()
115 ASSERT_TRUE(TransformationAddDeadBreak(21, merge_block, true, {}) in TEST()
117 ASSERT_TRUE(TransformationAddDeadBreak(21, merge_block, false, {}) in TEST()
119 ASSERT_TRUE(TransformationAddDeadBreak(22, merge_block, true, {}) in TEST()
121 ASSERT_TRUE(TransformationAddDeadBreak(22, merge_block, false, {}) in TEST()
123 ASSERT_TRUE(TransformationAddDeadBreak(19, merge_block, true, {}) in TEST()
125 ASSERT_TRUE(TransformationAddDeadBreak(19, merge_block, false, {}) in TEST()
127 ASSERT_TRUE(TransformationAddDeadBreak(23, merge_block, true, {}) in TEST()
[all …]
/external/swiftshader/third_party/SPIRV-Tools/test/fuzz/
Dtransformation_add_dead_break_test.cpp108 const uint32_t merge_block = 16; in TEST() local
111 ASSERT_TRUE(TransformationAddDeadBreak(15, merge_block, true, {}) in TEST()
113 ASSERT_TRUE(TransformationAddDeadBreak(15, merge_block, false, {}) in TEST()
115 ASSERT_TRUE(TransformationAddDeadBreak(21, merge_block, true, {}) in TEST()
117 ASSERT_TRUE(TransformationAddDeadBreak(21, merge_block, false, {}) in TEST()
119 ASSERT_TRUE(TransformationAddDeadBreak(22, merge_block, true, {}) in TEST()
121 ASSERT_TRUE(TransformationAddDeadBreak(22, merge_block, false, {}) in TEST()
123 ASSERT_TRUE(TransformationAddDeadBreak(19, merge_block, true, {}) in TEST()
125 ASSERT_TRUE(TransformationAddDeadBreak(19, merge_block, false, {}) in TEST()
127 ASSERT_TRUE(TransformationAddDeadBreak(23, merge_block, true, {}) in TEST()
[all …]
/external/angle/third_party/vulkan-deps/spirv-tools/src/test/fuzz/
Dtransformation_add_dead_break_test.cpp108 const uint32_t merge_block = 16; in TEST() local
111 ASSERT_TRUE(TransformationAddDeadBreak(15, merge_block, true, {}) in TEST()
113 ASSERT_TRUE(TransformationAddDeadBreak(15, merge_block, false, {}) in TEST()
115 ASSERT_TRUE(TransformationAddDeadBreak(21, merge_block, true, {}) in TEST()
117 ASSERT_TRUE(TransformationAddDeadBreak(21, merge_block, false, {}) in TEST()
119 ASSERT_TRUE(TransformationAddDeadBreak(22, merge_block, true, {}) in TEST()
121 ASSERT_TRUE(TransformationAddDeadBreak(22, merge_block, false, {}) in TEST()
123 ASSERT_TRUE(TransformationAddDeadBreak(19, merge_block, true, {}) in TEST()
125 ASSERT_TRUE(TransformationAddDeadBreak(19, merge_block, false, {}) in TEST()
127 ASSERT_TRUE(TransformationAddDeadBreak(23, merge_block, true, {}) in TEST()
[all …]

123