third_party_spirv-tools/source/opt
GregF 0f80406315 ADCE: Only mark true breaks and continues of live loops
This fixes issue #1075

- Mark continue when conditional branch with merge block.
  Only mark if merge block is not continue block.

- Handle conditional branch break with preceding merge
2017-12-15 11:53:57 -05:00
..
aggressive_dead_code_elim_pass.cpp ADCE: Only mark true breaks and continues of live loops 2017-12-15 11:53:57 -05:00
aggressive_dead_code_elim_pass.h ADCE: Only mark true breaks and continues of live loops 2017-12-15 11:53:57 -05:00
basic_block.cpp Re-format source tree - NFC. 2017-11-27 14:31:49 -05:00
basic_block.h Dominator Tree Analysis (#3) 2017-12-05 22:59:43 -05:00
block_merge_pass.cpp Re-format source tree - NFC. 2017-11-27 14:31:49 -05:00
block_merge_pass.h Re-format files in source, source/opt, source/util, source/val and tools. 2017-11-08 14:03:08 -05:00
build_module.cpp Re-format source tree - NFC. 2017-11-27 14:31:49 -05:00
build_module.h Re-format source tree - NFC. 2017-11-27 14:31:49 -05:00
cfg_cleanup_pass.cpp Re-format source tree - NFC. 2017-11-27 14:31:49 -05:00
cfg_cleanup_pass.h Have all MemPasses preserve the def-use manager. 2017-11-10 11:17:12 -05:00
cfg.cpp Re-format source tree - NFC. 2017-11-27 14:31:49 -05:00
cfg.h Convert the CFG to an on-demand analysis - NFC. 2017-11-28 13:25:41 -05:00
CMakeLists.txt Add scalar replacement 2017-12-11 10:51:13 -05:00
common_uniform_elim_pass.cpp Change IRContext::KillInst to delete instructions. 2017-12-04 11:07:45 -05:00
common_uniform_elim_pass.h Change IRContext::KillInst to delete instructions. 2017-12-04 11:07:45 -05:00
compact_ids_pass.cpp Add a new constant manager class. 2017-12-08 14:14:55 -05:00
compact_ids_pass.h Re-format files in source, source/opt, source/util, source/val and tools. 2017-11-08 14:03:08 -05:00
constants.cpp Add a new constant manager class. 2017-12-08 14:14:55 -05:00
constants.h Add a new constant manager class. 2017-12-08 14:14:55 -05:00
dead_branch_elim_pass.cpp Change IRContext::KillInst to delete instructions. 2017-12-04 11:07:45 -05:00
dead_branch_elim_pass.h Have all MemPasses preserve the def-use manager. 2017-11-10 11:17:12 -05:00
dead_variable_elimination.cpp Re-format source tree - NFC. 2017-11-27 14:31:49 -05:00
dead_variable_elimination.h Have all MemPasses preserve the def-use manager. 2017-11-10 11:17:12 -05:00
decoration_manager.cpp Erase decorations removed from internal collections 2017-11-30 11:35:02 -05:00
decoration_manager.h Re-format source tree - NFC. 2017-11-27 14:31:49 -05:00
def_use_manager.cpp Add scalar replacement 2017-12-11 10:51:13 -05:00
def_use_manager.h Add scalar replacement 2017-12-11 10:51:13 -05:00
dominator_analysis.h Dominator Tree Analysis (#3) 2017-12-05 22:59:43 -05:00
dominator_tree.cpp Add depth first iterator for trees 2017-12-07 10:07:56 -05:00
dominator_tree.h Add depth first iterator for trees 2017-12-07 10:07:56 -05:00
eliminate_dead_constant_pass.cpp Change IRContext::KillInst to delete instructions. 2017-12-04 11:07:45 -05:00
eliminate_dead_constant_pass.h Re-format files in source, source/opt, source/util, source/val and tools. 2017-11-08 14:03:08 -05:00
eliminate_dead_functions_pass.cpp Re-format source tree - NFC. 2017-11-27 14:31:49 -05:00
eliminate_dead_functions_pass.h Have all MemPasses preserve the def-use manager. 2017-11-10 11:17:12 -05:00
feature_manager.cpp Add scalar replacement 2017-12-11 10:51:13 -05:00
feature_manager.h Add scalar replacement 2017-12-11 10:51:13 -05:00
flatten_decoration_pass.cpp Adding an unique id to Instruction generated by IRContext 2017-11-20 17:49:10 -05:00
flatten_decoration_pass.h Re-format files in source, source/opt, source/util, source/val and tools. 2017-11-08 14:03:08 -05:00
fold_spec_constant_op_and_composite_pass.cpp Add a new constant manager class. 2017-12-08 14:14:55 -05:00
fold_spec_constant_op_and_composite_pass.h Add a new constant manager class. 2017-12-08 14:14:55 -05:00
fold.cpp Re-factor generic constant folding code out of FoldSpecConstantOpAndCompositePass 2017-10-17 19:41:37 -04:00
fold.h Re-format files in source, source/opt, source/util, source/val and tools. 2017-11-08 14:03:08 -05:00
freeze_spec_constant_value_pass.cpp Add the IRContext (part 1) 2017-10-31 13:46:05 -04:00
freeze_spec_constant_value_pass.h Re-format files in source, source/opt, source/util, source/val and tools. 2017-11-08 14:03:08 -05:00
function.cpp Re-format source tree - NFC. 2017-11-27 14:31:49 -05:00
function.h Dominator Tree Analysis (#3) 2017-12-05 22:59:43 -05:00
inline_exhaustive_pass.cpp Set the parent for basic blocks during inlining. 2017-12-12 13:39:08 -05:00
inline_exhaustive_pass.h Re-format files in source, source/opt, source/util, source/val and tools. 2017-11-08 14:03:08 -05:00
inline_opaque_pass.cpp Re-format files in source, source/opt, source/util, source/val and tools. 2017-11-08 14:03:08 -05:00
inline_opaque_pass.h Re-format files in source, source/opt, source/util, source/val and tools. 2017-11-08 14:03:08 -05:00
inline_pass.cpp Opt: Remove unused lambda captures 2017-12-01 09:54:37 -05:00
inline_pass.h Re-format source tree - NFC. 2017-11-27 14:31:49 -05:00
insert_extract_elim.cpp Change IRContext::KillInst to delete instructions. 2017-12-04 11:07:45 -05:00
insert_extract_elim.h Re-format source tree - NFC. 2017-11-27 14:31:49 -05:00
instruction_list.cpp Re-format files in source, source/opt, source/util, source/val and tools. 2017-11-08 14:03:08 -05:00
instruction_list.h Refactor include of latest spir-v header versions 2017-12-14 11:18:20 -05:00
instruction.cpp Change IRContext::KillInst to delete instructions. 2017-12-04 11:07:45 -05:00
instruction.h Refactor include of latest spir-v header versions 2017-12-14 11:18:20 -05:00
ir_context.cpp Refactor include of latest spir-v header versions 2017-12-14 11:18:20 -05:00
ir_context.h Add scalar replacement 2017-12-11 10:51:13 -05:00
ir_loader.cpp Fixed typo that leaked to the binary 2017-12-03 20:42:14 -05:00
ir_loader.h Adding an unique id to Instruction generated by IRContext 2017-11-20 17:49:10 -05:00
iterator.h Fix move semantics in iterator make_range 2017-11-21 17:36:15 -05:00
local_access_chain_convert_pass.cpp Change IRContext::KillInst to delete instructions. 2017-12-04 11:07:45 -05:00
local_access_chain_convert_pass.h Change IRContext::KillInst to delete instructions. 2017-12-04 11:07:45 -05:00
local_redundancy_elimination.cpp Add global redundancy elimination 2017-12-07 18:35:38 -05:00
local_redundancy_elimination.h Add global redundancy elimination 2017-12-07 18:35:38 -05:00
local_single_block_elim_pass.cpp Change IRContext::KillInst to delete instructions. 2017-12-04 11:07:45 -05:00
local_single_block_elim_pass.h Re-format source tree - NFC. 2017-11-27 14:31:49 -05:00
local_single_store_elim_pass.cpp Refactor include of latest spir-v header versions 2017-12-14 11:18:20 -05:00
local_single_store_elim_pass.h Re-format source tree - NFC. 2017-11-27 14:31:49 -05:00
local_ssa_elim_pass.cpp Change IRContext::KillInst to delete instructions. 2017-12-04 11:07:45 -05:00
local_ssa_elim_pass.h Have all MemPasses preserve the def-use manager. 2017-11-10 11:17:12 -05:00
log.h Avoid snprintf warning in GCC 7.1 2017-05-08 15:58:24 -04:00
make_unique.h Relicense SPIRV-Tools under Apache 2.0 2016-09-02 10:00:29 -04:00
mem_pass.cpp MultiStore: Support OpVariable Initialization 2017-12-11 10:37:14 -05:00
mem_pass.h Change IRContext::KillInst to delete instructions. 2017-12-04 11:07:45 -05:00
merge_return_pass.cpp Change IRContext::KillInst to delete instructions. 2017-12-04 11:07:45 -05:00
merge_return_pass.h Initial implementation of merge return pass. 2017-11-15 10:27:04 -05:00
module.cpp Change IRContext::KillInst to delete instructions. 2017-12-04 11:07:45 -05:00
module.h Add a new constant manager class. 2017-12-08 14:14:55 -05:00
null_pass.h Re-format files in source, source/opt, source/util, source/val and tools. 2017-11-08 14:03:08 -05:00
optimizer.cpp Add scalar replacement 2017-12-11 10:51:13 -05:00
pass_manager.cpp Add a new constant manager class. 2017-12-08 14:14:55 -05:00
pass_manager.h Re-format files in source, source/opt, source/util, source/val and tools. 2017-11-08 14:03:08 -05:00
pass.cpp Add a new constant manager class. 2017-12-08 14:14:55 -05:00
pass.h Add a new constant manager class. 2017-12-08 14:14:55 -05:00
passes.h Add scalar replacement 2017-12-11 10:51:13 -05:00
propagator.cpp Remove cfg_ field from SSAPropagator class - NFC. 2017-12-04 15:28:21 -05:00
propagator.h Remove cfg_ field from SSAPropagator class - NFC. 2017-12-04 15:28:21 -05:00
redundancy_elimination.cpp Add global redundancy elimination 2017-12-07 18:35:38 -05:00
redundancy_elimination.h Add global redundancy elimination 2017-12-07 18:35:38 -05:00
reflect.h Refactor include of latest spir-v header versions 2017-12-14 11:18:20 -05:00
remove_duplicates_pass.cpp Change IRContext::KillInst to delete instructions. 2017-12-04 11:07:45 -05:00
remove_duplicates_pass.h Add the decoration manager to the IRContext. 2017-11-15 12:48:03 -05:00
scalar_replacement_pass.cpp Add scalar replacement 2017-12-11 10:51:13 -05:00
scalar_replacement_pass.h Add scalar replacement 2017-12-11 10:51:13 -05:00
set_spec_constant_default_value_pass.cpp Re-format source tree - NFC. 2017-11-27 14:31:49 -05:00
set_spec_constant_default_value_pass.h Re-format files in source, source/opt, source/util, source/val and tools. 2017-11-08 14:03:08 -05:00
strength_reduction_pass.cpp Change IRContext::KillInst to delete instructions. 2017-12-04 11:07:45 -05:00
strength_reduction_pass.h Re-format files in source, source/opt, source/util, source/val and tools. 2017-11-08 14:03:08 -05:00
strip_debug_info_pass.cpp Re-format files in source, source/opt, source/util, source/val and tools. 2017-11-08 14:03:08 -05:00
strip_debug_info_pass.h Re-format files in source, source/opt, source/util, source/val and tools. 2017-11-08 14:03:08 -05:00
tree_iterator.h Add depth first iterator for trees 2017-12-07 10:07:56 -05:00
type_manager.cpp Fix typo in method name Struct::AddMemberName 2017-04-01 11:19:40 -04:00
type_manager.h Add a new constant manager class. 2017-12-08 14:14:55 -05:00
types.cpp Re-format files in source, source/opt, source/util, source/val and tools. 2017-11-08 14:03:08 -05:00
types.h Refactor include of latest spir-v header versions 2017-12-14 11:18:20 -05:00
unify_const_pass.cpp Change IRContext::KillInst to delete instructions. 2017-12-04 11:07:45 -05:00
unify_const_pass.h Re-format files in source, source/opt, source/util, source/val and tools. 2017-11-08 14:03:08 -05:00
value_number_table.cpp Add global redundancy elimination 2017-12-07 18:35:38 -05:00
value_number_table.h Add global redundancy elimination 2017-12-07 18:35:38 -05:00