SPIRV-Tools/source/opt
GregF b0310a4156 ADCE: Add support for function calls
ADCE will now generate correct code in the presence of function calls.
This is needed for opaque type optimization needed by glslang. Currently
all function calls are marked as live. TODO: mark calls live only if they
write a non-local.
2017-08-10 17:30:05 -04:00
..
aggressive_dead_code_elim_pass.cpp ADCE: Add support for function calls 2017-08-10 17:30:05 -04:00
aggressive_dead_code_elim_pass.h ADCE: Add support for function calls 2017-08-10 17:30:05 -04:00
basic_block.cpp Add exhaustive function call inlining to spirv-opt 2017-03-29 18:02:40 -04:00
basic_block.h BlockMerge: Add BlockMergePass 2017-06-27 11:31:33 -04:00
block_merge_pass.cpp Add extension whitelists to size-reduction passes. 2017-07-25 19:14:02 -04:00
block_merge_pass.h Add extension whitelists to size-reduction passes. 2017-07-25 19:14:02 -04:00
build_module.cpp Added --compact-ids to /tools/opt 2017-04-20 10:54:39 -04:00
build_module.h Added --compact-ids to /tools/opt 2017-04-20 10:54:39 -04:00
CMakeLists.txt Inline: Split out InlineExhaustivePass from InlinePass 2017-08-04 17:56:46 -04:00
common_uniform_elim_pass.cpp Add CommonUniformElim pass 2017-08-03 11:34:58 -04:00
common_uniform_elim_pass.h Add CommonUniformElim pass 2017-08-03 11:34:58 -04:00
compact_ids_pass.cpp Added --compact-ids to /tools/opt 2017-04-20 10:54:39 -04:00
compact_ids_pass.h Added --compact-ids to /tools/opt 2017-04-20 10:54:39 -04:00
constants.h Clean up header dependency. 2016-09-22 18:15:23 -04:00
dead_branch_elim_pass.cpp Add MemPass, move all shared functions to it. 2017-08-02 14:24:02 -04:00
dead_branch_elim_pass.h Add MemPass, move all shared functions to it. 2017-08-02 14:24:02 -04:00
def_use_manager.cpp Add LocalMultiStoreElim pass 2017-07-07 17:54:21 -04:00
def_use_manager.h Add LocalMultiStoreElim pass 2017-07-07 17:54:21 -04:00
eliminate_dead_constant_pass.cpp Change interface of Pass::Process() to return possible failures. 2016-09-20 16:40:17 -04:00
eliminate_dead_constant_pass.h Add a C++ interface to the optimization functionalities. 2016-09-20 16:52:05 -04:00
flatten_decoration_pass.cpp Add FlattenDecoration transform 2017-04-06 11:19:56 -04:00
flatten_decoration_pass.h Add FlattenDecoration transform 2017-04-06 11:19:56 -04:00
fold_spec_constant_op_and_composite_pass.cpp Clean up header dependency. 2016-09-22 18:15:23 -04:00
fold_spec_constant_op_and_composite_pass.h Clean up header dependency. 2016-09-22 18:15:23 -04:00
freeze_spec_constant_value_pass.cpp Change interface of Pass::Process() to return possible failures. 2016-09-20 16:40:17 -04:00
freeze_spec_constant_value_pass.h Add a C++ interface to the optimization functionalities. 2016-09-20 16:52:05 -04:00
function.cpp Add exhaustive function call inlining to spirv-opt 2017-03-29 18:02:40 -04:00
function.h Inline: Inline early return function if no returns in loop. 2017-05-12 17:18:00 -04:00
inline_exhaustive_pass.cpp Inline: Split out InlineExhaustivePass from InlinePass 2017-08-04 17:56:46 -04:00
inline_exhaustive_pass.h Inline: Split out InlineExhaustivePass from InlinePass 2017-08-04 17:56:46 -04:00
inline_pass.cpp Inliner: callee can have early return that isn't multi-return 2017-08-10 11:43:44 -04:00
inline_pass.h Inliner: callee can have early return that isn't multi-return 2017-08-10 11:43:44 -04:00
insert_extract_elim.cpp Add extension whitelists to size-reduction passes. 2017-07-25 19:14:02 -04:00
insert_extract_elim.h Add extension whitelists to size-reduction passes. 2017-07-25 19:14:02 -04:00
instruction.cpp Clean up header dependency. 2016-09-22 18:15:23 -04:00
instruction.h Include memory and semantics IDs when iterating over inbound IDs 2017-07-05 10:36:57 -04:00
ir_loader.cpp Change some asserts to normal errors in IrLoader. 2016-09-21 17:22:00 -04:00
ir_loader.h Clean up header dependency. 2016-09-22 18:15:23 -04:00
iterator.h Add exhaustive function call inlining to spirv-opt 2017-03-29 18:02:40 -04:00
local_access_chain_convert_pass.cpp AccessChainConvert: Add HasOnlySupportedRefs() 2017-08-04 18:11:44 -04:00
local_access_chain_convert_pass.h AccessChainConvert: Add HasOnlySupportedRefs() 2017-08-04 18:11:44 -04:00
local_single_block_elim_pass.cpp AccessChainConvert: Add HasOnlySupportedRefs() 2017-08-04 18:11:44 -04:00
local_single_block_elim_pass.h Add MemPass, move all shared functions to it. 2017-08-02 14:24:02 -04:00
local_single_store_elim_pass.cpp AccessChainConvert: Add HasOnlySupportedRefs() 2017-08-04 18:11:44 -04:00
local_single_store_elim_pass.h Add MemPass, move all shared functions to it. 2017-08-02 14:24:02 -04:00
local_ssa_elim_pass.cpp AccessChainConvert: Add HasOnlySupportedRefs() 2017-08-04 18:11:44 -04:00
local_ssa_elim_pass.h AccessChainConvert: Add HasOnlySupportedRefs() 2017-08-04 18:11:44 -04: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 ADCE: Add support for function calls 2017-08-10 17:30:05 -04:00
mem_pass.h ADCE: Add support for function calls 2017-08-10 17:30:05 -04:00
module.cpp Add AggressiveDCEPass 2017-07-10 11:30:25 -04:00
module.h Add AggressiveDCEPass 2017-07-10 11:30:25 -04:00
null_pass.h Add a C++ interface to the optimization functionalities. 2016-09-20 16:52:05 -04:00
optimizer.cpp Inline: Split out InlineExhaustivePass from InlinePass 2017-08-04 17:56:46 -04:00
pass_manager.cpp Change interface of Pass::Process() to return possible failures. 2016-09-20 16:40:17 -04:00
pass_manager.h Clean up header dependency. 2016-09-22 18:15:23 -04:00
pass.h Add a default virtual dtor to Pass and check for missing virtual dtors 2017-03-01 13:34:04 -05:00
passes.h Inline: Split out InlineExhaustivePass from InlinePass 2017-08-04 17:56:46 -04:00
reflect.h Add SPIR-V 1.2 support, for OpenCL 2.2 2017-05-15 17:10:07 -04:00
set_spec_constant_default_value_pass.cpp Add bit pattern interface for setting default value for spec constants 2017-04-21 11:22:47 -04:00
set_spec_constant_default_value_pass.h Add bit pattern interface for setting default value for spec constants 2017-04-21 11:22:47 -04:00
strip_debug_info_pass.cpp Change interface of Pass::Process() to return possible failures. 2016-09-20 16:40:17 -04:00
strip_debug_info_pass.h Add a C++ interface to the optimization functionalities. 2016-09-20 16:52:05 -04:00
type_manager.cpp Fix typo in method name Struct::AddMemberName 2017-04-01 11:19:40 -04:00
type_manager.h Add begin() and end() for TypeManager. 2016-09-30 16:56:42 -04:00
types.cpp Fix typo in method name Struct::AddMemberName 2017-04-01 11:19:40 -04:00
types.h Add SPIR-V 1.2 support, for OpenCL 2.2 2017-05-15 17:10:07 -04:00
unify_const_pass.cpp Change interface of Pass::Process() to return possible failures. 2016-09-20 16:40:17 -04:00
unify_const_pass.h Add a C++ interface to the optimization functionalities. 2016-09-20 16:52:05 -04:00