/third_party/skia/third_party/externals/spirv-tools/source/fuzz/ |
H A D | fuzzer_pass_outline_functions.cpp | 49 auto entry_block = MaybeGetEntryBlockSuitableForOutlining( in Apply() local 52 if (!entry_block) { in Apply() 62 for (auto postdominates_entry_block = entry_block; in Apply() 68 if (dominator_analysis->Dominates(entry_block, in Apply() 88 GetIRContext(), entry_block, exit_block); in Apply() 100 entry_block->id(), exit_block->id(), in Apply() 117 opt::BasicBlock* entry_block) { in MaybeGetEntryBlockSuitableForOutlining() 120 if (entry_block->IsLoopHeader()) { in MaybeGetEntryBlockSuitableForOutlining() 122 GetIRContext()->cfg()->preds(entry_block->GetLabel()->result_id()); in MaybeGetEntryBlockSuitableForOutlining() 132 entry_block in MaybeGetEntryBlockSuitableForOutlining() 116 MaybeGetEntryBlockSuitableForOutlining( opt::BasicBlock* entry_block) MaybeGetEntryBlockSuitableForOutlining() argument [all...] |
H A D | transformation_duplicate_region_with_selection.cpp | 84 auto entry_block = ir_context->cfg()->block(message_.entry_block_id()); in IsApplicable() local 87 // The |entry_block| and the |exit_block| must be in the same function. in IsApplicable() 88 if (entry_block->GetParent() != exit_block->GetParent()) { in IsApplicable() 92 // The |entry_block| must dominate the |exit_block|. in IsApplicable() 94 ir_context->GetDominatorAnalysis(entry_block->GetParent()); in IsApplicable() 95 if (!dominator_analysis->Dominates(entry_block, exit_block)) { in IsApplicable() 99 // The |exit_block| must post-dominate the |entry_block|. in IsApplicable() 101 ir_context->GetPostDominatorAnalysis(entry_block->GetParent()); in IsApplicable() 102 if (!postdominator_analysis->Dominates(exit_block, entry_block)) { in IsApplicable() 106 auto enclosing_function = entry_block in IsApplicable() 302 auto entry_block = ir_context->cfg()->block(message_.entry_block_id()); Apply() local 629 entry_block); Apply() local 642 GetRegionBlocks( opt::IRContext* ir_context, opt::BasicBlock* entry_block, opt::BasicBlock* exit_block) GetRegionBlocks() argument [all...] |
H A D | fuzzer_pass_duplicate_regions_with_selections.cpp | 58 auto entry_block = candidate_entry_blocks[GetFuzzerContext()->RandomIndex( in Apply() local 64 for (auto postdominates_entry_block = entry_block; in Apply() 71 if (dominator_analysis->Dominates(entry_block, in Apply() 86 GetIRContext(), entry_block, exit_block); in Apply() 124 GetFuzzerContext()->GetFreshId(), entry_block->id(), in Apply()
|
H A D | transformation_outline_function.cpp | 29 uint32_t entry_block, uint32_t exit_block, in TransformationOutlineFunction() 35 message_.set_entry_block(entry_block); in TransformationOutlineFunction() 108 for (auto block_id : {message_.entry_block(), message_.exit_block()}) { in IsApplicable() 115 auto entry_block = ir_context->cfg()->block(message_.entry_block()); in IsApplicable() local 121 if (entry_block->begin()->opcode() == SpvOpVariable) { in IsApplicable() 126 if (entry_block->GetLoopMergeInst()) { in IsApplicable() 139 if (entry_block->begin()->opcode() == SpvOpPhi) { in IsApplicable() 144 if (entry_block->GetParent() != exit_block->GetParent()) { in IsApplicable() 150 ir_context->GetDominatorAnalysis(entry_block in IsApplicable() 28 TransformationOutlineFunction( uint32_t entry_block, uint32_t exit_block, uint32_t new_function_struct_return_type_id, uint32_t new_function_type_id, uint32_t new_function_id, uint32_t new_function_region_entry_block, uint32_t new_caller_result_id, uint32_t new_callee_result_id, const std::map<uint32_t, uint32_t>& input_id_to_fresh_id, const std::map<uint32_t, uint32_t>& output_id_to_fresh_id) TransformationOutlineFunction() argument 551 GetRegionBlocks( opt::IRContext* ir_context, opt::BasicBlock* entry_block, opt::BasicBlock* exit_block) GetRegionBlocks() argument [all...] |
H A D | transformation_outline_function.h | 36 uint32_t entry_block, uint32_t exit_block, 46 // - |message_.entry_block| and |message_.exit_block| must form a single-entry 48 // - |message_.entry_block| must not start with OpVariable 49 // - |message_.entry_block| must not be a loop header 54 // - |message.entry_block| must not start with OpPhi; this is to keep the 81 // as |message_.entry_block|, and which calls the new function, passing the 106 // Returns the set of blocks dominated by |entry_block| and post-dominated 109 opt::IRContext* ir_context, opt::BasicBlock* entry_block,
|
/third_party/skia/third_party/externals/swiftshader/third_party/SPIRV-Tools/source/fuzz/ |
H A D | fuzzer_pass_outline_functions.cpp | 49 auto entry_block = MaybeGetEntryBlockSuitableForOutlining( in Apply() local 52 if (!entry_block) { in Apply() 62 for (auto postdominates_entry_block = entry_block; in Apply() 68 if (dominator_analysis->Dominates(entry_block, in Apply() 88 GetIRContext(), entry_block, exit_block); in Apply() 100 entry_block->id(), exit_block->id(), in Apply() 117 opt::BasicBlock* entry_block) { in MaybeGetEntryBlockSuitableForOutlining() 120 if (entry_block->IsLoopHeader()) { in MaybeGetEntryBlockSuitableForOutlining() 122 GetIRContext()->cfg()->preds(entry_block->GetLabel()->result_id()); in MaybeGetEntryBlockSuitableForOutlining() 132 entry_block in MaybeGetEntryBlockSuitableForOutlining() 116 MaybeGetEntryBlockSuitableForOutlining( opt::BasicBlock* entry_block) MaybeGetEntryBlockSuitableForOutlining() argument [all...] |
H A D | transformation_duplicate_region_with_selection.cpp | 84 auto entry_block = ir_context->cfg()->block(message_.entry_block_id()); in IsApplicable() local 87 // The |entry_block| and the |exit_block| must be in the same function. in IsApplicable() 88 if (entry_block->GetParent() != exit_block->GetParent()) { in IsApplicable() 92 // The |entry_block| must dominate the |exit_block|. in IsApplicable() 94 ir_context->GetDominatorAnalysis(entry_block->GetParent()); in IsApplicable() 95 if (!dominator_analysis->Dominates(entry_block, exit_block)) { in IsApplicable() 99 // The |exit_block| must post-dominate the |entry_block|. in IsApplicable() 101 ir_context->GetPostDominatorAnalysis(entry_block->GetParent()); in IsApplicable() 102 if (!postdominator_analysis->Dominates(exit_block, entry_block)) { in IsApplicable() 106 auto enclosing_function = entry_block in IsApplicable() 302 auto entry_block = ir_context->cfg()->block(message_.entry_block_id()); Apply() local 629 entry_block); Apply() local 642 GetRegionBlocks( opt::IRContext* ir_context, opt::BasicBlock* entry_block, opt::BasicBlock* exit_block) GetRegionBlocks() argument [all...] |
H A D | fuzzer_pass_duplicate_regions_with_selections.cpp | 58 auto entry_block = candidate_entry_blocks[GetFuzzerContext()->RandomIndex( in Apply() local 64 for (auto postdominates_entry_block = entry_block; in Apply() 71 if (dominator_analysis->Dominates(entry_block, in Apply() 86 GetIRContext(), entry_block, exit_block); in Apply() 124 GetFuzzerContext()->GetFreshId(), entry_block->id(), in Apply()
|
H A D | transformation_outline_function.cpp | 29 uint32_t entry_block, uint32_t exit_block, in TransformationOutlineFunction() 35 message_.set_entry_block(entry_block); in TransformationOutlineFunction() 108 for (auto block_id : {message_.entry_block(), message_.exit_block()}) { in IsApplicable() 115 auto entry_block = ir_context->cfg()->block(message_.entry_block()); in IsApplicable() local 121 if (entry_block->begin()->opcode() == SpvOpVariable) { in IsApplicable() 126 if (entry_block->GetLoopMergeInst()) { in IsApplicable() 139 if (entry_block->begin()->opcode() == SpvOpPhi) { in IsApplicable() 144 if (entry_block->GetParent() != exit_block->GetParent()) { in IsApplicable() 150 ir_context->GetDominatorAnalysis(entry_block in IsApplicable() 28 TransformationOutlineFunction( uint32_t entry_block, uint32_t exit_block, uint32_t new_function_struct_return_type_id, uint32_t new_function_type_id, uint32_t new_function_id, uint32_t new_function_region_entry_block, uint32_t new_caller_result_id, uint32_t new_callee_result_id, const std::map<uint32_t, uint32_t>& input_id_to_fresh_id, const std::map<uint32_t, uint32_t>& output_id_to_fresh_id) TransformationOutlineFunction() argument 551 GetRegionBlocks( opt::IRContext* ir_context, opt::BasicBlock* entry_block, opt::BasicBlock* exit_block) GetRegionBlocks() argument [all...] |
H A D | transformation_outline_function.h | 36 uint32_t entry_block, uint32_t exit_block, 46 // - |message_.entry_block| and |message_.exit_block| must form a single-entry 48 // - |message_.entry_block| must not start with OpVariable 49 // - |message_.entry_block| must not be a loop header 54 // - |message.entry_block| must not start with OpPhi; this is to keep the 81 // as |message_.entry_block|, and which calls the new function, passing the 106 // Returns the set of blocks dominated by |entry_block| and post-dominated 109 opt::IRContext* ir_context, opt::BasicBlock* entry_block,
|
/third_party/spirv-tools/source/fuzz/ |
H A D | fuzzer_pass_outline_functions.cpp | 49 auto entry_block = MaybeGetEntryBlockSuitableForOutlining( in Apply() local 52 if (!entry_block) { in Apply() 62 for (auto postdominates_entry_block = entry_block; in Apply() 68 if (dominator_analysis->Dominates(entry_block, in Apply() 88 GetIRContext(), entry_block, exit_block); in Apply() 100 entry_block->id(), exit_block->id(), in Apply() 117 opt::BasicBlock* entry_block) { in MaybeGetEntryBlockSuitableForOutlining() 120 if (entry_block->IsLoopHeader()) { in MaybeGetEntryBlockSuitableForOutlining() 122 GetIRContext()->cfg()->preds(entry_block->GetLabel()->result_id()); in MaybeGetEntryBlockSuitableForOutlining() 132 entry_block in MaybeGetEntryBlockSuitableForOutlining() 116 MaybeGetEntryBlockSuitableForOutlining( opt::BasicBlock* entry_block) MaybeGetEntryBlockSuitableForOutlining() argument [all...] |
H A D | transformation_duplicate_region_with_selection.cpp | 84 auto entry_block = ir_context->cfg()->block(message_.entry_block_id()); in IsApplicable() local 87 // The |entry_block| and the |exit_block| must be in the same function. in IsApplicable() 88 if (entry_block->GetParent() != exit_block->GetParent()) { in IsApplicable() 92 // The |entry_block| must dominate the |exit_block|. in IsApplicable() 94 ir_context->GetDominatorAnalysis(entry_block->GetParent()); in IsApplicable() 95 if (!dominator_analysis->Dominates(entry_block, exit_block)) { in IsApplicable() 99 // The |exit_block| must post-dominate the |entry_block|. in IsApplicable() 101 ir_context->GetPostDominatorAnalysis(entry_block->GetParent()); in IsApplicable() 102 if (!postdominator_analysis->Dominates(exit_block, entry_block)) { in IsApplicable() 106 auto enclosing_function = entry_block in IsApplicable() 302 auto entry_block = ir_context->cfg()->block(message_.entry_block_id()); Apply() local 629 entry_block); Apply() local 642 GetRegionBlocks( opt::IRContext* ir_context, opt::BasicBlock* entry_block, opt::BasicBlock* exit_block) GetRegionBlocks() argument [all...] |
H A D | fuzzer_pass_duplicate_regions_with_selections.cpp | 58 auto entry_block = candidate_entry_blocks[GetFuzzerContext()->RandomIndex( in Apply() local 64 for (auto postdominates_entry_block = entry_block; in Apply() 71 if (dominator_analysis->Dominates(entry_block, in Apply() 86 GetIRContext(), entry_block, exit_block); in Apply() 124 GetFuzzerContext()->GetFreshId(), entry_block->id(), in Apply()
|
H A D | transformation_outline_function.cpp | 29 uint32_t entry_block, uint32_t exit_block, in TransformationOutlineFunction() 35 message_.set_entry_block(entry_block); in TransformationOutlineFunction() 108 for (auto block_id : {message_.entry_block(), message_.exit_block()}) { in IsApplicable() 115 auto entry_block = ir_context->cfg()->block(message_.entry_block()); in IsApplicable() local 121 if (entry_block->begin()->opcode() == spv::Op::OpVariable) { in IsApplicable() 126 if (entry_block->GetLoopMergeInst()) { in IsApplicable() 139 if (entry_block->begin()->opcode() == spv::Op::OpPhi) { in IsApplicable() 144 if (entry_block->GetParent() != exit_block->GetParent()) { in IsApplicable() 150 ir_context->GetDominatorAnalysis(entry_block in IsApplicable() 28 TransformationOutlineFunction( uint32_t entry_block, uint32_t exit_block, uint32_t new_function_struct_return_type_id, uint32_t new_function_type_id, uint32_t new_function_id, uint32_t new_function_region_entry_block, uint32_t new_caller_result_id, uint32_t new_callee_result_id, const std::map<uint32_t, uint32_t>& input_id_to_fresh_id, const std::map<uint32_t, uint32_t>& output_id_to_fresh_id) TransformationOutlineFunction() argument 551 GetRegionBlocks( opt::IRContext* ir_context, opt::BasicBlock* entry_block, opt::BasicBlock* exit_block) GetRegionBlocks() argument [all...] |
H A D | transformation_outline_function.h | 36 uint32_t entry_block, uint32_t exit_block, 46 // - |message_.entry_block| and |message_.exit_block| must form a single-entry 48 // - |message_.entry_block| must not start with OpVariable 49 // - |message_.entry_block| must not be a loop header 54 // - |message.entry_block| must not start with OpPhi; this is to keep the 81 // as |message_.entry_block|, and which calls the new function, passing the 106 // Returns the set of blocks dominated by |entry_block| and post-dominated 109 opt::IRContext* ir_context, opt::BasicBlock* entry_block,
|
/third_party/skia/third_party/externals/spirv-tools/source/val/ |
H A D | construct.cpp | 65 const BasicBlock* Construct::entry_block() const { return entry_block_; } in entry_block() function in spvtools::val::Construct 66 BasicBlock* Construct::entry_block() { return entry_block_; } in entry_block() function in spvtools::val::Construct 74 auto header = entry_block(); in blocks() 84 if (type() != ConstructType::kContinue || other->entry_block() != header) { in blocks() 85 corresponding_headers.insert(other->entry_block()); in blocks() 152 auto header = entry_block(); in IsStructuredExit() 163 auto header = loop_construct->entry_block(); in IsStructuredExit() 192 auto header = entry_block(); in IsStructuredExit()
|
H A D | construct.h | 73 const BasicBlock* entry_block() const; 78 BasicBlock* entry_block();
|
H A D | function.cpp | 169 ->entry_block(); in RegisterBlockEnd() 286 entry_block_to_construct_[std::make_pair(new_construct.entry_block(), 291 Construct& Function::FindConstructForEntryBlock(const BasicBlock* entry_block, 294 entry_block_to_construct_.find(std::make_pair(entry_block, type)); 331 BasicBlock* loop_header = loop_construct->entry_block();
|
/third_party/skia/third_party/externals/swiftshader/third_party/SPIRV-Tools/source/val/ |
H A D | construct.cpp | 65 const BasicBlock* Construct::entry_block() const { return entry_block_; } in entry_block() function in spvtools::val::Construct 66 BasicBlock* Construct::entry_block() { return entry_block_; } in entry_block() function in spvtools::val::Construct 74 auto header = entry_block(); in blocks() 84 if (type() != ConstructType::kContinue || other->entry_block() != header) { in blocks() 85 corresponding_headers.insert(other->entry_block()); in blocks() 152 auto header = entry_block(); in IsStructuredExit() 163 auto header = loop_construct->entry_block(); in IsStructuredExit() 192 auto header = entry_block(); in IsStructuredExit()
|
H A D | construct.h | 73 const BasicBlock* entry_block() const; 78 BasicBlock* entry_block();
|
H A D | function.cpp | 169 ->entry_block(); in RegisterBlockEnd() 286 entry_block_to_construct_[std::make_pair(new_construct.entry_block(), 291 Construct& Function::FindConstructForEntryBlock(const BasicBlock* entry_block, 294 entry_block_to_construct_.find(std::make_pair(entry_block, type)); 331 BasicBlock* loop_header = loop_construct->entry_block();
|
/third_party/spirv-tools/source/val/ |
H A D | construct.cpp | 64 const BasicBlock* Construct::entry_block() const { return entry_block_; } in entry_block() function in spvtools::val::Construct 65 BasicBlock* Construct::entry_block() { return entry_block_; } in entry_block() function in spvtools::val::Construct 73 const auto header = entry_block(); in blocks() 80 continue_header = (*corresponding_constructs().begin())->entry_block(); in blocks() 136 auto header = entry_block(); in IsStructuredExit() 147 auto header = loop_construct->entry_block(); in IsStructuredExit() 179 auto header = entry_block(); in IsStructuredExit()
|
H A D | construct.h | 73 const BasicBlock* entry_block() const; 78 BasicBlock* entry_block();
|
H A D | function.cpp | 171 ->entry_block(); in RegisterBlockEnd() 302 entry_block_to_construct_[std::make_pair(new_construct.entry_block(), 307 Construct& Function::FindConstructForEntryBlock(const BasicBlock* entry_block, 310 entry_block_to_construct_.find(std::make_pair(entry_block, type)); 347 BasicBlock* loop_header = loop_construct->entry_block();
|
/third_party/skia/third_party/externals/spirv-cross/ |
H A D | spirv_cfg.cpp | 57 immediate_dominators[func.entry_block] = func.entry_block; in build_immediate_dominators() 210 uint32_t block = func.entry_block; in build_post_order_visit_order() 402 dominator = cfg.get_function().entry_block; in lift_continue_block_dominator()
|