SPIRV-Tools/source/reduce
Paul Thomson fcb8453104
reduce: fix loop to selection pass for loops with combined header/continue block (#2480)
* Fix #2478. The fix is to just not try to simplify such loops. 
* Also added `BasicBlock::MergeBlockId()` and `BasicBlock::ContinueBlockId()`. 
* Some minor changes to `structured_loop_to_selection_reduction_opportunity.cpp`. 
* Added test.
2019-03-29 11:29:24 +00:00
..
change_operand_reduction_opportunity.cpp Initial commit for spirv-reduce. (#2056) 2018-11-21 14:03:09 -05:00
change_operand_reduction_opportunity.h spirv-reduce: add OperandToUndefReductionPass (#2200) 2018-12-19 13:25:56 +00:00
change_operand_to_undef_reduction_opportunity.cpp spirv-reduce: add OperandToUndefReductionPass (#2200) 2018-12-19 13:25:56 +00:00
change_operand_to_undef_reduction_opportunity.h spirv-reduce: add OperandToUndefReductionPass (#2200) 2018-12-19 13:25:56 +00:00
CMakeLists.txt reduce: remove unreferenced blocks pass (#2398) 2019-03-21 13:32:21 +00:00
merge_blocks_reduction_opportunity_finder.cpp Merge blocks in reducer (#2353) 2019-02-01 14:56:54 +00:00
merge_blocks_reduction_opportunity_finder.h Merge blocks in reducer (#2353) 2019-02-01 14:56:54 +00:00
merge_blocks_reduction_opportunity.cpp Fix merge blocks opportunity to check if still enabled (#2370) 2019-02-11 16:26:37 -05:00
merge_blocks_reduction_opportunity.h Merge blocks in reducer (#2353) 2019-02-01 14:56:54 +00:00
operand_to_const_reduction_opportunity_finder.cpp Fixed names in ifdefs and GetName functions that had been forgotten in a previous refactoring. Also shortened names of test files as those files test both the new 'finder' classes introduced in the refactoring, as well as the 'reduction pass' class; the shorter names capture both. (#2336) 2019-01-25 11:37:03 -05:00
operand_to_const_reduction_opportunity_finder.h Fixed names in ifdefs and GetName functions that had been forgotten in a previous refactoring. Also shortened names of test files as those files test both the new 'finder' classes introduced in the refactoring, as well as the 'reduction pass' class; the shorter names capture both. (#2336) 2019-01-25 11:37:03 -05:00
operand_to_dominating_id_reduction_opportunity_finder.cpp Fixed names in ifdefs and GetName functions that had been forgotten in a previous refactoring. Also shortened names of test files as those files test both the new 'finder' classes introduced in the refactoring, as well as the 'reduction pass' class; the shorter names capture both. (#2336) 2019-01-25 11:37:03 -05:00
operand_to_dominating_id_reduction_opportunity_finder.h Fixed names in ifdefs and GetName functions that had been forgotten in a previous refactoring. Also shortened names of test files as those files test both the new 'finder' classes introduced in the refactoring, as well as the 'reduction pass' class; the shorter names capture both. (#2336) 2019-01-25 11:37:03 -05:00
operand_to_undef_reduction_opportunity_finder.cpp Fixed names in ifdefs and GetName functions that had been forgotten in a previous refactoring. Also shortened names of test files as those files test both the new 'finder' classes introduced in the refactoring, as well as the 'reduction pass' class; the shorter names capture both. (#2336) 2019-01-25 11:37:03 -05:00
operand_to_undef_reduction_opportunity_finder.h Fixed names in ifdefs and GetName functions that had been forgotten in a previous refactoring. Also shortened names of test files as those files test both the new 'finder' classes introduced in the refactoring, as well as the 'reduction pass' class; the shorter names capture both. (#2336) 2019-01-25 11:37:03 -05:00
pch_source_reduce.cpp Fix the missing pch files in spirv-reduce (#2097) 2018-11-22 18:00:08 -05:00
pch_source_reduce.h Refactored reducer so that the 'finding' functionality of a reduction pass are separated from the generic functionality for tracking progress of a pass. With this change, we now have a ReductionOpportunityFinder abstract class, with many subclasses for each type of reduction, and just one ReductionPass class, which has an associated finder. (#2321) 2019-01-23 17:07:58 -05:00
reducer.cpp Improve reducer algorithm and other changes (#2472) 2019-03-26 13:22:31 +00:00
reducer.h Improve reducer algorithm and other changes (#2472) 2019-03-26 13:22:31 +00:00
reduction_opportunity_finder.h Refactored reducer so that the 'finding' functionality of a reduction pass are separated from the generic functionality for tracking progress of a pass. With this change, we now have a ReductionOpportunityFinder abstract class, with many subclasses for each type of reduction, and just one ReductionPass class, which has an associated finder. (#2321) 2019-01-23 17:07:58 -05:00
reduction_opportunity.cpp Initial commit for spirv-reduce. (#2056) 2018-11-21 14:03:09 -05:00
reduction_opportunity.h spirv-reduce: add OperandToUndefReductionPass (#2200) 2018-12-19 13:25:56 +00:00
reduction_pass.cpp Improve reducer algorithm and other changes (#2472) 2019-03-26 13:22:31 +00:00
reduction_pass.h Improve reducer algorithm and other changes (#2472) 2019-03-26 13:22:31 +00:00
reduction_util.cpp spirv-reduce: add OperandToUndefReductionPass (#2200) 2018-12-19 13:25:56 +00:00
reduction_util.h spirv-reduce: add OperandToUndefReductionPass (#2200) 2018-12-19 13:25:56 +00:00
remove_block_reduction_opportunity_finder.cpp reduce: remove unreferenced blocks pass (#2398) 2019-03-21 13:32:21 +00:00
remove_block_reduction_opportunity_finder.h reduce: remove unreferenced blocks pass (#2398) 2019-03-21 13:32:21 +00:00
remove_block_reduction_opportunity.cpp reduce: remove unreferenced blocks pass (#2398) 2019-03-21 13:32:21 +00:00
remove_block_reduction_opportunity.h reduce: remove unreferenced blocks pass (#2398) 2019-03-21 13:32:21 +00:00
remove_function_reduction_opportunity_finder.cpp Fixes #2358. Added to the reducer the ability to remove a function t… (#2361) 2019-02-08 16:20:29 +00:00
remove_function_reduction_opportunity_finder.h Fixes #2358. Added to the reducer the ability to remove a function t… (#2361) 2019-02-08 16:20:29 +00:00
remove_function_reduction_opportunity.cpp Fixes #2358. Added to the reducer the ability to remove a function t… (#2361) 2019-02-08 16:20:29 +00:00
remove_function_reduction_opportunity.h Fixes #2358. Added to the reducer the ability to remove a function t… (#2361) 2019-02-08 16:20:29 +00:00
remove_instruction_reduction_opportunity.cpp Initial commit for spirv-reduce. (#2056) 2018-11-21 14:03:09 -05:00
remove_instruction_reduction_opportunity.h spirv-reduce: add OperandToUndefReductionPass (#2200) 2018-12-19 13:25:56 +00:00
remove_opname_instruction_reduction_opportunity_finder.cpp Fixed names in ifdefs and GetName functions that had been forgotten in a previous refactoring. Also shortened names of test files as those files test both the new 'finder' classes introduced in the refactoring, as well as the 'reduction pass' class; the shorter names capture both. (#2336) 2019-01-25 11:37:03 -05:00
remove_opname_instruction_reduction_opportunity_finder.h Fixed names in ifdefs and GetName functions that had been forgotten in a previous refactoring. Also shortened names of test files as those files test both the new 'finder' classes introduced in the refactoring, as well as the 'reduction pass' class; the shorter names capture both. (#2336) 2019-01-25 11:37:03 -05:00
remove_unreferenced_instruction_reduction_opportunity_finder.cpp Fixed names in ifdefs and GetName functions that had been forgotten in a previous refactoring. Also shortened names of test files as those files test both the new 'finder' classes introduced in the refactoring, as well as the 'reduction pass' class; the shorter names capture both. (#2336) 2019-01-25 11:37:03 -05:00
remove_unreferenced_instruction_reduction_opportunity_finder.h Fixed names in ifdefs and GetName functions that had been forgotten in a previous refactoring. Also shortened names of test files as those files test both the new 'finder' classes introduced in the refactoring, as well as the 'reduction pass' class; the shorter names capture both. (#2336) 2019-01-25 11:37:03 -05:00
structured_loop_to_selection_reduction_opportunity_finder.cpp reduce: fix loop to selection pass for loops with combined header/continue block (#2480) 2019-03-29 11:29:24 +00:00
structured_loop_to_selection_reduction_opportunity_finder.h Fixed names in ifdefs and GetName functions that had been forgotten in a previous refactoring. Also shortened names of test files as those files test both the new 'finder' classes introduced in the refactoring, as well as the 'reduction pass' class; the shorter names capture both. (#2336) 2019-01-25 11:37:03 -05:00
structured_loop_to_selection_reduction_opportunity.cpp reduce: fix loop to selection pass for loops with combined header/continue block (#2480) 2019-03-29 11:29:24 +00:00
structured_loop_to_selection_reduction_opportunity.h spirv-reduce: add OperandToUndefReductionPass (#2200) 2018-12-19 13:25:56 +00:00