Linker: Eliminate uncalled functions, because they can be ill-defined.
authorJohn Kessenich <cepheus@frii.com>
Sat, 10 Dec 2016 02:22:20 +0000 (19:22 -0700)
committerJohn Kessenich <cepheus@frii.com>
Sat, 10 Dec 2016 02:22:20 +0000 (19:22 -0700)
commit906cc21816330c8983934d81d3e08b8a2460c7c8
treeb843940d955973187e8cab995a60189701236e76
parentbf6d7f43fd10e0ceb83889aa054591b83526b43a
Linker: Eliminate uncalled functions, because they can be ill-defined.

Fixes issue #610. Also provides a testing option to keep uncalled functions.
68 files changed:
StandAlone/StandAlone.cpp
Test/baseResults/100.frag.out
Test/baseResults/100scope.vert.out
Test/baseResults/110scope.vert.out
Test/baseResults/120.frag.out
Test/baseResults/120.vert.out
Test/baseResults/130.frag.out
Test/baseResults/130.vert.out
Test/baseResults/140.frag.out
Test/baseResults/140.vert.out
Test/baseResults/150.frag.out
Test/baseResults/150.geom.out
Test/baseResults/150.tesc.out
Test/baseResults/300.frag.out
Test/baseResults/300.vert.out
Test/baseResults/300scope.vert.out
Test/baseResults/310.comp.out
Test/baseResults/310.frag.out
Test/baseResults/310.geom.out
Test/baseResults/310.tesc.out
Test/baseResults/310.tese.out
Test/baseResults/310.vert.out
Test/baseResults/310AofA.vert.out
Test/baseResults/330.frag.out
Test/baseResults/400.frag.out
Test/baseResults/400.geom.out
Test/baseResults/400.tesc.out
Test/baseResults/400.vert.out
Test/baseResults/410.geom.out
Test/baseResults/420.geom.out
Test/baseResults/420.tesc.out
Test/baseResults/420.vert.out
Test/baseResults/420_size_gl_in.geom.out
Test/baseResults/430.comp.out
Test/baseResults/430.vert.out
Test/baseResults/430AofA.frag.out
Test/baseResults/430scope.vert.out
Test/baseResults/440.frag.out
Test/baseResults/440.vert.out
Test/baseResults/450.frag.out
Test/baseResults/array.frag.out
Test/baseResults/array100.frag.out
Test/baseResults/atomic_uint.frag.out
Test/baseResults/constFold.frag.out
Test/baseResults/cppComplexExpr.vert.out
Test/baseResults/cppNest.vert.out
Test/baseResults/cppSimple.vert.out
Test/baseResults/dce.frag.out
Test/baseResults/functionSemantics.frag.out
Test/baseResults/hlsl.deadFunctionMissingBody.vert.out [new file with mode: 0644]
Test/baseResults/lineContinuation.vert.out
Test/baseResults/lineContinuation100.vert.out
Test/baseResults/mains1.frag.out
Test/baseResults/missingBodies.vert.out
Test/baseResults/noMain.vert.out
Test/baseResults/precise.tesc.out
Test/baseResults/precise_struct_block.vert.out
Test/baseResults/precision.frag.out
Test/baseResults/recurse1.vert.out
Test/baseResults/specExamples.frag.out
Test/hlsl.deadFunctionMissingBody.vert [new file with mode: 0644]
Test/runtests
glslang/Include/revision.h
glslang/MachineIndependent/ShaderLang.cpp
glslang/MachineIndependent/linkValidate.cpp
glslang/MachineIndependent/localintermediate.h
glslang/Public/ShaderLang.h
gtests/TestFixture.cpp