SPIRV-Tools/test/opt
Steven Perron 9d04f82bef
Ensure SROA gets the correct pointer type. (#2247)
We initially assumed that if the type manager returned the correct id
for the pointee type, that we would get the correct pointer type back,
but that is not true.  See the unit test added with this commit.  We
need to fall back to the linear search any time we are looking for a
pointer to a type that may not be unique.

At the same time, SROA considered an OpName on a variable to be a use of
the entire variable.  That has been fixed.

Fixes #2209.
2018-12-19 17:07:29 +00:00
..
dominator_tree Enable precompiled headers for spirv-tools(-shared) and some unit tests (#2026) 2018-11-06 09:26:23 -05:00
loop_optimizations Don't fold specialized branches in loop unswitch (#2245) 2018-12-19 04:40:30 +00:00
aggressive_dead_code_elim_test.cpp Invalidate the decoration manager at the start of ADCE. (#2189) 2018-12-10 13:24:33 -05:00
assembly_builder_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
assembly_builder.h Rewrite include guards (#1793) 2018-08-03 08:05:33 -04:00
block_merge_test.cpp Make EFFCEE required (#1943) 2018-10-04 10:00:11 -04:00
ccp_test.cpp Make EFFCEE required (#1943) 2018-10-04 10:00:11 -04:00
cfg_cleanup_test.cpp Add validation for execution modes 2018-10-02 10:22:23 -04:00
CMakeLists.txt Add PCH_FILE for upgrade_memory_model target. MSVC doesn't like building pass_utils.cpp twice in the same folder with different PCH settings. (#2186) 2018-12-10 10:54:19 -05:00
combine_access_chains_test.cpp Make EFFCEE required (#1943) 2018-10-04 10:00:11 -04:00
common_uniform_elim_test.cpp Place load after OpPhi instructions in block. (#2246) 2018-12-19 15:18:22 +00:00
compact_ids_test.cpp Validate the input to Optimizer::Run (#1799) 2018-08-08 11:16:19 -04:00
constant_manager_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
copy_prop_array_test.cpp Add a nullptr check to array copy propagation. (#1987) 2018-10-19 12:53:40 -04:00
dead_branch_elim_test.cpp Fix dead branch elim infinite loop. (#2009) 2018-10-24 09:10:30 -04:00
dead_insert_elim_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
dead_variable_elim_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
decoration_manager_test.cpp Handle decoration groups with no decorations. (#1921) 2018-09-28 14:16:04 -04:00
def_use_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
eliminate_dead_const_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
eliminate_dead_functions_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
feature_manager_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
flatten_decoration_test.cpp Add validation for execution modes 2018-10-02 10:22:23 -04:00
fold_spec_const_op_composite_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
fold_test.cpp Remove undefined behaviour when folding shifts. (#2157) 2018-12-04 10:04:02 -05:00
freeze_spec_const_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
function_test.cpp Don't inline recursive functions. (#2130) 2018-11-29 14:24:58 -05:00
function_utils.h Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
if_conversion_test.cpp Fix restrictions in if conversion (#1998) 2018-10-19 15:16:46 -04:00
inline_opaque_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
inline_test.cpp Don't inline recursive functions. (#2130) 2018-11-29 14:24:58 -05:00
insert_extract_elim_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
inst_bindless_check_test.cpp Add base and core bindless validation instrumentation classes (#2014) 2018-11-08 13:54:54 -05:00
instruction_list_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
instruction_test.cpp Instruction::GetBaseAddress to handle OpPtrAccessChain (#2050) 2018-11-14 12:42:25 -05:00
ir_builder.cpp Recognize OpTypeAccelerationStructureNV as a type instruction (#2190) 2018-12-11 19:03:55 -05:00
ir_context_test.cpp Document in the context what happens with id overflow. (#2159) 2018-12-06 09:07:00 -05:00
ir_loader_test.cpp Remove source/message.h (#1838) 2018-08-14 15:41:21 -04:00
iterator_test.cpp Move make_unique to source/util. (#1836) 2018-08-14 12:44:54 -04:00
line_debug_info_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
local_access_chain_convert_test.cpp Make EFFCEE required (#1943) 2018-10-04 10:00:11 -04:00
local_redundancy_elimination_test.cpp Make EFFCEE required (#1943) 2018-10-04 10:00:11 -04:00
local_single_block_elim.cpp Validate pointer variables (#2111) 2018-11-27 16:47:10 -05:00
local_single_store_elim_test.cpp Validate pointer variables (#2111) 2018-11-27 16:47:10 -05:00
local_ssa_elim_test.cpp SSA-rewriter: make sure phi entries are unique. (#2206) 2018-12-18 18:14:27 +00:00
module_test.cpp Add option for the max id bound. (#1870) 2018-09-10 11:49:41 -04:00
module_utils.h Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
optimizer_test.cpp Validate the input to Optimizer::Run (#1799) 2018-08-08 11:16:19 -04:00
pass_fixture.h Update memory model (#1904) 2018-11-30 14:15:51 -05:00
pass_manager_test.cpp Move make_unique to source/util. (#1836) 2018-08-14 12:44:54 -04:00
pass_merge_return_test.cpp Fix invalid OpPhi generated by merge-return. (#2172) 2018-12-07 14:10:30 -05:00
pass_remove_duplicates_test.cpp Fixup readabilty/inheritance warnings (#1805) 2018-08-07 09:10:03 -04:00
pass_utils.cpp Check for unreachable blocks in merge-return. (#1966) 2018-10-10 15:18:15 -04:00
pass_utils.h Fix gtest.h include in test/opt/pass_utils.h 2018-10-12 10:22:25 -04:00
pch_test_opt.cpp Rename PCH macro to spvtools_pch to avoid conflicts with other projects. Also add pch to test/opt. (#2034) 2018-11-07 09:15:04 -05:00
pch_test_opt.h Rename PCH macro to spvtools_pch to avoid conflicts with other projects. Also add pch to test/opt. (#2034) 2018-11-07 09:15:04 -05:00
private_to_local_test.cpp Make EFFCEE required (#1943) 2018-10-04 10:00:11 -04:00
process_lines_test.cpp Add passes to propagate and eliminate redundant line instructions (#2027). (#2039) 2018-11-15 14:06:17 -05:00
propagator_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
reduce_load_size_test.cpp Make EFFCEE required (#1943) 2018-10-04 10:00:11 -04:00
redundancy_elimination_test.cpp Make EFFCEE required (#1943) 2018-10-04 10:00:11 -04:00
register_liveness.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
replace_invalid_opc_test.cpp Check for unreachable blocks in merge-return. (#1966) 2018-10-10 15:18:15 -04:00
scalar_analysis.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
scalar_replacement_test.cpp Ensure SROA gets the correct pointer type. (#2247) 2018-12-19 17:07:29 +00:00
set_spec_const_default_value_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
simplification_test.cpp Make EFFCEE required (#1943) 2018-10-04 10:00:11 -04:00
strength_reduction_test.cpp Make EFFCEE required (#1943) 2018-10-04 10:00:11 -04:00
strip_debug_info_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
strip_reflect_info_test.cpp Remove MemberDecorateStringGOOGLE during stript-refect. (#2021) 2018-10-30 16:17:35 -04:00
struct_cfg_analysis_test.cpp Fix infinite loop in dead-branch-elimination (#1891) 2018-09-17 13:00:24 -04:00
type_manager_test.cpp Recognize OpTypeAccelerationStructureNV as a type instruction (#2190) 2018-12-11 19:03:55 -05:00
types_test.cpp Recognize OpTypeAccelerationStructureNV as a type instruction (#2190) 2018-12-11 19:03:55 -05:00
unify_const_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
upgrade_memory_model_test.cpp Update memory model (#1904) 2018-11-30 14:15:51 -05:00
utils_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
value_table_test.cpp Cleanup includes. (#1795) 2018-08-03 15:06:09 -04:00
vector_dce_test.cpp Make EFFCEE required (#1943) 2018-10-04 10:00:11 -04:00
workaround1209_test.cpp Make EFFCEE required (#1943) 2018-10-04 10:00:11 -04:00