SPIRV-Tools/test/opt
Steven Perron d8ca09821d Handle non-constant accesses in memory objects (copy prop arrays)
The first implementation of MemroyObject, which is used in copy
propagate arrays, forced the access chain to be like the access chains
in OpCompositeExtract.  This excluded the possibility of the memory
object from representing an array element that was extracted with a
variable index.   Looking at the code, that restriction is not
neccessary.  I also see some opportunities for doing this in some real
shaders.

Contributes to #1430.
2018-03-28 20:23:47 -04:00
..
dominator_tree Copy propagate arrays 2018-03-26 14:44:41 -04:00
loop_optimizations Add loop peeling utility 2018-03-20 10:21:10 -04:00
aggressive_dead_code_elim_test.cpp Fixes #1404. Don't DCE workgroup size 2018-03-13 19:38:31 -04:00
assembly_builder_test.cpp Re-format source tree - NFC. 2017-11-27 14:31:49 -05:00
assembly_builder.h Adding additional functionality to ADCE. 2018-01-10 08:35:48 -05:00
block_merge_test.cpp Fixes #1402. Don't merge non-branch terminators into loop header. 2018-03-13 22:16:17 -04:00
ccp_test.cpp Fixes #1361. Mark all non-constant global values as varying in CCP 2018-03-01 15:24:41 -05:00
cfg_cleanup_test.cpp Adding OpPhi validation rules. 2018-03-27 17:26:26 -04:00
CMakeLists.txt Initial patch for scalar evolution analysis 2018-03-28 16:34:23 -04:00
common_uniform_elim_test.cpp Fixes missing increment in common uniform elim 2018-01-16 14:47:35 -05:00
compact_ids_test.cpp Re-format source tree - NFC. 2017-11-27 14:31:49 -05:00
copy_prop_array_test.cpp Handle non-constant accesses in memory objects (copy prop arrays) 2018-03-28 20:23:47 -04:00
dead_branch_elim_test.cpp Simplify OpPhi instructions referencing unreachable continues 2018-02-16 18:58:03 -05:00
dead_insert_elim_test.cpp InsertExtractElim: Split out DeadInsertElim as separate pass 2018-01-30 08:52:14 -05:00
dead_variable_elim_test.cpp Add pass to remove dead variables at the module level. 2017-10-23 13:57:05 -04:00
decoration_manager_test.cpp Teach DecorationManager about OpDecorateStringGOOGLE 2018-03-13 22:18:33 -04:00
def_use_test.cpp Preserve analysies in the simplification pass 2018-02-22 16:06:30 -05:00
eliminate_dead_const_test.cpp Re-format source tree - NFC. 2017-11-27 14:31:49 -05:00
eliminate_dead_functions_test.cpp Add scalar replacement 2017-12-11 10:51:13 -05:00
feature_manager_test.cpp Store all enabled capabilities in the feature manger. 2017-12-21 11:14:53 -05:00
flatten_decoration_test.cpp Add FlattenDecoration transform 2017-04-06 11:19:56 -04:00
fold_spec_const_op_composite_test.cpp Implement SSA CCP (SSA Conditional Constant Propagation). 2017-12-21 14:29:45 -05:00
fold_test.cpp Fixes #1385. Grab correct input to calculate indices. 2018-03-07 16:07:40 -05:00
freeze_spec_const_test.cpp Provide friendly names for true and false 2017-01-11 16:33:45 -05:00
function_utils.h Dominator Tree Analysis (#3) 2017-12-05 22:59:43 -05:00
if_conversion_test.cpp Initial implementation of if conversion 2018-01-25 09:42:00 -08:00
inline_opaque_test.cpp Re-format source tree - NFC. 2017-11-27 14:31:49 -05:00
inline_test.cpp Set the parent for basic blocks during inlining. 2017-12-12 13:39:08 -05:00
insert_extract_elim_test.cpp InsertExtractElim: Split out DeadInsertElim as separate pass 2018-01-30 08:52:14 -05:00
instruction_list_test.cpp Change the sections in the module to use the InstructionList class. 2017-10-25 15:52:06 -04:00
instruction_test.cpp Allow getting the base pointer of an image load/store. 2018-01-05 13:26:10 -05:00
ir_builder.cpp Make IR builder use the type manager for constants 2018-02-27 12:59:26 -05:00
ir_context_test.cpp Store all enabled capabilities in the feature manger. 2017-12-21 11:14:53 -05:00
ir_loader_test.cpp Re-format source tree - NFC. 2017-11-27 14:31:49 -05:00
iterator_test.cpp Renaming test files to comply with Google style guide. 2016-11-07 14:41:51 -05:00
line_debug_info_test.cpp Add the IRContext (part 1) 2017-10-31 13:46:05 -04:00
local_access_chain_convert_test.cpp Re-format source tree - NFC. 2017-11-27 14:31:49 -05:00
local_redundancy_elimination_test.cpp Add scalar replacement 2017-12-11 10:51:13 -05:00
local_single_block_elim.cpp Remove uses DCEInst and call ADCE 2018-02-27 21:06:08 -05:00
local_single_store_elim_test.cpp Remove uses DCEInst and call ADCE 2018-02-27 21:06:08 -05:00
local_ssa_elim_test.cpp SSA rewrite pass. 2018-03-20 20:56:55 -04:00
module_test.cpp Adding ostream operators for IR structures 2018-01-12 11:19:58 -05:00
module_utils.h Re-format source tree - NFC. 2017-11-27 14:31:49 -05:00
optimizer_test.cpp Fix optimizer on when to write the binary 2017-04-03 15:48:50 -04:00
pass_fixture.h Add pass to reaplce invalid opcodes 2018-02-01 15:25:09 -05:00
pass_manager_test.cpp Store all enabled capabilities in the feature manger. 2017-12-21 11:14:53 -05:00
pass_merge_return_test.cpp Change merge return pass to handle structured cfg. 2018-03-19 13:49:04 -04:00
pass_remove_duplicates_test.cpp Avoid generating duplicate names when merging types 2018-03-05 12:02:50 -05:00
pass_test.cpp Adding an unique id to Instruction generated by IRContext 2017-11-20 17:49:10 -05:00
pass_utils.cpp Relicense SPIRV-Tools under Apache 2.0 2016-09-02 10:00:29 -04:00
pass_utils.h Add strength reduction; for now replace multiply by power of 2 2017-09-18 17:01:36 -04:00
private_to_local_test.cpp Convert private variables to function scope. 2017-12-19 14:21:04 -05:00
propagator_test.cpp Remove cfg_ field from SSAPropagator class - NFC. 2017-12-04 15:28:21 -05:00
redundancy_elimination_test.cpp Add scalar replacement 2017-12-11 10:51:13 -05:00
replace_invalid_opc_test.cpp Add pass to reaplce invalid opcodes 2018-02-01 15:25:09 -05:00
scalar_analysis.cpp Initial patch for scalar evolution analysis 2018-03-28 16:34:23 -04:00
scalar_replacement_test.cpp SROA: Do replacement on structs with no partial references. 2018-02-08 15:20:02 -05:00
set_spec_const_default_value_test.cpp Re-format source tree - NFC. 2017-11-27 14:31:49 -05:00
simplification_test.cpp Add folding of OpCompositeExtract and OpConstantComposite constant instructions. 2018-02-09 17:52:33 -05:00
strength_reduction_test.cpp Add scalar replacement 2017-12-11 10:51:13 -05:00
strip_debug_info_test.cpp Re-format source tree - NFC. 2017-11-27 14:31:49 -05:00
strip_reflect_info_test.cpp Add --strip-reflect pass 2018-03-15 21:20:42 -04:00
type_manager_test.cpp Fix test inclusion when Effcee is absent 2018-02-06 12:10:50 -05:00
types_test.cpp Fixes #1407. Removing assertion against void pointer 2018-03-13 19:45:20 -04:00
unify_const_test.cpp Add scalar replacement 2017-12-11 10:51:13 -05:00
utils_test.cpp Re-format source tree - NFC. 2017-11-27 14:31:49 -05:00
value_table_test.cpp Compute value number when the value table is constructed. 2017-12-04 11:02:04 -05:00
workaround1209_test.cpp Create a pass to work around a driver bug related to OpUnreachable. 2018-01-18 20:31:46 -05:00