SPIRV-Tools/test/opt
Steven Perron ce644d4a24
Update OpPhi instructions after splitting block. (#1783)
In the merge return pass, we will split a block, but not update the phi
instructions that reference the block.  Since the branch in the original
block is now part of the block with the new id, the phi nodes must be
updated.

This commit will change this.

I have also considered other places where an id of a basic block could
be referenced, and I don't think any of them need to change.

1) Branch and merge instructions: These jump to the start of the
original block, and so we want them to jump to the block that uses the
original id.  Nothing needs to change.

2) Names and decorations: I don't think it matters with block keeps the
name, and there are no decorations that apply to basic blocks.

Fixes #1736.
2018-08-02 11:02:50 -04:00
..
dominator_tree Remove context() method from opt::Function (#1700) 2018-07-12 10:16:15 -04:00
loop_optimizations Remove the module from opt::Function. (#1717) 2018-07-12 14:42:05 -04:00
aggressive_dead_code_elim_test.cpp Move tests into namespaces (#1689) 2018-07-11 09:24:49 -04:00
assembly_builder_test.cpp Move tests into namespaces (#1689) 2018-07-11 09:24:49 -04:00
assembly_builder.h Move tests into namespaces (#1689) 2018-07-11 09:24:49 -04:00
block_merge_test.cpp Move tests into namespaces (#1689) 2018-07-11 09:24:49 -04:00
ccp_test.cpp Move tests into namespaces (#1689) 2018-07-11 09:24:49 -04:00
cfg_cleanup_test.cpp Move tests into namespaces (#1689) 2018-07-11 09:24:49 -04:00
CMakeLists.txt Transform to combine consecutive access chains 2018-07-31 13:42:47 -04:00
combine_access_chains_test.cpp Transform to combine consecutive access chains 2018-07-31 13:42:47 -04:00
common_uniform_elim_test.cpp Move tests into namespaces (#1689) 2018-07-11 09:24:49 -04:00
compact_ids_test.cpp Move tests into namespaces (#1689) 2018-07-11 09:24:49 -04:00
constant_manager_test.cpp Fix finding constant with particular type. (#1724) 2018-07-16 12:36:53 -04:00
copy_prop_array_test.cpp Move tests into namespaces (#1689) 2018-07-11 09:24:49 -04:00
dead_branch_elim_test.cpp Fix block ordering in dead branch elim 2018-07-19 11:17:57 -04:00
dead_insert_elim_test.cpp Move tests into namespaces (#1689) 2018-07-11 09:24:49 -04:00
dead_variable_elim_test.cpp Move tests into namespaces (#1689) 2018-07-11 09:24:49 -04:00
decoration_manager_test.cpp Move tests into namespaces (#1689) 2018-07-11 09:24:49 -04:00
def_use_test.cpp Move tests into namespaces (#1689) 2018-07-11 09:24:49 -04:00
eliminate_dead_const_test.cpp Move tests into namespaces (#1689) 2018-07-11 09:24:49 -04:00
eliminate_dead_functions_test.cpp Move tests into namespaces (#1689) 2018-07-11 09:24:49 -04:00
feature_manager_test.cpp Move tests into namespaces (#1689) 2018-07-11 09:24:49 -04:00
flatten_decoration_test.cpp Move tests into namespaces (#1689) 2018-07-11 09:24:49 -04:00
fold_spec_const_op_composite_test.cpp Fix finding constant with particular type. (#1724) 2018-07-16 12:36:53 -04:00
fold_test.cpp Transform to combine consecutive access chains 2018-07-31 13:42:47 -04:00
freeze_spec_const_test.cpp Move tests into namespaces (#1689) 2018-07-11 09:24:49 -04:00
function_utils.h Move the ir namespace to opt. (#1680) 2018-07-09 11:32:29 -04:00
if_conversion_test.cpp Move tests into namespaces (#1689) 2018-07-11 09:24:49 -04:00
inline_opaque_test.cpp Move tests into namespaces (#1689) 2018-07-11 09:24:49 -04:00
inline_test.cpp Move tests into namespaces (#1689) 2018-07-11 09:24:49 -04:00
insert_extract_elim_test.cpp Move tests into namespaces (#1689) 2018-07-11 09:24:49 -04:00
instruction_list_test.cpp Move tests into namespaces (#1689) 2018-07-11 09:24:49 -04:00
instruction_test.cpp Add variable pointer support to IsValidBasePointer 2018-07-19 14:43:59 -04:00
ir_builder.cpp Move tests into namespaces (#1689) 2018-07-11 09:24:49 -04:00
ir_context_test.cpp use Pass::Run to set the context on each pass. (#1708) 2018-07-12 09:08:45 -04:00
ir_loader_test.cpp Move tests into namespaces (#1689) 2018-07-11 09:24:49 -04:00
iterator_test.cpp Move tests into namespaces (#1689) 2018-07-11 09:24:49 -04:00
line_debug_info_test.cpp use Pass::Run to set the context on each pass. (#1708) 2018-07-12 09:08:45 -04:00
local_access_chain_convert_test.cpp Move tests into namespaces (#1689) 2018-07-11 09:24:49 -04:00
local_redundancy_elimination_test.cpp Move tests into namespaces (#1689) 2018-07-11 09:24:49 -04:00
local_single_block_elim.cpp Move tests into namespaces (#1689) 2018-07-11 09:24:49 -04:00
local_single_store_elim_test.cpp Move tests into namespaces (#1689) 2018-07-11 09:24:49 -04:00
local_ssa_elim_test.cpp Move tests into namespaces (#1689) 2018-07-11 09:24:49 -04:00
module_test.cpp Move tests into namespaces (#1689) 2018-07-11 09:24:49 -04:00
module_utils.h Move the ir namespace to opt. (#1680) 2018-07-09 11:32:29 -04:00
optimizer_test.cpp Add API to create passes out of a list of command-line flags. 2018-07-27 15:10:08 -04:00
pass_fixture.h Move tests into namespaces (#1689) 2018-07-11 09:24:49 -04:00
pass_manager_test.cpp use Pass::Run to set the context on each pass. (#1708) 2018-07-12 09:08:45 -04:00
pass_merge_return_test.cpp Update OpPhi instructions after splitting block. (#1783) 2018-08-02 11:02:50 -04:00
pass_remove_duplicates_test.cpp Move tests into namespaces (#1689) 2018-07-11 09:24:49 -04:00
pass_test.cpp use Pass::Run to set the context on each pass. (#1708) 2018-07-12 09:08:45 -04:00
pass_utils.cpp Move tests into namespaces (#1689) 2018-07-11 09:24:49 -04:00
pass_utils.h Move tests into namespaces (#1689) 2018-07-11 09:24:49 -04:00
private_to_local_test.cpp Move tests into namespaces (#1689) 2018-07-11 09:24:49 -04:00
propagator_test.cpp Move tests into namespaces (#1689) 2018-07-11 09:24:49 -04:00
reduce_load_size_test.cpp Move tests into namespaces (#1689) 2018-07-11 09:24:49 -04:00
redundancy_elimination_test.cpp Move tests into namespaces (#1689) 2018-07-11 09:24:49 -04:00
register_liveness.cpp Move tests into namespaces (#1689) 2018-07-11 09:24:49 -04:00
replace_invalid_opc_test.cpp Move tests into namespaces (#1689) 2018-07-11 09:24:49 -04:00
scalar_analysis.cpp Move tests into namespaces (#1689) 2018-07-11 09:24:49 -04:00
scalar_replacement_test.cpp Move tests into namespaces (#1689) 2018-07-11 09:24:49 -04:00
set_spec_const_default_value_test.cpp Move tests into namespaces (#1689) 2018-07-11 09:24:49 -04:00
simplification_test.cpp Move tests into namespaces (#1689) 2018-07-11 09:24:49 -04:00
strength_reduction_test.cpp Move tests into namespaces (#1689) 2018-07-11 09:24:49 -04:00
strip_debug_info_test.cpp Move tests into namespaces (#1689) 2018-07-11 09:24:49 -04:00
strip_reflect_info_test.cpp Move tests into namespaces (#1689) 2018-07-11 09:24:49 -04:00
type_manager_test.cpp Move tests into namespaces (#1689) 2018-07-11 09:24:49 -04:00
types_test.cpp Move tests into namespaces (#1689) 2018-07-11 09:24:49 -04:00
unify_const_test.cpp Move tests into namespaces (#1689) 2018-07-11 09:24:49 -04:00
utils_test.cpp Move tests into namespaces (#1689) 2018-07-11 09:24:49 -04:00
value_table_test.cpp Move tests into namespaces (#1689) 2018-07-11 09:24:49 -04:00
vector_dce_test.cpp Move tests into namespaces (#1689) 2018-07-11 09:24:49 -04:00
workaround1209_test.cpp Move tests into namespaces (#1689) 2018-07-11 09:24:49 -04:00