SPIRV-Tools/source/opt
Lei Zhang 80c94a4fa8 Change the interfaces of in-memory representation to use pointers.
Previously we use vectors of objects and move semantics to handle
ownership. That approach has the flaw that inserting an object into
the middle of a vector, which may trigger a vector reallocation,
can invalidate some addresses taken from instructions.

Now the in-memory representation internally uses vector of unique
pointers to handle ownership. Since objects are explicitly heap-
allocated now, pointers to them won't be invalidated by vector
resizing anymore.
2016-08-10 12:11:33 -04:00
..
basic_block.h Change the interfaces of in-memory representation to use pointers. 2016-08-10 12:11:33 -04:00
CMakeLists.txt Separate pass.h from passes.h 2016-08-09 17:16:52 -04:00
def_use_manager.cpp Optimization: Add def use analysis. 2016-07-29 15:45:14 -04:00
def_use_manager.h Optimization: Add def use analysis. 2016-07-29 15:45:14 -04:00
function.cpp Change the interfaces of in-memory representation to use pointers. 2016-08-10 12:11:33 -04:00
function.h Change the interfaces of in-memory representation to use pointers. 2016-08-10 12:11:33 -04:00
instruction.cpp Manually create move the constructor/assignment for Instruction. 2016-08-09 19:27:13 -04:00
instruction.h Manually create move the constructor/assignment for Instruction. 2016-08-09 19:27:13 -04:00
ir_loader.cpp Change the interfaces of in-memory representation to use pointers. 2016-08-10 12:11:33 -04:00
ir_loader.h Promote ir namespace and create draft libspirv.{h|c}pp. 2016-06-28 14:52:34 -04:00
libspirv.cpp Use friendly disassembly output 2016-07-28 09:39:42 -04:00
libspirv.hpp Use friendly disassembly output 2016-07-28 09:39:42 -04:00
module.cpp Change the interfaces of in-memory representation to use pointers. 2016-08-10 12:11:33 -04:00
module.h Change the interfaces of in-memory representation to use pointers. 2016-08-10 12:11:33 -04:00
pass_manager.h Add Pass, PassManager, and StripDebugInfoPass. 2016-06-29 17:32:00 -04:00
pass.h Separate pass.h from passes.h 2016-08-09 17:16:52 -04:00
passes.cpp Dead constant elimination 2016-08-08 17:17:15 -04:00
passes.h Separate pass.h from passes.h 2016-08-09 17:16:52 -04:00
reflect.h Promote ir namespace and create draft libspirv.{h|c}pp. 2016-06-28 14:52:34 -04:00