Don't remove SPIR-V blocks before codegen.
authorDejan Mircevski <deki@google.com>
Wed, 20 Jan 2016 02:13:38 +0000 (21:13 -0500)
committerDejan Mircevski <deki@google.com>
Wed, 20 Jan 2016 02:18:14 +0000 (21:18 -0500)
commited55bcd9f869d7017be1cb403abd4de5c6361b30
tree389fe9076dd2139907b35d224fd0033244ab6fbe
parent33782795d9c3db2703d2cdbf1637ef320e4028d3
Don't remove SPIR-V blocks before codegen.

A removed block releases its instructions, so Module::idToInstruction
suddenly contains dangling references.  The original motivation for
block removal was to skip some unreachable blocks, but that's already
achieved by InReadableOrder.cpp.

Also updated stale comments.
17 files changed:
SPIRV/GlslangToSpv.cpp
SPIRV/SpvBuilder.cpp
SPIRV/spvIR.h
Test/baseResults/spv.100ops.frag.out
Test/baseResults/spv.140.frag.out
Test/baseResults/spv.AofA.frag.out
Test/baseResults/spv.atomic.comp.out
Test/baseResults/spv.bool.vert.out
Test/baseResults/spv.for-notest.vert.out
Test/baseResults/spv.forwardFun.frag.out
Test/baseResults/spv.functionCall.frag.out
Test/baseResults/spv.functionSemantics.frag.out
Test/baseResults/spv.matFun.vert.out
Test/baseResults/spv.precision.frag.out
Test/baseResults/spv.shortCircuit.frag.out
Test/baseResults/spv.simpleFunctionCall.frag.out
Test/baseResults/spv.switch.frag.out