From 906cc21816330c8983934d81d3e08b8a2460c7c8 Mon Sep 17 00:00:00 2001 From: John Kessenich Date: Fri, 9 Dec 2016 19:22:20 -0700 Subject: [PATCH] Linker: Eliminate uncalled functions, because they can be ill-defined. Fixes issue #610. Also provides a testing option to keep uncalled functions. --- StandAlone/StandAlone.cpp | 53 +- Test/baseResults/100.frag.out | 186 ---- Test/baseResults/100scope.vert.out | 14 - Test/baseResults/110scope.vert.out | 14 - Test/baseResults/120.frag.out | 528 ---------- Test/baseResults/120.vert.out | 279 ----- Test/baseResults/130.frag.out | 320 ------ Test/baseResults/130.vert.out | 17 - Test/baseResults/140.frag.out | 52 - Test/baseResults/140.vert.out | 65 -- Test/baseResults/150.frag.out | 84 -- Test/baseResults/150.geom.out | 28 - Test/baseResults/150.tesc.out | 64 -- Test/baseResults/300.frag.out | 125 --- Test/baseResults/300.vert.out | 126 --- Test/baseResults/300scope.vert.out | 10 - Test/baseResults/310.comp.out | 334 ------ Test/baseResults/310.frag.out | 671 ------------ Test/baseResults/310.geom.out | 68 -- Test/baseResults/310.tesc.out | 166 --- Test/baseResults/310.tese.out | 13 - Test/baseResults/310.vert.out | 687 ------------ Test/baseResults/310AofA.vert.out | 271 ----- Test/baseResults/330.frag.out | 25 - Test/baseResults/400.frag.out | 306 ------ Test/baseResults/400.geom.out | 975 ------------------ Test/baseResults/400.tesc.out | 29 - Test/baseResults/400.vert.out | 18 - Test/baseResults/410.geom.out | 29 - Test/baseResults/420.geom.out | 105 -- Test/baseResults/420.tesc.out | 35 - Test/baseResults/420.vert.out | 171 --- Test/baseResults/420_size_gl_in.geom.out | 20 - Test/baseResults/430.comp.out | 71 -- Test/baseResults/430.vert.out | 129 --- Test/baseResults/430AofA.frag.out | 28 - Test/baseResults/430scope.vert.out | 14 - Test/baseResults/440.frag.out | 29 - Test/baseResults/440.vert.out | 31 - Test/baseResults/450.frag.out | 51 - Test/baseResults/array.frag.out | 65 -- Test/baseResults/array100.frag.out | 23 - Test/baseResults/atomic_uint.frag.out | 32 - Test/baseResults/constFold.frag.out | 114 -- Test/baseResults/cppComplexExpr.vert.out | 35 - Test/baseResults/cppNest.vert.out | 11 - Test/baseResults/cppSimple.vert.out | 13 - Test/baseResults/dce.frag.out | 122 --- Test/baseResults/functionSemantics.frag.out | 13 - .../hlsl.deadFunctionMissingBody.vert.out | 25 + Test/baseResults/lineContinuation.vert.out | 29 - Test/baseResults/lineContinuation100.vert.out | 10 - Test/baseResults/mains1.frag.out | 4 - Test/baseResults/missingBodies.vert.out | 19 - Test/baseResults/noMain.vert.out | 2 - Test/baseResults/precise.tesc.out | 370 ------- .../baseResults/precise_struct_block.vert.out | 509 --------- Test/baseResults/precision.frag.out | 12 - Test/baseResults/recurse1.vert.out | 168 --- Test/baseResults/specExamples.frag.out | 11 - Test/hlsl.deadFunctionMissingBody.vert | 8 + Test/runtests | 11 +- glslang/Include/revision.h | 2 +- glslang/MachineIndependent/ShaderLang.cpp | 2 +- glslang/MachineIndependent/linkValidate.cpp | 26 +- .../MachineIndependent/localintermediate.h | 4 +- glslang/Public/ShaderLang.h | 1 + gtests/TestFixture.cpp | 2 + 68 files changed, 101 insertions(+), 7783 deletions(-) create mode 100644 Test/baseResults/hlsl.deadFunctionMissingBody.vert.out create mode 100644 Test/hlsl.deadFunctionMissingBody.vert diff --git a/StandAlone/StandAlone.cpp b/StandAlone/StandAlone.cpp index e6c0ab70..84c80f58 100644 --- a/StandAlone/StandAlone.cpp +++ b/StandAlone/StandAlone.cpp @@ -60,29 +60,30 @@ extern "C" { // Command-line options enum TOptions { - EOptionNone = 0, - EOptionIntermediate = (1 << 0), - EOptionSuppressInfolog = (1 << 1), - EOptionMemoryLeakMode = (1 << 2), - EOptionRelaxedErrors = (1 << 3), - EOptionGiveWarnings = (1 << 4), - EOptionLinkProgram = (1 << 5), - EOptionMultiThreaded = (1 << 6), - EOptionDumpConfig = (1 << 7), - EOptionDumpReflection = (1 << 8), - EOptionSuppressWarnings = (1 << 9), - EOptionDumpVersions = (1 << 10), - EOptionSpv = (1 << 11), - EOptionHumanReadableSpv = (1 << 12), - EOptionVulkanRules = (1 << 13), - EOptionDefaultDesktop = (1 << 14), - EOptionOutputPreprocessed = (1 << 15), - EOptionOutputHexadecimal = (1 << 16), - EOptionReadHlsl = (1 << 17), - EOptionCascadingErrors = (1 << 18), - EOptionAutoMapBindings = (1 << 19), + EOptionNone = 0, + EOptionIntermediate = (1 << 0), + EOptionSuppressInfolog = (1 << 1), + EOptionMemoryLeakMode = (1 << 2), + EOptionRelaxedErrors = (1 << 3), + EOptionGiveWarnings = (1 << 4), + EOptionLinkProgram = (1 << 5), + EOptionMultiThreaded = (1 << 6), + EOptionDumpConfig = (1 << 7), + EOptionDumpReflection = (1 << 8), + EOptionSuppressWarnings = (1 << 9), + EOptionDumpVersions = (1 << 10), + EOptionSpv = (1 << 11), + EOptionHumanReadableSpv = (1 << 12), + EOptionVulkanRules = (1 << 13), + EOptionDefaultDesktop = (1 << 14), + EOptionOutputPreprocessed = (1 << 15), + EOptionOutputHexadecimal = (1 << 16), + EOptionReadHlsl = (1 << 17), + EOptionCascadingErrors = (1 << 18), + EOptionAutoMapBindings = (1 << 19), EOptionFlattenUniformArrays = (1 << 20), - EOptionNoStorageFormat = (1 << 21), + EOptionNoStorageFormat = (1 << 21), + EOptionKeepUncalled = (1 << 21), }; // @@ -310,6 +311,9 @@ void ProcessArguments(int argc, char* argv[]) } else Error("no provided for --source-entrypoint"); break; + } else if (lowerword == "keep-uncalled" || // synonyms + lowerword == "ku") { + Options |= EOptionKeepUncalled; } else { usage(); } @@ -459,6 +463,8 @@ void SetMessageOptions(EShMessages& messages) messages = (EShMessages)(messages | EShMsgReadHlsl); if (Options & EOptionCascadingErrors) messages = (EShMessages)(messages | EShMsgCascadingErrors); + if (Options & EOptionKeepUncalled) + messages = (EShMessages)(messages | EShMsgKeepUncalled); } // @@ -978,6 +984,9 @@ void usage() "\n" " --source-entrypoint name the given shader source function is renamed to be the entry point given in -e\n" " --sep synonym for --source-entrypoint\n" + "\n" + " --keep-uncalled don't eliminate uncalled functions when linking\n" + " --ku synonym for --keep-uncalled\n" ); exit(EFailUsage); diff --git a/Test/baseResults/100.frag.out b/Test/baseResults/100.frag.out index 74a597ff..42635d3b 100644 --- a/Test/baseResults/100.frag.out +++ b/Test/baseResults/100.frag.out @@ -507,123 +507,6 @@ ERROR: node is still EOpNull! 0:38 's2' (temp structure{temp mediump float f, temp 10-element array of mediump float a}) 0:38 true case is null 0:40 'b' (temp mediump int) -0:54 Function Definition: foo10( (global void) -0:54 Function Parameters: -0:67 Function Definition: f11(s21; (global void) -0:67 Function Parameters: -0:67 'p2d' (in lowp sampler2D) -0:87 Function Definition: foo234( (global void) -0:87 Function Parameters: -0:89 Sequence -0:89 texture (global highp 4-component vector of float) -0:89 's3D2' (uniform highp sampler3D) -0:89 Constant: -0:89 0.200000 -0:89 0.200000 -0:89 0.200000 -0:89 Constant: -0:89 0.200000 -0:90 textureProj (global highp 4-component vector of float) -0:90 's3D2' (uniform highp sampler3D) -0:90 direct index (smooth temp mediump 4-component vector of float) -0:90 'v' (smooth in 3-element array of mediump 4-component vector of float) -0:90 Constant: -0:90 1 (const int) -0:90 Constant: -0:90 0.400000 -0:91 dPdx (global mediump 4-component vector of float) -0:91 direct index (smooth temp mediump 4-component vector of float) -0:91 'v' (smooth in 3-element array of mediump 4-component vector of float) -0:91 Constant: -0:91 0 (const int) -0:92 Constant: -0:92 0.000000 -0:93 fwidth (global mediump float) -0:93 'f13' (invariant global mediump float) -0:98 Function Definition: foo236( (global void) -0:98 Function Parameters: -0:100 Sequence -0:100 dPdx (global mediump 4-component vector of float) -0:100 direct index (smooth temp mediump 4-component vector of float) -0:100 'v' (smooth in 3-element array of mediump 4-component vector of float) -0:100 Constant: -0:100 0 (const int) -0:101 Constant: -0:101 0.000000 -0:102 fwidth (global mediump float) -0:102 'f13' (invariant global mediump float) -0:103 move second child to first child (temp mediump float) -0:103 'gl_FragDepth' (temp mediump float) -0:103 'f13' (invariant global mediump float) -0:104 move second child to first child (temp highp float) -0:104 'gl_FragDepthEXT' (gl_FragDepth highp float FragDepth) -0:104 'f13' (invariant global mediump float) -0:109 Function Definition: foo239( (global void) -0:109 Function Parameters: -0:111 Sequence -0:111 move second child to first child (temp mediump float) -0:111 'gl_FragDepth' (temp mediump float) -0:111 'f13' (invariant global mediump float) -0:112 move second child to first child (temp highp float) -0:112 'gl_FragDepthEXT' (gl_FragDepth highp float FragDepth) -0:112 'f13' (invariant global mediump float) -0:119 Function Definition: foo245( (global void) -0:119 Function Parameters: -0:121 Sequence -0:121 texture (global lowp 4-component vector of float) -0:121 'sExt' (uniform lowp samplerExternalOES) -0:121 Constant: -0:121 0.200000 -0:121 0.200000 -0:122 textureProj (global lowp 4-component vector of float) -0:122 'sExt' (uniform lowp samplerExternalOES) -0:122 Construct vec3 (temp lowp 3-component vector of float) -0:122 'f13' (invariant global mediump float) -0:123 textureProj (global lowp 4-component vector of float, operation at mediump) -0:123 'sExt' (uniform lowp samplerExternalOES) -0:123 direct index (smooth temp mediump 4-component vector of float) -0:123 'v' (smooth in 3-element array of mediump 4-component vector of float) -0:123 Constant: -0:123 2 (const int) -0:130 Function Definition: foo246( (global void) -0:130 Function Parameters: -0:132 Sequence -0:132 texture (global mediump 4-component vector of float) -0:132 'mediumExt' (uniform mediump samplerExternalOES) -0:132 Constant: -0:132 0.200000 -0:132 0.200000 -0:133 textureProj (global highp 4-component vector of float) -0:133 'highExt' (uniform highp samplerExternalOES) -0:133 direct index (smooth temp mediump 4-component vector of float) -0:133 'v' (smooth in 3-element array of mediump 4-component vector of float) -0:133 Constant: -0:133 2 (const int) -0:134 Constant: -0:134 0.000000 -0:135 Constant: -0:135 0.000000 -0:137 Bitwise not (temp mediump int) -0:137 'a' (temp mediump int) -0:138 inclusive-or (temp mediump int) -0:138 'a' (temp mediump int) -0:138 'a' (temp mediump int) -0:139 bitwise and (temp mediump int) -0:139 'a' (temp mediump int) -0:139 'a' (temp mediump int) -0:145 Function Definition: foo203940(i1;f1;f1; (global mediump int) -0:145 Function Parameters: -0:145 'a' (in mediump int) -0:145 'b' (in mediump float) -0:147 Sequence -0:147 textureProjGrad (global lowp 4-component vector of float, operation at mediump) -0:147 's2Dg' (uniform lowp sampler2D) -0:147 Construct vec3 (temp mediump 3-component vector of float) -0:147 'f13' (invariant global mediump float) -0:147 'uv2' (invariant uniform mediump 2-component vector of float) -0:147 'uv2' (invariant uniform mediump 2-component vector of float) -0:148 Branch: Return with expression -0:148 'a' (in mediump int) 0:151 Sequence 0:151 move second child to first child (temp mediump float) 0:151 'f123' (global mediump float) @@ -634,75 +517,6 @@ ERROR: node is still EOpNull! 0:152 'f124' (global mediump float) 0:152 Constant: 0:152 50000000000.000000 -0:158 Function Definition: foo323433( (global void) -0:158 Function Parameters: -0:160 Sequence -0:160 textureLod (global lowp 4-component vector of float, operation at mediump) -0:160 's2Dg' (uniform lowp sampler2D) -0:160 'uv2' (invariant uniform mediump 2-component vector of float) -0:160 'f13' (invariant global mediump float) -0:161 textureProjGrad (global lowp 4-component vector of float, operation at mediump) -0:161 's2Dg' (uniform lowp sampler2D) -0:161 Construct vec3 (temp mediump 3-component vector of float) -0:161 'f13' (invariant global mediump float) -0:161 'uv2' (invariant uniform mediump 2-component vector of float) -0:161 'uv2' (invariant uniform mediump 2-component vector of float) -0:162 textureGrad (global lowp 4-component vector of float, operation at mediump) -0:162 's2Dg' (uniform lowp sampler2D) -0:162 'uv2' (invariant uniform mediump 2-component vector of float) -0:162 'uv2' (invariant uniform mediump 2-component vector of float) -0:162 'uv2' (invariant uniform mediump 2-component vector of float) -0:163 textureGrad (global lowp 4-component vector of float) -0:163 'sCube' (uniform lowp samplerCube) -0:163 Construct vec3 (temp lowp 3-component vector of float) -0:163 'f13' (invariant global mediump float) -0:163 Construct vec3 (temp lowp 3-component vector of float) -0:163 'f13' (invariant global mediump float) -0:163 Construct vec3 (temp lowp 3-component vector of float) -0:163 'f13' (invariant global mediump float) -0:167 Function Definition: fgfg(f1;i1; (global mediump int) -0:167 Function Parameters: -0:167 'f' (in mediump float) -0:167 'i' (in highp int) -0:167 Sequence -0:167 Branch: Return with expression -0:167 Constant: -0:167 2 (const int) -0:173 Function Definition: gggf(f1; (global mediump int) -0:173 Function Parameters: -0:173 'f' (in mediump float) -0:173 Sequence -0:173 Branch: Return with expression -0:173 Constant: -0:173 2 (const int) -0:175 Function Definition: agggf(f1; (global mediump int) -0:175 Function Parameters: -0:175 'f' (in mediump float) -0:175 Sequence -0:175 Branch: Return with expression -0:175 Constant: -0:175 2 (const int) -0:187 Function Definition: badswizzle( (global void) -0:187 Function Parameters: -0:? Sequence -0:190 'a' (temp 5-element array of mediump 3-component vector of float) -0:191 'a' (temp 5-element array of mediump 3-component vector of float) -0:192 'a' (temp 5-element array of mediump 3-component vector of float) -0:193 Constant: -0:193 5 (const int) -0:194 Constant: -0:194 0.000000 -0:199 Function Definition: fooinittest( (global mediump float) -0:199 Function Parameters: -0:201 Sequence -0:201 Branch: Return with expression -0:201 Function Call: fooinit( (global mediump float) -0:209 Function Definition: fooinit( (global mediump float) -0:209 Function Parameters: -0:211 Sequence -0:211 Branch: Return with expression -0:211 Constant: -0:211 12.000000 0:214 Sequence 0:214 move second child to first child (temp mediump int) 0:214 'init1' (global mediump int) diff --git a/Test/baseResults/100scope.vert.out b/Test/baseResults/100scope.vert.out index 44132bde..17423dc2 100644 --- a/Test/baseResults/100scope.vert.out +++ b/Test/baseResults/100scope.vert.out @@ -150,20 +150,6 @@ ERROR: node is still EOpNull! 0:8 1.000000 0:11 Branch: Return with expression 0:11 'a' (in highp int) -0:25 Function Definition: cos(f1; (global highp float) -0:25 Function Parameters: -0:25 'x' (in highp float) -0:27 Sequence -0:27 Branch: Return with expression -0:27 Constant: -0:27 1.000000 -0:29 Function Definition: radians(b1; (global bool) -0:29 Function Parameters: -0:29 'x' (in bool) -0:31 Sequence -0:31 Branch: Return with expression -0:31 Constant: -0:31 true (const bool) 0:36 Function Definition: main( (global void) 0:36 Function Parameters: 0:? Sequence diff --git a/Test/baseResults/110scope.vert.out b/Test/baseResults/110scope.vert.out index e71bba38..74002ba7 100644 --- a/Test/baseResults/110scope.vert.out +++ b/Test/baseResults/110scope.vert.out @@ -154,20 +154,6 @@ ERROR: node is still EOpNull! 0:8 1.000000 0:11 Branch: Return with expression 0:11 'a' (in int) -0:25 Function Definition: cos(f1; (global float) -0:25 Function Parameters: -0:25 'x' (in float) -0:27 Sequence -0:27 Branch: Return with expression -0:27 Constant: -0:27 1.000000 -0:29 Function Definition: radians(b1; (global bool) -0:29 Function Parameters: -0:29 'x' (in bool) -0:31 Sequence -0:31 Branch: Return with expression -0:31 Constant: -0:31 true (const bool) 0:34 Sequence 0:34 move second child to first child (temp int) 0:34 'gi' (global int) diff --git a/Test/baseResults/120.frag.out b/Test/baseResults/120.frag.out index 4fa76000..79898aaf 100644 --- a/Test/baseResults/120.frag.out +++ b/Test/baseResults/120.frag.out @@ -630,537 +630,9 @@ Shader version: 120 Requested GL_ARB_shader_texture_lod Requested GL_ARB_texture_rectangle ERROR: node is still EOpNull! -0:21 Function Definition: main( (global void) -0:21 Function Parameters: -0:23 Sequence -0:23 Sequence -0:23 move second child to first child (temp 2X3 matrix of float) -0:23 'm23' (temp 2X3 matrix of float) -0:23 Construct mat2x3 (temp 2X3 matrix of float) -0:23 'm' (uniform 4X2 matrix of float) -0:27 Sequence -0:27 move second child to first child (temp structure{global float f}) -0:27 'sv' (temp structure{global float f}) -0:27 Construct structure (temp structure{global float f}) -0:27 Convert int to float (temp float) -0:27 'a' (temp int) -0:28 Sequence -0:28 move second child to first child (temp 2-element array of float) -0:28 'ia' (temp 2-element array of float) -0:28 Construct float (temp 2-element array of float) -0:28 Constant: -0:28 3.000000 -0:28 direct index (temp float) -0:28 'i' (smooth in 4-component vector of float) -0:28 Constant: -0:28 1 (const int) -0:29 Sequence -0:29 move second child to first child (temp float) -0:29 'f1' (temp float) -0:29 Constant: -0:29 1.000000 -0:30 Sequence -0:30 move second child to first child (temp float) -0:30 'f' (temp float) -0:30 Convert int to float (temp float) -0:30 'a' (temp int) -0:31 move second child to first child (temp float) -0:31 'f' (temp float) -0:31 Convert int to float (temp float) -0:31 'a' (temp int) -0:33 Sequence -0:33 move second child to first child (temp 3-component vector of float) -0:33 'v3' (temp 3-component vector of float) -0:33 Convert int to float (temp 3-component vector of float) -0:33 'iv3' (temp 3-component vector of int) -0:34 move second child to first child (temp float) -0:34 'f' (temp float) -0:34 add (temp float) -0:34 'f' (temp float) -0:34 Convert int to float (temp float) -0:34 'a' (temp int) -0:35 move second child to first child (temp float) -0:35 'f' (temp float) -0:35 subtract (temp float) -0:35 Convert int to float (temp float) -0:35 'a' (temp int) -0:35 'f' (temp float) -0:36 add second child into first child (temp float) -0:36 'f' (temp float) -0:36 Convert int to float (temp float) -0:36 'a' (temp int) -0:37 move second child to first child (temp float) -0:37 'f' (temp float) -0:37 subtract (temp float) -0:37 Convert int to float (temp float) -0:37 'a' (temp int) -0:37 'f' (temp float) -0:38 multiply second child into first child (temp 3-component vector of float) -0:38 'v3' (temp 3-component vector of float) -0:38 Convert int to float (temp 3-component vector of float) -0:38 'iv3' (temp 3-component vector of int) -0:39 move second child to first child (temp 3-component vector of float) -0:39 'v3' (temp 3-component vector of float) -0:39 divide (temp 3-component vector of float) -0:39 Convert int to float (temp 3-component vector of float) -0:39 'iv3' (temp 3-component vector of int) -0:39 Constant: -0:39 2.000000 -0:40 move second child to first child (temp 3-component vector of float) -0:40 'v3' (temp 3-component vector of float) -0:40 vector-scale (temp 3-component vector of float) -0:40 Constant: -0:40 3.000000 -0:40 Convert int to float (temp 3-component vector of float) -0:40 'iv3' (temp 3-component vector of int) -0:41 move second child to first child (temp 3-component vector of float) -0:41 'v3' (temp 3-component vector of float) -0:41 vector-scale (temp 3-component vector of float) -0:41 Constant: -0:41 2.000000 -0:41 'v3' (temp 3-component vector of float) -0:42 move second child to first child (temp 3-component vector of float) -0:42 'v3' (temp 3-component vector of float) -0:42 subtract (temp 3-component vector of float) -0:42 'v3' (temp 3-component vector of float) -0:42 Constant: -0:42 2.000000 -0:43 Test condition and select (temp void) -0:43 Condition -0:47 logical-or (temp bool) -0:46 logical-or (temp bool) -0:45 logical-or (temp bool) -0:44 logical-or (temp bool) -0:43 logical-or (temp bool) -0:43 Compare Less Than (temp bool) -0:43 'f' (temp float) -0:43 Convert int to float (temp float) -0:43 'a' (temp int) -0:44 Compare Less Than or Equal (temp bool) -0:44 Convert int to float (temp float) -0:44 'a' (temp int) -0:44 'f' (temp float) -0:45 Compare Greater Than (temp bool) -0:45 'f' (temp float) -0:45 Convert int to float (temp float) -0:45 'a' (temp int) -0:46 Compare Greater Than or Equal (temp bool) -0:46 'f' (temp float) -0:46 Convert int to float (temp float) -0:46 'a' (temp int) -0:47 Compare Equal (temp bool) -0:47 Convert int to float (temp float) -0:47 'a' (temp int) -0:47 'f' (temp float) -0:48 Compare Not Equal (temp bool) -0:48 'f' (temp float) -0:48 Convert int to float (temp float) -0:48 'a' (temp int) -0:43 true case is null -0:49 move second child to first child (temp float) -0:49 'f' (temp float) -0:49 Test condition and select (temp float) -0:49 Condition -0:49 'b' (temp bool) -0:49 true case -0:49 Convert int to float (temp float) -0:49 'a' (temp int) -0:49 false case -0:49 'f' (temp float) -0:50 move second child to first child (temp float) -0:50 'f' (temp float) -0:50 Test condition and select (temp float) -0:50 Condition -0:50 'b' (temp bool) -0:50 true case -0:50 'f' (temp float) -0:50 false case -0:50 Convert int to float (temp float) -0:50 'a' (temp int) -0:51 move second child to first child (temp float) -0:51 'f' (temp float) -0:51 Convert int to float (temp float) -0:51 Test condition and select (temp int) -0:51 Condition -0:51 'b' (temp bool) -0:51 true case -0:51 'a' (temp int) -0:51 false case -0:51 'a' (temp int) -0:52 Sequence -0:52 move second child to first child (temp structure{global float f}) -0:52 'news' (temp structure{global float f}) -0:52 'sv' (temp structure{global float f}) -0:54 vector swizzle (temp 2-component vector of float) -0:54 'i' (smooth in 4-component vector of float) -0:54 Sequence -0:54 Constant: -0:54 0 (const int) -0:54 Constant: -0:54 1 (const int) -0:55 'm' (uniform 4X2 matrix of float) -0:56 'm' (uniform 4X2 matrix of float) -0:58 'f' (temp float) -0:59 move second child to first child (temp float) -0:59 'f' (temp float) -0:59 Convert int to float (temp float) -0:59 'a' (temp int) -0:60 'f' (temp float) -0:61 'b' (temp bool) -0:62 move second child to first child (temp bool) -0:62 'b' (temp bool) -0:62 'b' (temp bool) -0:63 'f' (temp float) -0:65 move second child to first child (temp 4-component vector of float) -0:65 'gl_FragColor' (fragColor 4-component vector of float FragColor) -0:65 texture (global 4-component vector of float) -0:65 's2D' (uniform sampler2D) -0:65 'centTexCoord' (centroid smooth in 2-component vector of float) -0:? Sequence -0:79 'gl_FragColor' (fragColor 4-component vector of float FragColor) -0:82 direct index (temp float) -0:82 'gl_FragColor' (fragColor 4-component vector of float FragColor) -0:82 Constant: -0:82 0 (const int) -0:83 direct index (temp float) -0:83 'gl_FragColor' (fragColor 4-component vector of float FragColor) -0:83 Constant: -0:83 0 (const int) -0:84 direct index (temp float) -0:84 'centTexCoord' (centroid smooth in 2-component vector of float) -0:84 Constant: -0:84 0 (const int) -0:85 move second child to first child (temp bool) -0:85 Comma (temp bool) -0:85 'a' (temp int) -0:85 'b' (temp bool) -0:85 Constant: -0:85 true (const bool) -0:91 Function Definition: main( (global int) -0:91 Function Parameters: 0:92 Function Definition: main(i1; (global void) 0:92 Function Parameters: 0:92 'a' (in int) -0:97 Function Definition: foo(f1; (global int) -0:97 Function Parameters: -0:97 'a' (out float) -0:99 Sequence -0:99 Branch: Return with expression -0:99 Constant: -0:99 3.200000 -0:100 Function Call: foo(f1; (global int) -0:100 'a' (out float) -0:103 Function Definition: gen(vf3; (global bool) -0:103 Function Parameters: -0:103 'v' (in 3-component vector of float) -0:105 Sequence -0:105 Test condition and select (temp void) -0:105 Condition -0:105 logical-and (temp bool) -0:105 Compare Less Than (temp bool) -0:105 Absolute value (global float) -0:105 direct index (temp float) -0:105 'v' (in 3-component vector of float) -0:105 Constant: -0:105 0 (const int) -0:105 Constant: -0:105 0.000100 -0:105 Compare Less Than (temp bool) -0:105 Absolute value (global float) -0:105 direct index (temp float) -0:105 'v' (in 3-component vector of float) -0:105 Constant: -0:105 1 (const int) -0:105 Constant: -0:105 0.000100 -0:105 true case -0:106 Branch: Return with expression -0:106 Constant: -0:106 true (const bool) -0:109 Function Definition: v1( (global void) -0:109 Function Parameters: -0:113 Function Definition: v2( (global void) -0:113 Function Parameters: -0:115 Sequence -0:115 Branch: Return -0:118 Function Definition: atest( (global void) -0:118 Function Parameters: -0:120 Sequence -0:120 Sequence -0:120 move second child to first child (temp 4-component vector of float) -0:120 'v' (temp 4-component vector of float) -0:120 direct index (smooth temp 4-component vector of float TexCoord) -0:120 'gl_TexCoord' (smooth in 6-element array of 4-component vector of float TexCoord) -0:120 Constant: -0:120 1 (const int) -0:121 add second child into first child (temp 4-component vector of float) -0:121 'v' (temp 4-component vector of float) -0:121 direct index (smooth temp 4-component vector of float TexCoord) -0:121 'gl_TexCoord' (smooth in 6-element array of 4-component vector of float TexCoord) -0:121 Constant: -0:121 3 (const int) -0:139 Function Definition: foo123( (global void) -0:139 Function Parameters: -0:141 Sequence -0:141 Sequence -0:141 move second child to first child (temp 2X2 matrix of float) -0:141 'r2' (temp 2X2 matrix of float) -0:141 component-wise multiply (global 2X2 matrix of float) -0:141 'm22' (global 2X2 matrix of float) -0:141 'm22' (global 2X2 matrix of float) -0:142 Sequence -0:142 move second child to first child (temp 3X3 matrix of float) -0:142 'r3' (temp 3X3 matrix of float) -0:142 component-wise multiply (global 3X3 matrix of float) -0:142 'm33' (global 3X3 matrix of float) -0:142 'm33' (global 3X3 matrix of float) -0:143 Sequence -0:143 move second child to first child (temp 4X4 matrix of float) -0:143 'r4' (temp 4X4 matrix of float) -0:143 component-wise multiply (global 4X4 matrix of float) -0:143 'm44' (global 4X4 matrix of float) -0:143 'm44' (global 4X4 matrix of float) -0:145 Sequence -0:145 move second child to first child (temp 2X3 matrix of float) -0:145 'r23' (temp 2X3 matrix of float) -0:145 component-wise multiply (global 2X3 matrix of float) -0:145 'm23' (global 2X3 matrix of float) -0:145 'm23' (global 2X3 matrix of float) -0:146 Sequence -0:146 move second child to first child (temp 2X4 matrix of float) -0:146 'r24' (temp 2X4 matrix of float) -0:146 component-wise multiply (global 2X4 matrix of float) -0:146 'm24' (global 2X4 matrix of float) -0:146 'm24' (global 2X4 matrix of float) -0:147 Sequence -0:147 move second child to first child (temp 3X2 matrix of float) -0:147 'r32' (temp 3X2 matrix of float) -0:147 component-wise multiply (global 3X2 matrix of float) -0:147 'm32' (global 3X2 matrix of float) -0:147 'm32' (global 3X2 matrix of float) -0:148 Sequence -0:148 move second child to first child (temp 3X4 matrix of float) -0:148 'r34' (temp 3X4 matrix of float) -0:148 component-wise multiply (global 3X4 matrix of float) -0:148 'm34' (global 3X4 matrix of float) -0:148 'm34' (global 3X4 matrix of float) -0:149 Sequence -0:149 move second child to first child (temp 4X2 matrix of float) -0:149 'r42' (temp 4X2 matrix of float) -0:149 component-wise multiply (global 4X2 matrix of float) -0:149 'm42' (global 4X2 matrix of float) -0:149 'm42' (global 4X2 matrix of float) -0:150 Sequence -0:150 move second child to first child (temp 4X3 matrix of float) -0:150 'r43' (temp 4X3 matrix of float) -0:150 component-wise multiply (global 4X3 matrix of float) -0:150 'm43' (global 4X3 matrix of float) -0:150 'm43' (global 4X3 matrix of float) -0:156 Function Definition: matConst( (global void) -0:156 Function Parameters: -0:? Sequence -0:162 Sequence -0:162 move second child to first child (temp 4X4 matrix of float) -0:162 'm4g' (temp 4X4 matrix of float) -0:162 Construct mat4 (temp 4X4 matrix of float) -0:162 'v2' (temp 2-component vector of float) -0:162 'v3' (temp 3-component vector of float) -0:162 'v3' (temp 3-component vector of float) -0:162 'v3' (temp 3-component vector of float) -0:162 'v3' (temp 3-component vector of float) -0:162 'v3' (temp 3-component vector of float) -0:163 Sequence -0:163 move second child to first child (temp 4X4 matrix of float) -0:163 'm4' (temp 4X4 matrix of float) -0:163 Construct mat4 (temp 4X4 matrix of float) -0:163 'v2' (temp 2-component vector of float) -0:163 'v3' (temp 3-component vector of float) -0:163 'v3' (temp 3-component vector of float) -0:163 'v3' (temp 3-component vector of float) -0:163 'v3' (temp 3-component vector of float) -0:163 'v2' (temp 2-component vector of float) -0:164 Sequence -0:164 move second child to first child (temp 3X3 matrix of float) -0:164 'm3' (temp 3X3 matrix of float) -0:164 Construct mat3 (temp 3X3 matrix of float) -0:164 'm4' (temp 4X4 matrix of float) -0:165 Sequence -0:165 move second child to first child (temp 3X3 matrix of float) -0:165 'm3b1' (temp 3X3 matrix of float) -0:165 Construct mat3 (temp 3X3 matrix of float) -0:165 'm4' (temp 4X4 matrix of float) -0:165 'v2' (temp 2-component vector of float) -0:166 Sequence -0:166 move second child to first child (temp 3X3 matrix of float) -0:166 'm3b2' (temp 3X3 matrix of float) -0:166 Construct mat3 (temp 3X3 matrix of float) -0:166 'm4' (temp 4X4 matrix of float) -0:166 'm4' (temp 4X4 matrix of float) -0:167 Sequence -0:167 move second child to first child (temp 3X2 matrix of float) -0:167 'm32' (temp 3X2 matrix of float) -0:167 Construct mat3x2 (temp 3X2 matrix of float) -0:167 'm4' (temp 4X4 matrix of float) -0:168 Sequence -0:168 move second child to first child (temp 4X4 matrix of float) -0:168 'm4c' (temp 4X4 matrix of float) -0:168 Construct mat4 (temp 4X4 matrix of float) -0:168 'm32' (temp 3X2 matrix of float) -0:169 Sequence -0:169 move second child to first child (temp 3X3 matrix of float) -0:169 'm3s' (temp 3X3 matrix of float) -0:169 Construct mat3 (temp 3X3 matrix of float) -0:169 direct index (temp float) -0:169 'v2' (temp 2-component vector of float) -0:169 Constant: -0:169 0 (const int) -0:171 Sequence -0:171 move second child to first child (temp 2-element array of 3X3 matrix of float) -0:171 'm3a1' (temp 2-element array of 3X3 matrix of float) -0:171 Construct mat3 (temp 2-element array of 3X3 matrix of float) -0:171 'm3s' (temp 3X3 matrix of float) -0:171 'm3s' (temp 3X3 matrix of float) -0:179 Function Definition: foo2323( (global void) -0:179 Function Parameters: -0:? Sequence -0:184 move second child to first child (temp 4-component vector of float) -0:184 'v' (temp 4-component vector of float) -0:184 textureLod (global 4-component vector of float) -0:184 's2D' (uniform sampler2D) -0:184 'v2' (temp 2-component vector of float) -0:184 'f' (temp float) -0:185 move second child to first child (temp 4-component vector of float) -0:185 'v' (temp 4-component vector of float) -0:185 textureProjLod (global 4-component vector of float) -0:185 's3D' (uniform sampler3D) -0:185 'v' (temp 4-component vector of float) -0:185 'f' (temp float) -0:186 move second child to first child (temp 4-component vector of float) -0:186 'v' (temp 4-component vector of float) -0:186 textureProjLod (global 4-component vector of float) -0:186 's1D' (uniform sampler1D) -0:186 'v' (temp 4-component vector of float) -0:186 'f' (temp float) -0:187 move second child to first child (temp 4-component vector of float) -0:187 'v' (temp 4-component vector of float) -0:187 textureProjLod (global 4-component vector of float) -0:187 's2DS' (uniform sampler2DShadow) -0:187 'v' (temp 4-component vector of float) -0:187 'f' (temp float) -0:189 move second child to first child (temp 4-component vector of float) -0:189 'v' (temp 4-component vector of float) -0:189 textureGrad (global 4-component vector of float) -0:189 's1D' (uniform sampler1D) -0:189 'f' (temp float) -0:189 'f' (temp float) -0:189 'f' (temp float) -0:190 move second child to first child (temp 4-component vector of float) -0:190 'v' (temp 4-component vector of float) -0:190 textureProjGrad (global 4-component vector of float) -0:190 's2D' (uniform sampler2D) -0:190 'v' (temp 4-component vector of float) -0:190 'v2' (temp 2-component vector of float) -0:190 'v2' (temp 2-component vector of float) -0:191 move second child to first child (temp 4-component vector of float) -0:191 'v' (temp 4-component vector of float) -0:191 textureProjGrad (global 4-component vector of float) -0:191 's2DS' (uniform sampler2DShadow) -0:191 'v' (temp 4-component vector of float) -0:191 'v2' (temp 2-component vector of float) -0:191 'v2' (temp 2-component vector of float) -0:196 Function Definition: foo2324( (global void) -0:196 Function Parameters: -0:? Sequence -0:201 move second child to first child (temp 4-component vector of float) -0:201 'v' (temp 4-component vector of float) -0:201 textureLod (global 4-component vector of float) -0:201 's2D' (uniform sampler2D) -0:201 'v2' (temp 2-component vector of float) -0:201 'f' (temp float) -0:202 move second child to first child (temp 4-component vector of float) -0:202 'v' (temp 4-component vector of float) -0:202 textureProjLod (global 4-component vector of float) -0:202 's3D' (uniform sampler3D) -0:202 'v' (temp 4-component vector of float) -0:202 'f' (temp float) -0:203 move second child to first child (temp 4-component vector of float) -0:203 'v' (temp 4-component vector of float) -0:203 textureProjLod (global 4-component vector of float) -0:203 's1D' (uniform sampler1D) -0:203 'v' (temp 4-component vector of float) -0:203 'f' (temp float) -0:204 move second child to first child (temp 4-component vector of float) -0:204 'v' (temp 4-component vector of float) -0:204 textureProjLod (global 4-component vector of float) -0:204 's2DS' (uniform sampler2DShadow) -0:204 'v' (temp 4-component vector of float) -0:204 'f' (temp float) -0:206 move second child to first child (temp 4-component vector of float) -0:206 'v' (temp 4-component vector of float) -0:206 textureGrad (global 4-component vector of float) -0:206 's1D' (uniform sampler1D) -0:206 'f' (temp float) -0:206 'f' (temp float) -0:206 'f' (temp float) -0:207 move second child to first child (temp 4-component vector of float) -0:207 'v' (temp 4-component vector of float) -0:207 textureProjGrad (global 4-component vector of float) -0:207 's2D' (uniform sampler2D) -0:207 'v' (temp 4-component vector of float) -0:207 'v2' (temp 2-component vector of float) -0:207 'v2' (temp 2-component vector of float) -0:208 move second child to first child (temp 4-component vector of float) -0:208 'v' (temp 4-component vector of float) -0:208 textureProjGrad (global 4-component vector of float) -0:208 's2DS' (uniform sampler2DShadow) -0:208 'v' (temp 4-component vector of float) -0:208 'v2' (temp 2-component vector of float) -0:208 'v2' (temp 2-component vector of float) -0:209 'v' (temp 4-component vector of float) -0:214 Function Definition: foo121111( (global void) -0:214 Function Parameters: -0:? Sequence -0:217 Sequence -0:217 move second child to first child (temp 4-component vector of float) -0:217 'v' (temp 4-component vector of float) -0:217 texture (global 4-component vector of float) -0:217 's2DRbad' (uniform sampler2DRect) -0:217 'v2' (temp 2-component vector of float) -0:225 Function Definition: foo12111( (global void) -0:225 Function Parameters: -0:? Sequence -0:231 move second child to first child (temp 4-component vector of float) -0:231 'v' (temp 4-component vector of float) -0:231 texture (global 4-component vector of float) -0:231 's2DR' (uniform sampler2DRect) -0:231 'v2' (temp 2-component vector of float) -0:232 move second child to first child (temp 4-component vector of float) -0:232 'v' (temp 4-component vector of float) -0:232 textureProj (global 4-component vector of float) -0:232 's2DR' (uniform sampler2DRect) -0:232 'v3' (temp 3-component vector of float) -0:233 move second child to first child (temp 4-component vector of float) -0:233 'v' (temp 4-component vector of float) -0:233 textureProj (global 4-component vector of float) -0:233 's2DR' (uniform sampler2DRect) -0:233 'v4' (temp 4-component vector of float) -0:234 move second child to first child (temp 4-component vector of float) -0:234 'v' (temp 4-component vector of float) -0:234 texture (global 4-component vector of float) -0:234 's2DRS' (uniform sampler2DRectShadow) -0:234 'v3' (temp 3-component vector of float) -0:235 move second child to first child (temp 4-component vector of float) -0:235 'v' (temp 4-component vector of float) -0:235 textureProj (global 4-component vector of float) -0:235 's2DRS' (uniform sampler2DRectShadow) -0:235 'v4' (temp 4-component vector of float) -0:237 move second child to first child (temp 4-component vector of float) -0:237 'v' (temp 4-component vector of float) -0:237 textureProjGrad (global 4-component vector of float) -0:237 's2DRS' (uniform sampler2DRectShadow) -0:237 'v' (temp 4-component vector of float) -0:237 'v2' (temp 2-component vector of float) -0:237 'v2' (temp 2-component vector of float) 0:? Linker Objects 0:? 'lowp' (global float) 0:? 'mediump' (global float) diff --git a/Test/baseResults/120.vert.out b/Test/baseResults/120.vert.out index 18fb221d..94a97b53 100644 --- a/Test/baseResults/120.vert.out +++ b/Test/baseResults/120.vert.out @@ -480,285 +480,6 @@ ERROR: node is still EOpNull! 0:43 'gl_PointSize' (invariant gl_PointSize float PointSize) 0:43 Constant: 0:43 3.800000 -0:61 Function Definition: overloadB(f1;f1; (global void) -0:61 Function Parameters: -0:61 '' (in float) -0:61 '' (const (read only) float) -0:78 Function Definition: foo( (global void) -0:78 Function Parameters: -0:? Sequence -0:83 Function Call: overloadB(f1;f1; (global void) -0:83 'f' (temp float) -0:83 'f' (temp float) -0:84 Function Call: overloadB(f1;f1; (global void) -0:84 'f' (temp float) -0:84 Constant: -0:84 2.000000 -0:85 Function Call: overloadB(f1;f1; (global void) -0:85 Constant: -0:85 1.000000 -0:85 Convert int to float (temp float) -0:85 'i' (temp int) -0:87 Constant: -0:87 0.000000 -0:88 Function Call: overloadC(i1;i1; (global 2-component vector of float) -0:88 Constant: -0:88 1 (const int) -0:88 'i' (temp int) -0:89 Function Call: overloadC(vf2;vf2; (global 2-component vector of float) -0:89 Constant: -0:89 1.000000 -0:89 1.000000 -0:89 Constant: -0:89 2.000000 -0:89 2.000000 -0:90 Constant: -0:90 0.000000 -0:91 Function Call: overloadC(vf2;vf2; (global 2-component vector of float) -0:91 Constant: -0:91 1.000000 -0:91 1.000000 -0:91 Constant: -0:91 2.000000 -0:91 2.000000 -0:93 Function Call: overloadD(i1;f1; (global 3-component vector of float) -0:93 'i' (temp int) -0:93 'f' (temp float) -0:94 Function Call: overloadD(f1;i1; (global 3-component vector of float) -0:94 'f' (temp float) -0:94 'i' (temp int) -0:95 Function Call: overloadD(f1;i1; (global 3-component vector of float) -0:95 Convert int to float (temp float) -0:95 'i' (temp int) -0:95 'i' (temp int) -0:98 Constant: -0:98 0.000000 -0:100 Constant: -0:100 0.841471 -0:101 texture (global 4-component vector of float) -0:101 's2D' (uniform sampler2D) -0:101 Constant: -0:101 0.000000 -0:101 0.000000 -0:102 clamp (global 4-component vector of float) -0:102 'attv4' (in 4-component vector of float) -0:102 Constant: -0:102 0.000000 -0:102 Constant: -0:102 1.000000 -0:103 clamp (global 4-component vector of float) -0:103 Convert int to float (temp 4-component vector of float) -0:103 Convert float to int (temp 4-component vector of int) -0:103 'attv4' (in 4-component vector of float) -0:103 Constant: -0:103 0.000000 -0:103 Constant: -0:103 1.000000 -0:106 Constant: -0:106 0.000000 -0:107 Constant: -0:107 0.000000 -0:108 Constant: -0:108 0.000000 -0:109 Function Call: overloadE(vf2; (global 3-component vector of float) -0:109 Constant: -0:109 3.300000 -0:109 3.300000 -0:110 Function Call: overloadE(mf22; (global 3-component vector of float) -0:110 Constant: -0:110 0.500000 -0:110 0.000000 -0:110 0.000000 -0:110 0.500000 -0:111 Constant: -0:111 0.000000 -0:112 Function Call: overloadE(vf2; (global 3-component vector of float) -0:112 Constant: -0:112 1.000000 -0:112 1.000000 -0:115 Function Call: overloadE(f1[2]; (global 3-component vector of float) -0:115 'b' (temp 2-element array of float) -0:117 Constant: -0:117 0.000000 -0:118 Function Call: overloadF(i1; (global 3-component vector of float) -0:118 Constant: -0:118 1 (const int) -0:128 Function Definition: foo2( (global void) -0:128 Function Parameters: -0:? Sequence -0:135 Comma (global void) -0:135 Function Call: outFun(f1;vi2;i1;f1; (global void) -0:135 Convert int to float (temp float) -0:135 'i' (temp int) -0:135 'tempArg' (temp 2-component vector of int) -0:135 'i' (temp int) -0:135 'f' (temp float) -0:135 move second child to first child (temp 2-component vector of float) -0:135 'v2' (temp 2-component vector of float) -0:135 Convert int to float (temp 2-component vector of float) -0:135 'tempArg' (temp 2-component vector of int) -0:136 Comma (global int) -0:136 move second child to first child (temp int) -0:136 'tempReturn' (global int) -0:136 Function Call: outFunRet(f1;i1;i1;vi4; (global int) -0:136 Convert int to float (temp float) -0:136 'i' (temp int) -0:136 'tempArg' (temp int) -0:136 'i' (temp int) -0:136 'tempArg' (temp 4-component vector of int) -0:136 move second child to first child (temp float) -0:136 'f' (temp float) -0:136 Convert int to float (temp float) -0:136 'tempArg' (temp int) -0:136 move second child to first child (temp 4-component vector of float) -0:136 'v4' (temp 4-component vector of float) -0:136 Convert int to float (temp 4-component vector of float) -0:136 'tempArg' (temp 4-component vector of int) -0:136 'tempReturn' (global int) -0:137 Sequence -0:137 move second child to first child (temp float) -0:137 'ret' (temp float) -0:137 Convert int to float (temp float) -0:137 Comma (global int) -0:137 move second child to first child (temp int) -0:137 'tempReturn' (global int) -0:137 Function Call: outFunRet(f1;i1;i1;vi4; (global int) -0:137 Convert int to float (temp float) -0:137 'i' (temp int) -0:137 'tempArg' (temp int) -0:137 'i' (temp int) -0:137 'tempArg' (temp 4-component vector of int) -0:137 move second child to first child (temp float) -0:137 'f' (temp float) -0:137 Convert int to float (temp float) -0:137 'tempArg' (temp int) -0:137 move second child to first child (temp 4-component vector of float) -0:137 'v4' (temp 4-component vector of float) -0:137 Convert int to float (temp 4-component vector of float) -0:137 'tempArg' (temp 4-component vector of int) -0:137 'tempReturn' (global int) -0:138 Sequence -0:138 move second child to first child (temp 2-component vector of float) -0:138 'ret2' (temp 2-component vector of float) -0:138 Convert int to float (temp 2-component vector of float) -0:138 Comma (global 2-component vector of int) -0:138 move second child to first child (temp 2-component vector of int) -0:138 'tempReturn' (global 2-component vector of int) -0:138 Function Call: outFunRet(f1;vi4;i1;vi4; (global 2-component vector of int) -0:138 Convert int to float (temp float) -0:138 'i' (temp int) -0:138 'tempArg' (temp 4-component vector of int) -0:138 'i' (temp int) -0:138 'tempArg' (temp 4-component vector of int) -0:138 move second child to first child (temp 4-component vector of float) -0:138 'v4' (temp 4-component vector of float) -0:138 Convert int to float (temp 4-component vector of float) -0:138 'tempArg' (temp 4-component vector of int) -0:138 move second child to first child (temp 4-component vector of float) -0:138 'v4' (temp 4-component vector of float) -0:138 Convert int to float (temp 4-component vector of float) -0:138 'tempArg' (temp 4-component vector of int) -0:138 'tempReturn' (global 2-component vector of int) -0:139 Sequence -0:139 move second child to first child (temp bool) -0:139 'b' (temp bool) -0:139 any (global bool) -0:139 Compare Less Than (global 4-component vector of bool) -0:139 'v4' (temp 4-component vector of float) -0:139 'attv4' (in 4-component vector of float) -0:142 Function Definition: noise( (global void) -0:142 Function Parameters: -0:144 Sequence -0:144 Sequence -0:144 move second child to first child (temp float) -0:144 'f1' (temp float) -0:144 noise (global float) -0:144 Constant: -0:144 1.000000 -0:145 Sequence -0:145 move second child to first child (temp 2-component vector of float) -0:145 'f2' (temp 2-component vector of float) -0:145 noise (global 2-component vector of float) -0:145 Constant: -0:145 1.000000 -0:145 1.000000 -0:146 Sequence -0:146 move second child to first child (temp 3-component vector of float) -0:146 'f3' (temp 3-component vector of float) -0:146 noise (global 3-component vector of float) -0:146 Constant: -0:146 1.000000 -0:146 1.000000 -0:146 1.000000 -0:147 Sequence -0:147 move second child to first child (temp 4-component vector of float) -0:147 'f4' (temp 4-component vector of float) -0:147 noise (global 4-component vector of float) -0:147 Constant: -0:147 1.000000 -0:147 1.000000 -0:147 1.000000 -0:147 1.000000 -0:162 Function Definition: foo213( (global void) -0:162 Function Parameters: -0:164 Sequence -0:164 Sequence -0:164 move second child to first child (temp float) -0:164 'f' (temp float) -0:164 Constant: -0:164 3.000000 -0:165 switch -0:165 condition -0:165 'c' (uniform int) -0:165 body -0:165 Sequence -0:166 case: with expression -0:166 Constant: -0:166 1 (const int) -0:? Sequence -0:167 move second child to first child (temp float) -0:167 'f' (temp float) -0:167 sine (global float) -0:167 'f' (temp float) -0:168 Branch: Break -0:169 case: with expression -0:169 Constant: -0:169 2 (const int) -0:? Sequence -0:170 move second child to first child (temp float) -0:170 'f' (temp float) -0:170 component-wise multiply (temp float) -0:170 'f' (temp float) -0:170 'f' (temp float) -0:171 default: -0:? Sequence -0:172 move second child to first child (temp float) -0:172 'f' (temp float) -0:172 Constant: -0:172 3.000000 -0:176 inclusive-or (temp int) -0:176 left-shift (temp int) -0:176 'i' (temp int) -0:176 Constant: -0:176 3 (const int) -0:176 Constant: -0:176 69 (const int) -0:180 Sequence -0:180 move second child to first child (temp float) -0:180 't' (temp float) -0:180 Constant: -0:180 0.000000 -0:186 Constant: -0:186 0.000000 -0:188 Constant: -0:188 0.000000 -0:189 Constant: -0:189 0.000000 -0:192 move second child to first child (temp float) -0:192 Constant: -0:192 0.000000 -0:192 Constant: -0:192 0.300000 0:? Linker Objects 0:? 'i' (in 4-component vector of float) 0:? 'o' (smooth out 4-component vector of float) diff --git a/Test/baseResults/130.frag.out b/Test/baseResults/130.frag.out index a28908ea..e71b3e28 100644 --- a/Test/baseResults/130.frag.out +++ b/Test/baseResults/130.frag.out @@ -427,326 +427,6 @@ ERROR: node is still EOpNull! 0:18 'gl_ClipDistance' (smooth in 4-element array of float ClipDistance) 0:18 Constant: 0:18 3 (const int) -0:23 Function Definition: foo( (global void) -0:23 Function Parameters: -0:25 Sequence -0:25 Sequence -0:25 move second child to first child (temp 4-component vector of float) -0:25 's' (temp 4-component vector of float) -0:25 textureGather (global 4-component vector of float) -0:25 'sampC' (uniform samplerCube) -0:25 Constant: -0:25 0.200000 -0:25 0.200000 -0:25 0.200000 -0:30 Function Definition: bar( (global void) -0:30 Function Parameters: -0:32 Sequence -0:32 Sequence -0:32 move second child to first child (temp 4-component vector of float) -0:32 's' (temp 4-component vector of float) -0:32 textureGather (global 4-component vector of float) -0:32 'sampC' (uniform samplerCube) -0:32 Constant: -0:32 0.200000 -0:32 0.200000 -0:32 0.200000 -0:43 Function Definition: bar2( (global void) -0:43 Function Parameters: -0:45 Sequence -0:45 Sequence -0:45 move second child to first child (temp 4-component vector of float) -0:45 's' (temp 4-component vector of float) -0:45 textureGather (global 4-component vector of float) -0:45 'sampC' (uniform samplerCube) -0:45 Constant: -0:45 0.200000 -0:45 0.200000 -0:45 0.200000 -0:49 move second child to first child (temp 3-component vector of bool) -0:49 'b3' (temp 3-component vector of bool) -0:49 Compare Less Than (global 3-component vector of bool) -0:49 'uv3' (temp 3-component vector of uint) -0:49 'uv3' (temp 3-component vector of uint) -0:50 move second child to first child (temp 3-component vector of bool) -0:50 'b3' (temp 3-component vector of bool) -0:50 Equal (global 3-component vector of bool) -0:50 'uv3' (temp 3-component vector of uint) -0:50 'uv3' (temp 3-component vector of uint) -0:56 direct index (temp int) -0:56 'a1' (temp 1-element array of int) -0:56 Constant: -0:56 0 (const int) -0:57 direct index (temp int) -0:57 'a2' (temp 1-element array of int) -0:57 Constant: -0:57 0 (const int) -0:60 direct index (temp int) -0:60 'a3' (temp 4-element array of int) -0:60 Constant: -0:60 3 (const int) -0:61 Compare Not Equal (temp bool) -0:61 'b3' (temp 3-component vector of bool) -0:61 'b3' (temp 3-component vector of bool) -0:62 Constant: -0:62 false (const bool) -0:63 Constant: -0:63 false (const bool) -0:64 Constant: -0:64 false (const bool) -0:65 Constant: -0:65 true (const bool) -0:66 Constant: -0:66 false (const bool) -0:77 Function Definition: bar23( (global void) -0:77 Function Parameters: -0:? Sequence -0:80 's' (temp 4-component vector of float) -0:81 move second child to first child (temp 4-component vector of float) -0:81 's' (temp 4-component vector of float) -0:81 textureGatherOffset (global 4-component vector of float) -0:81 'samp2DR' (uniform sampler2DRect) -0:81 Constant: -0:81 0.300000 -0:81 0.300000 -0:81 Constant: -0:81 1 (const int) -0:81 1 (const int) -0:82 move second child to first child (temp 4-component vector of float) -0:82 's' (temp 4-component vector of float) -0:82 textureGatherOffset (global 4-component vector of float) -0:82 'samp2D' (uniform sampler2D) -0:82 Constant: -0:82 0.300000 -0:82 0.300000 -0:82 Constant: -0:82 1 (const int) -0:82 1 (const int) -0:83 move second child to first child (temp 4-component vector of float) -0:83 's' (temp 4-component vector of float) -0:83 textureGatherOffset (global 4-component vector of float) -0:83 'samp2DA' (uniform sampler2DArray) -0:83 Constant: -0:83 0.300000 -0:83 0.300000 -0:83 0.300000 -0:83 Constant: -0:83 1 (const int) -0:83 1 (const int) -0:84 move second child to first child (temp 4-component vector of float) -0:84 's' (temp 4-component vector of float) -0:84 textureGatherOffset (global 4-component vector of float) -0:84 'samp2DS' (uniform sampler2DShadow) -0:84 Constant: -0:84 0.300000 -0:84 0.300000 -0:84 Constant: -0:84 1.300000 -0:84 Constant: -0:84 1 (const int) -0:84 1 (const int) -0:85 move second child to first child (temp 4-component vector of float) -0:85 's' (temp 4-component vector of float) -0:85 textureGatherOffset (global 4-component vector of float) -0:85 'samp2D' (uniform sampler2D) -0:85 Constant: -0:85 0.300000 -0:85 0.300000 -0:85 Constant: -0:85 1 (const int) -0:85 1 (const int) -0:85 Constant: -0:85 2 (const int) -0:90 Function Definition: bar234( (global void) -0:90 Function Parameters: -0:? Sequence -0:93 move second child to first child (temp 4-component vector of float) -0:93 's' (temp 4-component vector of float) -0:93 textureGatherOffset (global 4-component vector of float) -0:93 'samp2D' (uniform sampler2D) -0:93 Constant: -0:93 0.300000 -0:93 0.300000 -0:93 Constant: -0:93 1 (const int) -0:93 1 (const int) -0:94 move second child to first child (temp 4-component vector of float) -0:94 's' (temp 4-component vector of float) -0:94 textureGatherOffset (global 4-component vector of float) -0:94 'samp2DA' (uniform sampler2DArray) -0:94 Constant: -0:94 0.300000 -0:94 0.300000 -0:94 0.300000 -0:94 Constant: -0:94 1 (const int) -0:94 1 (const int) -0:95 move second child to first child (temp 4-component vector of float) -0:95 's' (temp 4-component vector of float) -0:95 textureGatherOffset (global 4-component vector of float) -0:95 'samp2DR' (uniform sampler2DRect) -0:95 Constant: -0:95 0.300000 -0:95 0.300000 -0:95 Constant: -0:95 1 (const int) -0:95 1 (const int) -0:96 move second child to first child (temp 4-component vector of float) -0:96 's' (temp 4-component vector of float) -0:96 textureGatherOffset (global 4-component vector of float) -0:96 'samp2DS' (uniform sampler2DShadow) -0:96 Constant: -0:96 0.300000 -0:96 0.300000 -0:96 Constant: -0:96 1.300000 -0:96 Constant: -0:96 1 (const int) -0:96 1 (const int) -0:97 move second child to first child (temp 4-component vector of float) -0:97 's' (temp 4-component vector of float) -0:97 textureGatherOffset (global 4-component vector of float) -0:97 'samp2D' (uniform sampler2D) -0:97 Constant: -0:97 0.300000 -0:97 0.300000 -0:97 Constant: -0:97 1 (const int) -0:97 1 (const int) -0:97 Constant: -0:97 2 (const int) -0:107 Function Definition: bar235( (global void) -0:107 Function Parameters: -0:109 Sequence -0:109 Sequence -0:109 move second child to first child (temp 3-component vector of int) -0:109 'a' (temp 3-component vector of int) -0:109 textureSize (global 3-component vector of int) -0:109 'Sca' (uniform samplerCubeArray) -0:109 Constant: -0:109 3 (const int) -0:110 Sequence -0:110 move second child to first child (temp 4-component vector of float) -0:110 'b' (temp 4-component vector of float) -0:110 texture (global 4-component vector of float) -0:110 'Sca' (uniform samplerCubeArray) -0:110 'i' (smooth in 4-component vector of float) -0:111 Sequence -0:111 move second child to first child (temp 4-component vector of int) -0:111 'c' (temp 4-component vector of int) -0:111 texture (global 4-component vector of int) -0:111 'Isca' (uniform isamplerCubeArray) -0:111 'i' (smooth in 4-component vector of float) -0:111 Constant: -0:111 0.700000 -0:112 Sequence -0:112 move second child to first child (temp 4-component vector of uint) -0:112 'd' (temp 4-component vector of uint) -0:112 texture (global 4-component vector of uint) -0:112 'Usca' (uniform usamplerCubeArray) -0:112 'i' (smooth in 4-component vector of float) -0:114 move second child to first child (temp 4-component vector of float) -0:114 'b' (temp 4-component vector of float) -0:114 textureLod (global 4-component vector of float) -0:114 'Sca' (uniform samplerCubeArray) -0:114 'i' (smooth in 4-component vector of float) -0:114 Constant: -0:114 1.700000 -0:115 move second child to first child (temp 3-component vector of int) -0:115 'a' (temp 3-component vector of int) -0:115 textureSize (global 3-component vector of int) -0:115 'Scas' (uniform samplerCubeArrayShadow) -0:115 direct index (temp int) -0:115 'a' (temp 3-component vector of int) -0:115 Constant: -0:115 0 (const int) -0:116 Sequence -0:116 move second child to first child (temp float) -0:116 'f' (temp float) -0:116 texture (global float) -0:116 'Scas' (uniform samplerCubeArrayShadow) -0:116 'i' (smooth in 4-component vector of float) -0:116 direct index (temp float) -0:116 'b' (temp 4-component vector of float) -0:116 Constant: -0:116 1 (const int) -0:117 move second child to first child (temp 4-component vector of int) -0:117 'c' (temp 4-component vector of int) -0:117 textureGrad (global 4-component vector of int) -0:117 'Isca' (uniform isamplerCubeArray) -0:117 'i' (smooth in 4-component vector of float) -0:117 Constant: -0:117 0.100000 -0:117 0.100000 -0:117 0.100000 -0:117 Constant: -0:117 0.200000 -0:117 0.200000 -0:117 0.200000 -0:129 Function Definition: bar23444( (global void) -0:129 Function Parameters: -0:? Sequence -0:132 Sequence -0:132 move second child to first child (temp float) -0:132 'a1' (temp float) -0:132 direct index (temp float) -0:132 direct index (temp 3-component vector of float) -0:132 'm43' (temp 4X3 matrix of float) -0:132 Constant: -0:132 3 (const int) -0:132 Constant: -0:132 1 (const int) -0:134 Sequence -0:134 move second child to first child (temp int) -0:134 'a2' (temp int) -0:134 Constant: -0:134 4 (const int) -0:135 add second child into first child (temp int) -0:135 'a2' (temp int) -0:135 Constant: -0:135 3 (const int) -0:136 add second child into first child (temp int) -0:136 'a2' (temp int) -0:136 Constant: -0:136 3 (const int) -0:137 Sequence -0:137 move second child to first child (temp float) -0:137 'b' (const (read only) float) -0:137 component-wise multiply (temp float) -0:137 Constant: -0:137 2.000000 -0:137 'a1' (temp float) -0:138 move second child to first child (temp float) -0:138 direct index (temp float) -0:138 'a' (global 3-component vector of float) -0:138 Constant: -0:138 0 (const int) -0:138 Constant: -0:138 -1.000000 -0:140 Constant: -0:140 0.000000 -0:141 Constant: -0:141 0.000000 -0:143 Constant: -0:143 1 (const int) -0:162 Function Definition: qux2( (global void) -0:162 Function Parameters: -0:? Sequence -0:165 imageAtomicCompSwap (global int) -0:165 'iimg2D' (layout(r32i ) uniform iimage2D) -0:165 Construct ivec2 (temp 2-component vector of int) -0:165 'i' (temp int) -0:165 'i' (temp int) -0:165 'i' (temp int) -0:165 'i' (temp int) -0:166 Sequence -0:166 move second child to first child (temp 4-component vector of int) -0:166 'pos' (temp 4-component vector of int) -0:166 imageLoad (global 4-component vector of int) -0:166 'iimg2D' (layout(r32i ) uniform iimage2D) -0:166 Construct ivec2 (temp 2-component vector of int) -0:166 'i' (temp int) -0:166 'i' (temp int) 0:? Linker Objects 0:? 'a' (global 3-component vector of float) 0:? 'b' (global float) diff --git a/Test/baseResults/130.vert.out b/Test/baseResults/130.vert.out index 7cfeb19d..1b3a0e19 100644 --- a/Test/baseResults/130.vert.out +++ b/Test/baseResults/130.vert.out @@ -269,23 +269,6 @@ ERROR: node is still EOpNull! 0:46 1 (const int) 0:46 Constant: 0:46 0.300000 -0:57 Function Definition: foo88( (global void) -0:57 Function Parameters: -0:? Sequence -0:61 'id' (temp int) -0:63 'gl_ClipVertex' (gl_ClipVertex 4-component vector of float ClipVertex) -0:64 'gl_Color' (in 4-component vector of float Color) -0:65 direct index (temp structure{global 4-component vector of float ambient, global 4-component vector of float diffuse, global 4-component vector of float specular, global 4-component vector of float position, global 4-component vector of float halfVector, global 3-component vector of float spotDirection, global float spotExponent, global float spotCutoff, global float spotCosCutoff, global float constantAttenuation, global float linearAttenuation, global float quadraticAttenuation}) -0:65 'gl_LightSource' (uniform 32-element array of structure{global 4-component vector of float ambient, global 4-component vector of float diffuse, global 4-component vector of float specular, global 4-component vector of float position, global 4-component vector of float halfVector, global 3-component vector of float spotDirection, global float spotExponent, global float spotCutoff, global float spotCosCutoff, global float constantAttenuation, global float linearAttenuation, global float quadraticAttenuation}) -0:65 Constant: -0:65 0 (const int) -0:66 far: direct index for structure (global float) -0:66 'gl_DepthRange' (uniform structure{global float near, global float far, global float diff}) -0:66 Constant: -0:66 1 (const int) -0:67 'gl_TexCoord' (smooth out 1-element array of 4-component vector of float TexCoord) -0:68 'gl_FogFragCoord' (smooth out float FogFragCoord) -0:69 'gl_FrontColor' (smooth out 4-component vector of float FrontColor) 0:? Linker Objects 0:? 'c' (uniform int) 0:? 'us2D' (uniform usampler2D) diff --git a/Test/baseResults/140.frag.out b/Test/baseResults/140.frag.out index 38c3b9f4..224cd30d 100644 --- a/Test/baseResults/140.frag.out +++ b/Test/baseResults/140.frag.out @@ -136,51 +136,6 @@ ERROR: node is still EOpNull! 0:22 'patch' (global float) 0:22 Constant: 0:22 3.100000 -0:38 Function Definition: foo( (global void) -0:38 Function Parameters: -0:40 Sequence -0:40 Sequence -0:40 move second child to first child (temp 2-component vector of float) -0:40 'r1' (temp 2-component vector of float) -0:40 modf (global 2-component vector of float) -0:40 vector swizzle (temp 2-component vector of float) -0:40 'v' (smooth in 4-component vector of float) -0:40 Sequence -0:40 Constant: -0:40 0 (const int) -0:40 Constant: -0:40 1 (const int) -0:40 vector swizzle (temp 2-component vector of float) -0:40 'v' (smooth in 4-component vector of float) -0:40 Sequence -0:40 Constant: -0:40 2 (const int) -0:40 Constant: -0:40 3 (const int) -0:41 Sequence -0:41 move second child to first child (temp 2-component vector of float) -0:41 'r2' (temp 2-component vector of float) -0:41 modf (global 2-component vector of float) -0:41 vector swizzle (temp 2-component vector of float) -0:41 'o' (out 4-component vector of float) -0:41 Sequence -0:41 Constant: -0:41 0 (const int) -0:41 Constant: -0:41 1 (const int) -0:41 vector swizzle (temp 2-component vector of float) -0:41 'o' (out 4-component vector of float) -0:41 Sequence -0:41 Constant: -0:41 2 (const int) -0:41 Constant: -0:41 3 (const int) -0:42 move second child to first child (temp float) -0:42 direct index (temp float) -0:42 'o' (out 4-component vector of float) -0:42 Constant: -0:42 2 (const int) -0:42 Function Call: fooi( (global float) 0:47 Sequence 0:47 move second child to first child (temp float) 0:47 'i1' (global float) @@ -198,13 +153,6 @@ ERROR: node is still EOpNull! 0:48 'i2' (global float) 0:48 Constant: 0:48 102.000000 -0:50 Function Definition: fooi( (global float) -0:50 Function Parameters: -0:52 Sequence -0:52 Branch: Return with expression -0:52 add (temp float) -0:52 'i1' (global float) -0:52 'i2' (global float) 0:? Linker Objects 0:? 'v' (smooth in 4-component vector of float) 0:? 'i' (smooth in 4-component vector of float) diff --git a/Test/baseResults/140.vert.out b/Test/baseResults/140.vert.out index 365a0aae..e7f88e32 100644 --- a/Test/baseResults/140.vert.out +++ b/Test/baseResults/140.vert.out @@ -178,71 +178,6 @@ ERROR: node is still EOpNull! 0:18 'gl_TexCoord' (smooth out 1-element array of 4-component vector of float TexCoord) 0:19 'gl_FogFragCoord' (smooth out float FogFragCoord) 0:20 'gl_FrontColor' (smooth out 4-component vector of float FrontColor) -0:48 Function Definition: foo( (global void) -0:48 Function Parameters: -0:50 Sequence -0:50 Sequence -0:50 move second child to first child (temp 4-component vector of float) -0:50 'v' (temp 4-component vector of float) -0:50 textureFetch (global 4-component vector of float) -0:50 's2dr' (uniform sampler2DRect) -0:50 'itloc2' (in 2-component vector of int) -0:51 add second child into first child (temp 4-component vector of float) -0:51 'v' (temp 4-component vector of float) -0:51 Constant: -0:51 0.000000 -0:52 add second child into first child (temp 4-component vector of float) -0:52 'v' (temp 4-component vector of float) -0:52 texture (global 4-component vector of float) -0:52 's2dr' (uniform sampler2DRect) -0:52 'tloc2' (in 2-component vector of float) -0:53 add second child into first child (temp 4-component vector of float) -0:53 'v' (temp 4-component vector of float) -0:53 Constant: -0:53 0.000000 -0:54 add second child into first child (temp 4-component vector of float) -0:54 'v' (temp 4-component vector of float) -0:54 texture (global float) -0:54 's2drs' (uniform sampler2DRectShadow) -0:54 'tloc3' (in 3-component vector of float) -0:55 add second child into first child (temp 4-component vector of float) -0:55 'v' (temp 4-component vector of float) -0:55 textureProj (global 4-component vector of float) -0:55 's2dr' (uniform sampler2DRect) -0:55 'tloc3' (in 3-component vector of float) -0:56 add second child into first child (temp 4-component vector of float) -0:56 'v' (temp 4-component vector of float) -0:56 textureProj (global 4-component vector of float) -0:56 's2dr' (uniform sampler2DRect) -0:56 'tloc4' (in 4-component vector of float) -0:57 add second child into first child (temp 4-component vector of float) -0:57 'v' (temp 4-component vector of float) -0:57 textureProjGradOffset (global 4-component vector of float) -0:57 's2dr' (uniform sampler2DRect) -0:57 'tloc4' (in 4-component vector of float) -0:57 Constant: -0:57 0.000000 -0:57 0.000000 -0:57 Constant: -0:57 0.000000 -0:57 0.000000 -0:57 Constant: -0:57 1 (const int) -0:57 2 (const int) -0:58 add second child into first child (temp 4-component vector of float) -0:58 'v' (temp 4-component vector of float) -0:58 textureProjGradOffset (global float) -0:58 's2drs' (uniform sampler2DRectShadow) -0:58 'tloc4' (in 4-component vector of float) -0:58 Constant: -0:58 0.000000 -0:58 0.000000 -0:58 Constant: -0:58 0.000000 -0:58 0.000000 -0:58 Constant: -0:58 1 (const int) -0:58 2 (const int) 0:? Linker Objects 0:? 'sbuf' (uniform isamplerBuffer) 0:? 'anon@0' (layout(column_major std140 ) uniform block{layout(column_major std140 offset=0 ) uniform int anonMem}) diff --git a/Test/baseResults/150.frag.out b/Test/baseResults/150.frag.out index 0972fdcd..143de3b5 100644 --- a/Test/baseResults/150.frag.out +++ b/Test/baseResults/150.frag.out @@ -141,90 +141,6 @@ ERROR: node is still EOpNull! 0:18 'patch' (global float) 0:18 Constant: 0:18 3.100000 -0:31 Function Definition: barWxyz( (global void) -0:31 Function Parameters: -0:33 Sequence -0:33 Sequence -0:33 move second child to first child (temp 2-component vector of int) -0:33 't11' (temp 2-component vector of int) -0:33 textureSize (global 2-component vector of int) -0:33 'sms' (uniform sampler2DMS) -0:34 Sequence -0:34 move second child to first child (temp 2-component vector of int) -0:34 't12' (temp 2-component vector of int) -0:34 textureSize (global 2-component vector of int) -0:34 'isms' (uniform isampler2DMS) -0:35 Sequence -0:35 move second child to first child (temp 2-component vector of int) -0:35 't13' (temp 2-component vector of int) -0:35 textureSize (global 2-component vector of int) -0:35 'usms' (uniform usampler2DMS) -0:36 Sequence -0:36 move second child to first child (temp 3-component vector of int) -0:36 't21' (temp 3-component vector of int) -0:36 textureSize (global 3-component vector of int) -0:36 'smsa' (uniform sampler2DMSArray) -0:37 Sequence -0:37 move second child to first child (temp 3-component vector of int) -0:37 't22' (temp 3-component vector of int) -0:37 textureSize (global 3-component vector of int) -0:37 'ismsa' (uniform isampler2DMSArray) -0:38 Sequence -0:38 move second child to first child (temp 3-component vector of int) -0:38 't23' (temp 3-component vector of int) -0:38 textureSize (global 3-component vector of int) -0:38 'usmsa' (uniform usampler2DMSArray) -0:39 Sequence -0:39 move second child to first child (temp 4-component vector of float) -0:39 't31' (temp 4-component vector of float) -0:39 textureFetch (global 4-component vector of float) -0:39 'sms' (uniform sampler2DMS) -0:39 'p2' (flat in 2-component vector of int) -0:39 'samp' (flat in int) -0:40 Sequence -0:40 move second child to first child (temp 4-component vector of int) -0:40 't32' (temp 4-component vector of int) -0:40 textureFetch (global 4-component vector of int) -0:40 'isms' (uniform isampler2DMS) -0:40 'p2' (flat in 2-component vector of int) -0:40 'samp' (flat in int) -0:41 Sequence -0:41 move second child to first child (temp 4-component vector of uint) -0:41 't33' (temp 4-component vector of uint) -0:41 textureFetch (global 4-component vector of uint) -0:41 'usms' (uniform usampler2DMS) -0:41 'p2' (flat in 2-component vector of int) -0:41 Constant: -0:41 3 (const int) -0:42 Sequence -0:42 move second child to first child (temp 4-component vector of float) -0:42 't41' (temp 4-component vector of float) -0:42 textureFetch (global 4-component vector of float) -0:42 'smsa' (uniform sampler2DMSArray) -0:42 'p3' (flat in 3-component vector of int) -0:42 'samp' (flat in int) -0:43 Sequence -0:43 move second child to first child (temp 4-component vector of int) -0:43 't42' (temp 4-component vector of int) -0:43 textureFetch (global 4-component vector of int) -0:43 'ismsa' (uniform isampler2DMSArray) -0:43 Constant: -0:43 2 (const int) -0:43 2 (const int) -0:43 2 (const int) -0:43 'samp' (flat in int) -0:44 Sequence -0:44 move second child to first child (temp 4-component vector of uint) -0:44 't43' (temp 4-component vector of uint) -0:44 textureFetch (global 4-component vector of uint) -0:44 'usmsa' (uniform usampler2DMSArray) -0:44 'p3' (flat in 3-component vector of int) -0:44 'samp' (flat in int) -0:47 Function Definition: primitiveID( (global int) -0:47 Function Parameters: -0:49 Sequence -0:49 Branch: Return with expression -0:49 'gl_PrimitiveID' (flat in int PrimitiveID) 0:? Linker Objects 0:? 'gl_FragCoord' (gl_FragCoord 4-component vector of float FragCoord) 0:? 'foo' (smooth in 4-component vector of float) diff --git a/Test/baseResults/150.geom.out b/Test/baseResults/150.geom.out index 48b7925f..dc5a41a2 100644 --- a/Test/baseResults/150.geom.out +++ b/Test/baseResults/150.geom.out @@ -255,39 +255,11 @@ ERROR: node is still EOpNull! 0:37 'gl_Layer' (layout(stream=0 ) out int Layer) 0:37 Constant: 0:37 2 (const int) -0:67 Function Definition: foo(i1; (global void) -0:67 Function Parameters: -0:67 'a' (in int) -0:69 Sequence -0:69 move second child to first child (temp 4-component vector of float) -0:69 a: direct index for structure (layout(stream=6 ) out 4-component vector of float) -0:69 'ouuaa6' (layout(stream=6 ) out block{layout(stream=6 ) out 4-component vector of float a}) -0:69 Constant: -0:69 0 (const int) -0:69 Constant: -0:69 1.000000 -0:69 1.000000 -0:69 1.000000 -0:69 1.000000 0:107 Sequence 0:107 move second child to first child (temp float) 0:107 'summ' (global float) 0:107 Constant: 0:107 11332.000000 -0:127 Function Definition: fooe1( (global void) -0:127 Function Parameters: -0:129 Sequence -0:129 move second child to first child (temp int) -0:129 'gl_ViewportIndex' (layout(stream=0 ) out int ViewportIndex) -0:129 Constant: -0:129 15 (const int) -0:134 Function Definition: fooe2( (global void) -0:134 Function Parameters: -0:136 Sequence -0:136 move second child to first child (temp int) -0:136 'gl_ViewportIndex' (layout(stream=0 ) out int ViewportIndex) -0:136 Constant: -0:136 15 (const int) 0:? Linker Objects 0:? 'fromV' (in 4-element array of block{in 3-component vector of float color}) 0:? 'toF' (layout(stream=0 ) out block{layout(stream=0 ) out 3-component vector of float color}) diff --git a/Test/baseResults/150.tesc.out b/Test/baseResults/150.tesc.out index 28162b22..21fade77 100644 --- a/Test/baseResults/150.tesc.out +++ b/Test/baseResults/150.tesc.out @@ -1189,35 +1189,6 @@ vertices = 4 0:56 Barrier (global void) 0:59 Branch: Return 0:61 Barrier (global void) -0:67 Function Definition: foo( (global void) -0:67 Function Parameters: -0:69 Sequence -0:69 gl_PointSize: direct index for structure (out float PointSize) -0:69 direct index (temp block{out 4-component vector of float Position gl_Position, out float PointSize gl_PointSize, out 2-element array of float ClipDistance gl_ClipDistance}) -0:69 'gl_out' (out 4-element array of block{out 4-component vector of float Position gl_Position, out float PointSize gl_PointSize, out 2-element array of float ClipDistance gl_ClipDistance}) -0:69 Constant: -0:69 4 (const int) -0:69 Constant: -0:69 1 (const int) -0:71 Barrier (global void) -0:91 Function Definition: foop( (global void) -0:91 Function Parameters: -0:? Sequence -0:95 multiply second child into first child (temp 3-component vector of float) -0:95 'pv3' (noContraction temp 3-component vector of float) -0:95 'pv3' (noContraction temp 3-component vector of float) -0:96 move second child to first child (temp 3-component vector of float) -0:96 'pv3' (noContraction temp 3-component vector of float) -0:96 fma (global 3-component vector of float) -0:96 'pv3' (noContraction temp 3-component vector of float) -0:96 'pv3' (noContraction temp 3-component vector of float) -0:96 'pv3' (noContraction temp 3-component vector of float) -0:97 move second child to first child (temp double) -0:97 'd' (noContraction temp double) -0:97 fma (global double) -0:97 'd' (noContraction temp double) -0:97 'd' (noContraction temp double) -0:97 'd' (noContraction temp double) 0:8 Function Definition: main( (global void) 0:8 Function Parameters: 0:15 Function Definition: main( (global void) @@ -1279,41 +1250,6 @@ vertices = 4 0:26 indirect index (temp block{out 4-component vector of float Position gl_Position}) 0:26 'gl_out' (out 3-element array of block{out 4-component vector of float Position gl_Position}) 0:26 'gl_InvocationID' (in int InvocationID) -0:34 Function Definition: foo( (global void) -0:34 Function Parameters: -0:36 Sequence -0:36 Test condition and select (temp void) -0:36 Condition -0:36 logical-or (temp bool) -0:36 Compare Not Equal (temp bool) -0:36 Constant: -0:36 -0.625000 -0:36 -0.500000 -0:36 -0.375000 -0:36 -0.250000 -0:36 -0.375000 -0:36 -0.250000 -0:36 -0.125000 -0:36 0.000000 -0:36 direct index (layout(location=0 ) temp 2X4 matrix of double) -0:36 'vs_tcs_first' (layout(location=0 ) in 32-element array of 2X4 matrix of double) -0:36 Constant: -0:36 0 (const int) -0:37 Compare Not Equal (temp bool) -0:37 Constant: -0:37 0.375000 -0:37 0.500000 -0:37 0.625000 -0:37 0.750000 -0:37 0.625000 -0:37 0.750000 -0:37 0.875000 -0:37 -0.625000 -0:37 direct index (layout(location=12 ) temp 2X4 matrix of double) -0:37 'vs_tcs_last' (layout(location=12 ) in 32-element array of 2X4 matrix of double) -0:37 Constant: -0:37 0 (const int) -0:36 true case is null 0:? Linker Objects 0:? 'gl_out' (out 4-element array of block{out 4-component vector of float Position gl_Position, out float PointSize gl_PointSize, out 2-element array of float ClipDistance gl_ClipDistance}) 0:? 'outa' (global 4-element array of int) diff --git a/Test/baseResults/300.frag.out b/Test/baseResults/300.frag.out index 6ec58aa1..cca6abd7 100644 --- a/Test/baseResults/300.frag.out +++ b/Test/baseResults/300.frag.out @@ -592,131 +592,6 @@ ERROR: node is still EOpNull! 0:96 'c4D' (smooth temp lowp 4-component vector of float) 0:97 arc hyp. tangent (global lowp 3-component vector of float) 0:97 'c3D' (smooth in lowp 3-component vector of float) -0:108 Function Definition: foo( (global void) -0:108 Function Parameters: -0:110 Sequence -0:110 move second child to first child (temp lowp 4-component vector of float) -0:110 direct index (temp lowp 4-component vector of float) -0:110 'colors' (out 4-element array of lowp 4-component vector of float) -0:110 Constant: -0:110 2 (const int) -0:110 'c4D' (smooth temp lowp 4-component vector of float) -0:111 move second child to first child (temp lowp 4-component vector of float) -0:111 indirect index (temp lowp 4-component vector of float) -0:111 'colors' (out 4-element array of lowp 4-component vector of float) -0:111 'ic1D' (flat in mediump int) -0:111 'c4D' (smooth temp lowp 4-component vector of float) -0:117 Function Definition: foo13(struct-s-i1-s211; (global void) -0:117 Function Parameters: -0:117 'inSt2' (in structure{global mediump int i, global lowp sampler2D s}) -0:119 Sequence -0:119 Test condition and select (temp void) -0:119 Condition -0:119 Compare Equal (temp bool) -0:119 'st1' (uniform structure{global mediump int i, global lowp sampler2D s}) -0:119 'st2' (uniform structure{global mediump int i, global lowp sampler2D s}) -0:119 true case is null -0:120 Test condition and select (temp void) -0:120 Condition -0:120 Compare Not Equal (temp bool) -0:120 'st1' (uniform structure{global mediump int i, global lowp sampler2D s}) -0:120 'st2' (uniform structure{global mediump int i, global lowp sampler2D s}) -0:120 true case is null -0:121 Constant: -0:121 false (const bool) -0:122 move second child to first child (temp structure{global mediump int i, global lowp sampler2D s}) -0:122 'inSt2' (in structure{global mediump int i, global lowp sampler2D s}) -0:122 'st1' (uniform structure{global mediump int i, global lowp sampler2D s}) -0:123 Compare Equal (temp bool) -0:123 'inSt2' (in structure{global mediump int i, global lowp sampler2D s}) -0:123 'st1' (uniform structure{global mediump int i, global lowp sampler2D s}) -0:126 Function Definition: foo23( (global void) -0:126 Function Parameters: -0:128 Sequence -0:128 textureOffset (global lowp float) -0:128 's2DShadow' (uniform lowp sampler2DShadow) -0:128 'c3D' (smooth in lowp 3-component vector of float) -0:128 Constant: -0:128 -8 (const int) -0:128 7 (const int) -0:128 'c1D' (smooth in lowp float) -0:129 textureOffset (global lowp float) -0:129 's2DShadow' (uniform lowp sampler2DShadow) -0:129 'c3D' (smooth in lowp 3-component vector of float) -0:129 Constant: -0:129 -9 (const int) -0:129 8 (const int) -0:129 'c1D' (smooth in lowp float) -0:132 Function Definition: foo324( (global void) -0:132 Function Parameters: -0:134 Sequence -0:134 Sequence -0:134 move second child to first child (temp lowp float) -0:134 'p' (temp lowp float) -0:134 Constant: -0:134 210.712306 -0:135 add second child into first child (temp lowp float) -0:135 'p' (temp lowp float) -0:135 Constant: -0:135 0.389418 -0:136 add second child into first child (temp lowp float) -0:136 'p' (temp lowp float) -0:136 Constant: -0:136 5.000000 -0:137 add second child into first child (temp lowp float) -0:137 'p' (temp lowp float) -0:137 Constant: -0:137 13.000000 -0:138 Sequence -0:138 move second child to first child (temp lowp 3-component vector of float) -0:138 'c3' (temp lowp 3-component vector of float) -0:138 Constant: -0:138 -15.000000 -0:138 -2.000000 -0:138 39.000000 -0:139 add second child into first child (temp lowp 3-component vector of float) -0:139 'c3' (temp lowp 3-component vector of float) -0:139 Constant: -0:139 -1.000000 -0:139 -2.000000 -0:139 -3.000000 -0:140 add second child into first child (temp lowp 3-component vector of float) -0:140 'c3' (temp lowp 3-component vector of float) -0:140 Constant: -0:140 1.000000 -0:140 2.000000 -0:140 3.000000 -0:141 Sequence -0:141 move second child to first child (temp lowp 2-component vector of float) -0:141 'c2' (temp lowp 2-component vector of float) -0:141 Constant: -0:141 1.000000 -0:141 -3.000000 -0:142 add second child into first child (temp lowp 2-component vector of float) -0:142 'c2' (temp lowp 2-component vector of float) -0:142 Constant: -0:142 1.000000 -0:142 -3.000000 -0:143 add second child into first child (temp lowp 2-component vector of float) -0:143 'c2' (temp lowp 2-component vector of float) -0:143 Constant: -0:143 3.000000 -0:143 -8.544004 -0:144 add second child into first child (temp lowp 2-component vector of float) -0:144 'c2' (temp lowp 2-component vector of float) -0:144 Constant: -0:144 0.000000 -0:144 0.000000 -0:145 Sequence -0:145 move second child to first child (temp lowp 3X2 matrix of float) -0:145 'm32' (temp lowp 3X2 matrix of float) -0:145 Constant: -0:145 10.000000 -0:145 15.000000 -0:145 14.000000 -0:145 21.000000 -0:145 22.000000 -0:145 33.000000 0:? Linker Objects 0:? 's2D' (uniform lowp sampler2D) 0:? 's3D' (uniform lowp sampler3D) diff --git a/Test/baseResults/300.vert.out b/Test/baseResults/300.vert.out index d35929f7..5f060cba 100644 --- a/Test/baseResults/300.vert.out +++ b/Test/baseResults/300.vert.out @@ -447,132 +447,6 @@ ERROR: node is still EOpNull! 0:68 Constant: 0:68 3.000000 0:68 4.000000 -0:71 Function Definition: newVFun( (global void) -0:71 Function Parameters: -0:73 Sequence -0:73 move second child to first child (temp highp 3-component vector of float) -0:73 'newV' (smooth out highp 3-component vector of float) -0:73 'v3' (in highp 3-component vector of float) -0:118 Function Definition: foo23( (global void) -0:118 Function Parameters: -0:120 Sequence -0:120 Sequence -0:120 move second child to first child (temp highp 2-component vector of int) -0:120 'x1' (temp highp 2-component vector of int) -0:120 textureSize (global highp 2-component vector of int, operation at lowp) -0:120 's2D' (uniform lowp sampler2D) -0:120 Constant: -0:120 2 (const int) -0:121 Constant: -0:121 0.000000 -0:122 Sequence -0:122 move second child to first child (temp highp 3-component vector of int) -0:122 'x3' (temp highp 3-component vector of int) -0:122 textureSize (global highp 3-component vector of int, operation at lowp) -0:122 's2DAS' (uniform lowp sampler2DArrayShadow) -0:122 Constant: -0:122 -1 (const int) -0:123 Constant: -0:123 0.000000 -0:124 Sequence -0:124 move second child to first child (temp highp 4-component vector of float) -0:124 'x4' (temp highp 4-component vector of float) -0:124 texture (global lowp 4-component vector of float, operation at highp) -0:124 's2D' (uniform lowp sampler2D) -0:124 'c2D' (in highp 2-component vector of float) -0:125 Constant: -0:125 0.000000 -0:126 Sequence -0:126 move second child to first child (temp highp 4-component vector of float) -0:126 'x5' (temp highp 4-component vector of float) -0:126 textureProjOffset (global lowp 4-component vector of float) -0:126 's3D' (uniform lowp sampler3D) -0:126 Constant: -0:126 0.200000 -0:126 0.200000 -0:126 0.200000 -0:126 0.200000 -0:126 Constant: -0:126 1 (const int) -0:126 1 (const int) -0:126 1 (const int) -0:127 Constant: -0:127 0.000000 -0:128 Sequence -0:128 move second child to first child (temp highp float) -0:128 'x6' (temp highp float) -0:128 textureProjGradOffset (global lowp float, operation at highp) -0:128 's2DS' (uniform lowp sampler2DShadow) -0:128 'invIn' (invariant in highp 4-component vector of float) -0:128 Constant: -0:128 4.200000 -0:128 4.200000 -0:128 Constant: -0:128 5.300000 -0:128 5.300000 -0:128 Constant: -0:128 1 (const int) -0:128 1 (const int) -0:137 Function Definition: foo2349( (global void) -0:137 Function Parameters: -0:139 Sequence -0:139 Sequence -0:139 move second child to first child (temp 3-element array of highp float) -0:139 'x' (temp 3-element array of highp float) -0:139 Constant: -0:139 1.000000 -0:139 2.000000 -0:139 3.000000 -0:140 Sequence -0:140 move second child to first child (temp 3-element array of highp float) -0:140 'y' (temp 3-element array of highp float) -0:140 'x' (temp 3-element array of highp float) -0:141 Sequence -0:141 move second child to first child (temp 3-element array of highp float) -0:141 'z' (temp 3-element array of highp float) -0:141 'x' (temp 3-element array of highp float) -0:143 move second child to first child (temp 3-element array of highp float) -0:143 'w' (temp 3-element array of highp float) -0:143 'y' (temp 3-element array of highp float) -0:155 Function Definition: gggf(f1; (global highp int) -0:155 Function Parameters: -0:155 'f' (in highp float) -0:155 Sequence -0:155 Branch: Return with expression -0:155 Constant: -0:155 2 (const int) -0:158 Function Definition: agggf(f1; (global highp int) -0:158 Function Parameters: -0:158 'f' (in highp float) -0:158 Sequence -0:158 Branch: Return with expression -0:158 Constant: -0:158 2 (const int) -0:178 Function Definition: fooDeeparray( (global void) -0:178 Function Parameters: -0:181 Sequence -0:181 Sequence -0:180 move second child to first child (temp 3-element array of highp float) -0:180 'x' (temp 3-element array of highp float) -0:180 Constant: -0:180 1.000000 -0:180 2.000000 -0:180 3.000000 -0:181 move second child to first child (temp 4-element array of highp float) -0:181 'y' (temp 4-element array of highp float) -0:181 Constant: -0:181 1.000000 -0:181 2.000000 -0:181 3.000000 -0:181 4.000000 -0:183 move second child to first child (temp 3-element array of highp float) -0:183 'xp' (temp 3-element array of highp float) -0:183 'x' (temp 3-element array of highp float) -0:184 move second child to first child (temp 4-element array of highp float) -0:184 'yp' (temp 4-element array of highp float) -0:184 'y' (temp 4-element array of highp float) -0:185 'xp' (temp 3-element array of highp float) -0:186 'yp' (temp 4-element array of highp float) 0:? Linker Objects 0:? 'm43' (uniform highp 4X3 matrix of float) 0:? 'm33' (uniform highp 3X3 matrix of float) diff --git a/Test/baseResults/300scope.vert.out b/Test/baseResults/300scope.vert.out index d2428e0d..e340cf6a 100644 --- a/Test/baseResults/300scope.vert.out +++ b/Test/baseResults/300scope.vert.out @@ -153,16 +153,6 @@ ERROR: node is still EOpNull! 0:8 1.000000 0:11 Branch: Return with expression 0:11 'a' (in highp int) -0:25 Function Definition: cos(f1; (global highp float) -0:25 Function Parameters: -0:25 'x' (in highp float) -0:27 Sequence -0:27 Branch: Return -0:29 Function Definition: radians(b1; (global bool) -0:29 Function Parameters: -0:29 'x' (in bool) -0:31 Sequence -0:31 Branch: Return 0:36 Function Definition: main( (global void) 0:36 Function Parameters: 0:? Sequence diff --git a/Test/baseResults/310.comp.out b/Test/baseResults/310.comp.out index 9a5e4e89..a5be10e1 100644 --- a/Test/baseResults/310.comp.out +++ b/Test/baseResults/310.comp.out @@ -536,340 +536,6 @@ ERROR: node is still EOpNull! 0:36 Constant: 0:36 1 (const uint) 0:36 'gl_LocalInvocationIndex' (in highp uint LocalInvocationIndex) -0:59 Function Definition: foo( (global void) -0:59 Function Parameters: -0:61 Sequence -0:61 move second child to first child (temp highp float) -0:61 direct index (layout(column_major shared ) temp highp float) -0:61 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float) -0:61 'ro' (layout(column_major shared ) readonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values}) -0:61 Constant: -0:61 1 (const int) -0:61 Constant: -0:61 2 (const int) -0:61 Constant: -0:61 4.700000 -0:62 array length (temp int) -0:62 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float) -0:62 'ro' (layout(column_major shared ) readonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values}) -0:62 Constant: -0:62 1 (const int) -0:63 Pre-Increment (temp highp 4-component vector of float) -0:63 's' (shared highp 4-component vector of float) -0:84 Function Definition: qux( (global void) -0:84 Function Parameters: -0:86 Sequence -0:86 Sequence -0:86 move second child to first child (temp highp int) -0:86 'i' (temp highp int) -0:86 Constant: -0:86 4 (const int) -0:87 imageAtomicCompSwap (global highp int) -0:87 'iimg2D' (layout(r32i ) uniform highp iimage2D) -0:87 Construct ivec2 (temp highp 2-component vector of int) -0:87 'i' (temp highp int) -0:87 'i' (temp highp int) -0:87 'i' (temp highp int) -0:87 'i' (temp highp int) -0:88 imageAtomicAdd (global highp uint) -0:88 'uimg2D' (layout(r32ui ) uniform mediump uimage2D) -0:88 Construct ivec2 (temp highp 2-component vector of int) -0:88 'i' (temp highp int) -0:88 'i' (temp highp int) -0:88 Convert int to uint (temp highp uint) -0:88 'i' (temp highp int) -0:89 imageAtomicMin (global highp int) -0:89 'iimg2Drgba' (layout(rgba32i ) readonly uniform highp iimage2D) -0:89 Construct ivec2 (temp highp 2-component vector of int) -0:89 'i' (temp highp int) -0:89 'i' (temp highp int) -0:89 'i' (temp highp int) -0:90 Constant: -0:90 0.000000 -0:91 Sequence -0:91 move second child to first child (temp highp 4-component vector of int) -0:91 'pos' (temp highp 4-component vector of int) -0:91 imageLoad (global highp 4-component vector of int) -0:91 'iimg2D' (layout(r32i ) uniform highp iimage2D) -0:91 Construct ivec2 (temp highp 2-component vector of int) -0:91 'i' (temp highp int) -0:91 'i' (temp highp int) -0:92 imageStore (global highp void) -0:92 'ii2da' (writeonly uniform highp iimage2DArray) -0:92 Construct ivec3 (temp 3-component vector of int) -0:92 'i' (temp highp int) -0:92 'i' (temp highp int) -0:92 'i' (temp highp int) -0:92 Constant: -0:92 0 (const int) -0:92 0 (const int) -0:92 0 (const int) -0:92 0 (const int) -0:93 imageLoad (global mediump 4-component vector of float) -0:93 'img2Drgba' (layout(rgba32f ) readonly uniform mediump image2D) -0:93 Construct ivec2 (temp mediump 2-component vector of int) -0:93 'i' (temp highp int) -0:93 'i' (temp highp int) -0:94 imageLoad (global highp 4-component vector of int) -0:94 'ii2da' (writeonly uniform highp iimage2DArray) -0:94 Construct ivec3 (temp highp 3-component vector of int) -0:94 'i' (temp highp int) -0:94 'i' (temp highp int) -0:94 'i' (temp highp int) -0:100 Function Definition: passr(iI21; (global void) -0:100 Function Parameters: -0:100 'image' (coherent readonly in highp iimage2D) -0:107 Function Definition: passrc( (global void) -0:107 Function Parameters: -0:109 Sequence -0:109 Function Call: passr(iI21; (global void) -0:109 'qualim1' (layout(r32i ) coherent readonly uniform highp iimage2D) -0:110 Function Call: passr(iI21; (global void) -0:110 'qualim2' (layout(r32i ) coherent restrict readonly uniform highp iimage2D) -0:111 Function Call: passr(iI21; (global void) -0:111 'iimg2D' (layout(r32i ) uniform highp iimage2D) -0:123 Function Definition: func(au1; (global highp uint) -0:123 Function Parameters: -0:123 'c' (in highp atomic_uint) -0:125 Sequence -0:125 Branch: Return with expression -0:125 AtomicCounterIncrement (global highp uint) -0:125 'c' (in highp atomic_uint) -0:128 Function Definition: func2(au1; (global highp uint) -0:128 Function Parameters: -0:128 'c' (out highp atomic_uint) -0:130 Sequence -0:130 Branch: Return with expression -0:130 'counter' (layout(binding=0 offset=0 ) uniform highp atomic_uint) -0:131 Branch: Return with expression -0:131 AtomicCounter (global highp uint) -0:131 'counter' (layout(binding=0 offset=0 ) uniform highp atomic_uint) -0:134 Function Definition: mainAC( (global void) -0:134 Function Parameters: -0:? Sequence -0:137 Sequence -0:137 move second child to first child (temp highp uint) -0:137 'val' (temp highp uint) -0:137 AtomicCounter (global highp uint) -0:137 'counter' (layout(binding=0 offset=0 ) uniform highp atomic_uint) -0:138 AtomicCounterDecrement (global highp uint) -0:138 'counter' (layout(binding=0 offset=0 ) uniform highp atomic_uint) -0:146 Function Definition: opac( (global void) -0:146 Function Parameters: -0:? Sequence -0:149 indirect index (temp highp int) -0:149 'a' (temp 3-element array of highp int) -0:149 'counter' (layout(binding=0 offset=0 ) uniform highp atomic_uint) -0:150 direct index (layout(binding=2 offset=4 ) temp highp atomic_uint) -0:150 'countArr' (layout(binding=2 offset=4 ) uniform 4-element array of highp atomic_uint) -0:150 Constant: -0:150 2 (const int) -0:151 indirect index (layout(binding=2 offset=4 ) temp highp atomic_uint) -0:151 'countArr' (layout(binding=2 offset=4 ) uniform 4-element array of highp atomic_uint) -0:151 'i' (uniform highp int) -0:157 Function Definition: atoms( (global void) -0:157 Function Parameters: -0:159 Sequence -0:159 Sequence -0:159 move second child to first child (temp highp int) -0:159 'origi' (temp highp int) -0:159 AtomicAdd (global highp int) -0:159 'atomi' (shared highp int) -0:159 Constant: -0:159 3 (const int) -0:160 Sequence -0:160 move second child to first child (temp highp uint) -0:160 'origu' (temp highp uint) -0:160 AtomicAnd (global highp uint) -0:160 'atomu' (shared highp uint) -0:160 Constant: -0:160 7 (const uint) -0:161 move second child to first child (temp highp int) -0:161 'origi' (temp highp int) -0:161 AtomicExchange (global highp int) -0:161 'atomi' (shared highp int) -0:161 Constant: -0:161 4 (const int) -0:162 move second child to first child (temp highp uint) -0:162 'origu' (temp highp uint) -0:162 AtomicCompSwap (global highp uint) -0:162 'atomu' (shared highp uint) -0:162 Constant: -0:162 10 (const uint) -0:162 Constant: -0:162 8 (const uint) -0:191 Function Definition: foowo( (global void) -0:191 Function Parameters: -0:? Sequence -0:194 move second child to first child (temp highp float) -0:194 'g' (temp highp float) -0:194 direct index (layout(column_major shared ) temp highp float) -0:194 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float) -0:194 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values}) -0:194 Constant: -0:194 1 (const int) -0:194 Constant: -0:194 2 (const int) -0:195 Sequence -0:195 move second child to first child (temp highp float) -0:195 'f' (temp highp float) -0:195 direct index (layout(column_major shared ) temp highp float) -0:195 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float) -0:195 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values}) -0:195 Constant: -0:195 1 (const int) -0:195 Constant: -0:195 2 (const int) -0:196 Pre-Increment (temp highp float) -0:196 direct index (layout(column_major shared ) temp highp float) -0:196 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float) -0:196 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values}) -0:196 Constant: -0:196 1 (const int) -0:196 Constant: -0:196 2 (const int) -0:197 Post-Decrement (temp highp float) -0:197 direct index (layout(column_major shared ) temp highp float) -0:197 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float) -0:197 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values}) -0:197 Constant: -0:197 1 (const int) -0:197 Constant: -0:197 2 (const int) -0:198 add (temp highp float) -0:198 'f' (temp highp float) -0:198 direct index (layout(column_major shared ) temp highp float) -0:198 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float) -0:198 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values}) -0:198 Constant: -0:198 1 (const int) -0:198 Constant: -0:198 2 (const int) -0:199 subtract (temp highp float) -0:199 direct index (layout(column_major shared ) temp highp float) -0:199 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float) -0:199 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values}) -0:199 Constant: -0:199 1 (const int) -0:199 Constant: -0:199 2 (const int) -0:199 'f' (temp highp float) -0:201 Test condition and select (temp highp float) -0:201 Condition -0:201 'b' (temp bool) -0:201 true case -0:201 'f' (temp highp float) -0:201 false case -0:201 direct index (layout(column_major shared ) temp highp float) -0:201 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float) -0:201 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values}) -0:201 Constant: -0:201 1 (const int) -0:201 Constant: -0:201 2 (const int) -0:202 Test condition and select (temp highp float) -0:202 Condition -0:202 'b' (temp bool) -0:202 true case -0:202 direct index (layout(column_major shared ) temp highp float) -0:202 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float) -0:202 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values}) -0:202 Constant: -0:202 1 (const int) -0:202 Constant: -0:202 2 (const int) -0:202 false case -0:202 'f' (temp highp float) -0:203 Test condition and select (temp void) -0:203 Condition -0:203 Compare Equal (temp bool) -0:203 'f' (temp highp float) -0:203 direct index (layout(column_major shared ) temp highp float) -0:203 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float) -0:203 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values}) -0:203 Constant: -0:203 1 (const int) -0:203 Constant: -0:203 2 (const int) -0:203 true case -0:204 Pre-Increment (temp highp float) -0:204 'f' (temp highp float) -0:205 Test condition and select (temp void) -0:205 Condition -0:205 Compare Greater Than or Equal (temp bool) -0:205 'f' (temp highp float) -0:205 direct index (layout(column_major shared ) temp highp float) -0:205 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float) -0:205 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values}) -0:205 Constant: -0:205 1 (const int) -0:205 Constant: -0:205 2 (const int) -0:205 true case -0:206 Pre-Increment (temp highp float) -0:206 'f' (temp highp float) -0:207 move second child to first child (temp highp float) -0:207 'f' (temp highp float) -0:207 direct index (temp highp float) -0:207 Construct vec3 (temp highp 3-component vector of float) -0:207 direct index (layout(column_major shared ) temp highp float) -0:207 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float) -0:207 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values}) -0:207 Constant: -0:207 1 (const int) -0:207 Constant: -0:207 2 (const int) -0:207 Constant: -0:207 0 (const int) -0:208 Bitwise not (temp highp int) -0:208 value: direct index for structure (layout(column_major shared ) buffer highp int) -0:208 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values}) -0:208 Constant: -0:208 0 (const int) -0:209 move second child to first child (temp highp float) -0:209 direct index (layout(column_major shared ) temp highp float) -0:209 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float) -0:209 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values}) -0:209 Constant: -0:209 1 (const int) -0:209 Constant: -0:209 2 (const int) -0:209 Constant: -0:209 3.400000 -0:218 Function Definition: foomultio( (global void) -0:218 Function Parameters: -0:? Sequence -0:221 move second child to first child (temp highp float) -0:221 'g' (temp highp float) -0:221 direct index (layout(column_major shared ) temp highp float) -0:221 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float) -0:221 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values}) -0:221 Constant: -0:221 1 (const int) -0:221 Constant: -0:221 2 (const int) -0:222 Bitwise not (temp highp int) -0:222 value: direct index for structure (layout(column_major shared ) buffer highp int) -0:222 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values}) -0:222 Constant: -0:222 0 (const int) -0:223 move second child to first child (temp highp float) -0:223 direct index (layout(column_major shared ) temp highp float) -0:223 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float) -0:223 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values}) -0:223 Constant: -0:223 1 (const int) -0:223 Constant: -0:223 2 (const int) -0:223 Constant: -0:223 3.400000 -0:224 move second child to first child (temp highp int) -0:224 value: direct index for structure (layout(column_major shared ) buffer highp int) -0:224 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values}) -0:224 Constant: -0:224 0 (const int) -0:224 Constant: -0:224 2 (const int) 0:? Linker Objects 0:? 'gl_WorkGroupSize' (const highp 3-component vector of uint WorkGroupSize) 0:? 2 (const uint) diff --git a/Test/baseResults/310.frag.out b/Test/baseResults/310.frag.out index 66d6ae00..34cae953 100644 --- a/Test/baseResults/310.frag.out +++ b/Test/baseResults/310.frag.out @@ -1125,677 +1125,6 @@ ERROR: node is still EOpNull! 0:34 0.100000 0:34 Construct ivec2 (temp highp 2-component vector of int) 0:34 'i' (uniform mediump int) -0:38 Function Definition: foo23( (global void) -0:38 Function Parameters: -0:? Sequence -0:42 textureProjGradOffset (global highp 4-component vector of uint) -0:42 'usamp2d' (uniform highp usampler2D) -0:42 'outp' (out mediump 4-component vector of float) -0:42 Constant: -0:42 0.000000 -0:42 0.000000 -0:42 Constant: -0:42 0.000000 -0:42 0.000000 -0:42 Convert float to int (temp highp 2-component vector of int) -0:42 'c2D' (smooth in mediump 2-component vector of float) -0:43 textureProjGradOffset (global highp 4-component vector of uint) -0:43 'usamp2d' (uniform highp usampler2D) -0:43 'outp' (out mediump 4-component vector of float) -0:43 Constant: -0:43 0.000000 -0:43 0.000000 -0:43 Constant: -0:43 0.000000 -0:43 0.000000 -0:43 Constant: -0:43 3 (const int) -0:43 4 (const int) -0:44 textureProjGradOffset (global highp 4-component vector of uint) -0:44 'usamp2d' (uniform highp usampler2D) -0:44 'outp' (out mediump 4-component vector of float) -0:44 Constant: -0:44 0.000000 -0:44 0.000000 -0:44 Constant: -0:44 0.000000 -0:44 0.000000 -0:44 Constant: -0:44 15 (const int) -0:44 16 (const int) -0:45 textureProjGradOffset (global highp 4-component vector of uint) -0:45 'usamp2d' (uniform highp usampler2D) -0:45 'outp' (out mediump 4-component vector of float) -0:45 Constant: -0:45 0.000000 -0:45 0.000000 -0:45 Constant: -0:45 0.000000 -0:45 0.000000 -0:45 Constant: -0:45 -10 (const int) -0:45 20 (const int) -0:47 Test condition and select (temp void) -0:47 Condition -0:47 'gl_HelperInvocation' (in bool HelperInvocation) -0:47 true case -0:48 Pre-Increment (temp mediump 4-component vector of float) -0:48 'outp' (out mediump 4-component vector of float) -0:50 Sequence -0:50 move second child to first child (temp mediump int) -0:50 'sum' (temp mediump int) -0:50 Constant: -0:50 32 (const int) -0:58 move second child to first child (temp bool) -0:58 'b1' (temp bool) -0:58 mix (global bool) -0:58 'b2' (temp bool) -0:58 'b3' (temp bool) -0:58 'b' (temp bool) -0:59 Sequence -0:59 move second child to first child (temp mediump 3-component vector of uint) -0:59 'um3' (temp mediump 3-component vector of uint) -0:59 mix (global mediump 3-component vector of uint) -0:59 Construct uvec3 (temp mediump 3-component vector of uint) -0:59 Convert int to uint (temp mediump uint) -0:59 'i' (uniform mediump int) -0:59 Construct uvec3 (temp mediump 3-component vector of uint) -0:59 Convert int to uint (temp mediump uint) -0:59 'i' (uniform mediump int) -0:59 Construct bvec3 (temp 3-component vector of bool) -0:59 'b' (temp bool) -0:60 Sequence -0:60 move second child to first child (temp mediump 4-component vector of int) -0:60 'im4' (temp mediump 4-component vector of int) -0:60 mix (global mediump 4-component vector of int) -0:60 Construct ivec4 (temp mediump 4-component vector of int) -0:60 'i' (uniform mediump int) -0:60 Construct ivec4 (temp mediump 4-component vector of int) -0:60 'i' (uniform mediump int) -0:60 Construct bvec4 (temp 4-component vector of bool) -0:60 'b' (temp bool) -0:98 Function Definition: foots( (global void) -0:98 Function Parameters: -0:100 Sequence -0:100 Sequence -0:100 move second child to first child (temp highp 2-component vector of int) -0:100 'v2' (temp highp 2-component vector of int) -0:100 textureSize (global highp 2-component vector of int) -0:100 's1' (layout(binding=3 ) uniform highp sampler2D) -0:100 Constant: -0:100 2 (const int) -0:101 Sequence -0:101 move second child to first child (temp highp 3-component vector of int) -0:101 'v3' (temp highp 3-component vector of int) -0:101 textureSize (global highp 3-component vector of int) -0:101 'isamp2DA' (uniform highp isampler2DArray) -0:101 Constant: -0:101 3 (const int) -0:102 move second child to first child (temp highp 2-component vector of int) -0:102 'v2' (temp highp 2-component vector of int) -0:102 textureSize (global highp 2-component vector of int, operation at mediump) -0:102 's2dms' (uniform mediump sampler2DMS) -0:103 move second child to first child (temp highp 2-component vector of int) -0:103 'v2' (temp highp 2-component vector of int) -0:103 imageQuerySize (global highp 2-component vector of int) -0:103 'i2D' (layout(binding=2 ) writeonly uniform highp image2D) -0:104 move second child to first child (temp highp 3-component vector of int) -0:104 'v3' (temp highp 3-component vector of int) -0:104 imageQuerySize (global highp 3-component vector of int, operation at mediump) -0:104 'i3D' (layout(binding=4 ) readonly uniform mediump image3D) -0:105 move second child to first child (temp highp 2-component vector of int) -0:105 'v2' (temp highp 2-component vector of int) -0:105 imageQuerySize (global highp 2-component vector of int, operation at mediump) -0:105 'iCube' (layout(binding=5 ) uniform mediump imageCube) -0:106 move second child to first child (temp highp 3-component vector of int) -0:106 'v3' (temp highp 3-component vector of int) -0:106 imageQuerySize (global highp 3-component vector of int, operation at mediump) -0:106 'i2DA' (layout(binding=6 ) uniform mediump image2DArray) -0:107 move second child to first child (temp highp 2-component vector of int) -0:107 'v2' (temp highp 2-component vector of int) -0:107 imageQuerySize (global highp 2-component vector of int, operation at mediump) -0:107 'i2Dqualified' (layout(binding=6 ) coherent volatile restrict uniform mediump image2D) -0:165 Function Definition: fooIO( (global void) -0:165 Function Parameters: -0:167 Sequence -0:167 Sequence -0:167 move second child to first child (temp mediump 4-component vector of float) -0:167 'v' (temp mediump 4-component vector of float) -0:167 add (temp mediump 4-component vector of float) -0:167 v: direct index for structure (in mediump 4-component vector of float) -0:167 'inbinst' (in block{in mediump int a, in mediump 4-component vector of float v, in structure{global mediump int b} s}) -0:167 Constant: -0:167 1 (const int) -0:167 vAnon: direct index for structure (layout(location=13 ) centroid in mediump 4-component vector of float) -0:167 'anon@0' (in block{layout(location=12 ) in mediump int aAnon, layout(location=13 ) centroid in mediump 4-component vector of float vAnon}) -0:167 Constant: -0:167 1 (const uint) -0:168 vector scale second child into first child (temp mediump 4-component vector of float) -0:168 'v' (temp mediump 4-component vector of float) -0:168 f: direct index for structure (in mediump float) -0:168 direct index (temp block{in mediump float f}) -0:168 'arrayedInst' (in 4-element array of block{in mediump float f}) -0:168 Constant: -0:168 2 (const int) -0:168 Constant: -0:168 0 (const int) -0:169 vector scale second child into first child (temp mediump 4-component vector of float) -0:169 'v' (temp mediump 4-component vector of float) -0:169 f: direct index for structure (in mediump float) -0:169 indirect index (temp block{in mediump float f}) -0:169 'arrayedInst' (in 4-element array of block{in mediump float f}) -0:169 'i' (uniform mediump int) -0:169 Constant: -0:169 0 (const int) -0:179 Function Definition: foo_IO( (global void) -0:179 Function Parameters: -0:181 Sequence -0:181 move second child to first child (temp highp float) -0:181 'gl_FragDepth' (gl_FragDepth highp float FragDepth) -0:181 Constant: -0:181 0.200000 -0:182 'gl_Layer' (flat in highp int Layer) -0:183 'gl_PrimitiveID' (flat in highp int PrimitiveID) -0:184 Sequence -0:184 move second child to first child (temp bool) -0:184 'f' (temp bool) -0:184 'gl_FrontFacing' (gl_FrontFacing bool Face) -0:191 Function Definition: foo_GS( (global void) -0:191 Function Parameters: -0:193 Sequence -0:193 Sequence -0:193 move second child to first child (temp highp int) -0:193 'l' (temp highp int) -0:193 'gl_Layer' (flat in highp int Layer) -0:194 Sequence -0:194 move second child to first child (temp highp int) -0:194 'p' (temp highp int) -0:194 'gl_PrimitiveID' (flat in highp int PrimitiveID) -0:207 Function Definition: pfooBad( (global void) -0:207 Function Parameters: -0:? Sequence -0:210 move second child to first child (temp mediump 2-component vector of float) -0:210 'h' (noContraction temp mediump 2-component vector of float) -0:210 fma (global mediump 2-component vector of float) -0:210 'inf' (smooth in mediump 2-component vector of float) -0:210 'ing' (smooth in mediump 2-component vector of float) -0:210 'h' (noContraction temp mediump 2-component vector of float) -0:211 textureGatherOffset (global highp 4-component vector of float) -0:211 direct index (temp highp sampler2D) -0:211 'sArray' (uniform 4-element array of highp sampler2D) -0:211 Constant: -0:211 0 (const int) -0:211 Constant: -0:211 0.100000 -0:211 0.100000 -0:211 Convert float to int (temp highp 2-component vector of int) -0:211 'inf' (smooth in mediump 2-component vector of float) -0:212 textureGatherOffsets (global highp 4-component vector of float) -0:212 direct index (temp highp sampler2D) -0:212 'sArray' (uniform 4-element array of highp sampler2D) -0:212 Constant: -0:212 0 (const int) -0:212 Constant: -0:212 0.100000 -0:212 0.100000 -0:212 Constant: -0:212 0 (const int) -0:212 0 (const int) -0:212 0 (const int) -0:212 0 (const int) -0:212 0 (const int) -0:212 0 (const int) -0:212 0 (const int) -0:212 0 (const int) -0:217 Function Definition: pfoo( (global void) -0:217 Function Parameters: -0:? Sequence -0:220 move second child to first child (temp mediump 2-component vector of float) -0:220 'h' (noContraction temp mediump 2-component vector of float) -0:220 fma (global mediump 2-component vector of float) -0:220 'inf' (smooth in mediump 2-component vector of float) -0:220 'ing' (smooth in mediump 2-component vector of float) -0:220 'h' (noContraction temp mediump 2-component vector of float) -0:221 textureGatherOffset (global highp 4-component vector of float) -0:221 direct index (temp highp sampler2D) -0:221 'sArray' (uniform 4-element array of highp sampler2D) -0:221 Constant: -0:221 0 (const int) -0:221 Constant: -0:221 0.100000 -0:221 0.100000 -0:221 Convert float to int (temp highp 2-component vector of int) -0:221 'inf' (smooth in mediump 2-component vector of float) -0:222 textureGatherOffsets (global highp 4-component vector of float) -0:222 direct index (temp highp sampler2D) -0:222 'sArray' (uniform 4-element array of highp sampler2D) -0:222 Constant: -0:222 0 (const int) -0:222 Constant: -0:222 0.100000 -0:222 0.100000 -0:222 Constant: -0:222 0 (const int) -0:222 0 (const int) -0:222 0 (const int) -0:222 0 (const int) -0:222 0 (const int) -0:222 0 (const int) -0:222 0 (const int) -0:222 0 (const int) -0:223 textureGatherOffsets (global highp 4-component vector of float) -0:223 direct index (temp highp sampler2D) -0:223 'sArray' (uniform 4-element array of highp sampler2D) -0:223 Constant: -0:223 0 (const int) -0:223 Constant: -0:223 0.100000 -0:223 0.100000 -0:223 'offsets' (uniform 4-element array of mediump 2-component vector of int) -0:248 Function Definition: CAT( (global void) -0:248 Function Parameters: -0:250 Sequence -0:250 Sequence -0:250 move second child to first child (temp highp 4-component vector of float) -0:250 'b4' (temp highp 4-component vector of float) -0:250 texture (global highp 4-component vector of float) -0:250 'CA4' (uniform highp samplerCubeArray) -0:250 Constant: -0:250 0.500000 -0:250 0.500000 -0:250 0.500000 -0:250 0.500000 -0:250 Constant: -0:250 0.240000 -0:251 Sequence -0:251 move second child to first child (temp highp 4-component vector of int) -0:251 'b6' (temp highp 4-component vector of int) -0:251 texture (global highp 4-component vector of int) -0:251 'CA6' (uniform highp isamplerCubeArray) -0:251 Constant: -0:251 0.500000 -0:251 0.500000 -0:251 0.500000 -0:251 0.500000 -0:251 Constant: -0:251 0.260000 -0:252 Sequence -0:252 move second child to first child (temp highp 4-component vector of uint) -0:252 'b7' (temp highp 4-component vector of uint) -0:252 texture (global highp 4-component vector of uint) -0:252 'CA7' (uniform highp usamplerCubeArray) -0:252 Constant: -0:252 0.500000 -0:252 0.500000 -0:252 0.500000 -0:252 0.500000 -0:252 Constant: -0:252 0.270000 -0:255 Function Definition: badSample( (global void) -0:255 Function Parameters: -0:257 Sequence -0:257 Sequence -0:257 move second child to first child (temp lowp int) -0:257 'a1' (temp lowp int) -0:257 'gl_SampleID' (flat in lowp int SampleId) -0:258 Sequence -0:258 move second child to first child (temp mediump 2-component vector of float) -0:258 'a2' (temp mediump 2-component vector of float) -0:258 'gl_SamplePosition' (smooth in mediump 2-component vector of float SamplePosition) -0:259 Sequence -0:259 move second child to first child (temp highp int) -0:259 'a3' (temp highp int) -0:259 direct index (flat temp highp int SampleMaskIn) -0:259 'gl_SampleMaskIn' (flat in 1-element array of highp int SampleMaskIn) -0:259 Constant: -0:259 0 (const int) -0:260 move second child to first child (temp highp int) -0:260 direct index (temp highp int SampleMaskIn) -0:260 'gl_SampleMask' (out 1-element array of highp int SampleMaskIn) -0:260 Constant: -0:260 0 (const int) -0:260 'a3' (temp highp int) -0:261 Sequence -0:261 move second child to first child (temp mediump int) -0:261 'n' (temp mediump int) -0:261 'gl_NumSamples' (uniform lowp int) -0:268 Function Definition: goodSample( (global void) -0:268 Function Parameters: -0:270 Sequence -0:270 Sequence -0:270 move second child to first child (temp lowp int) -0:270 'a1' (temp lowp int) -0:270 'gl_SampleID' (flat in lowp int SampleId) -0:271 Sequence -0:271 move second child to first child (temp mediump 2-component vector of float) -0:271 'a2' (temp mediump 2-component vector of float) -0:271 'gl_SamplePosition' (smooth in mediump 2-component vector of float SamplePosition) -0:272 Sequence -0:272 move second child to first child (temp highp int) -0:272 'a3' (temp highp int) -0:272 direct index (flat temp highp int SampleMaskIn) -0:272 'gl_SampleMaskIn' (flat in 1-element array of highp int SampleMaskIn) -0:272 Constant: -0:272 0 (const int) -0:273 move second child to first child (temp highp int) -0:273 direct index (temp highp int SampleMaskIn) -0:273 'gl_SampleMask' (out 1-element array of highp int SampleMaskIn) -0:273 Constant: -0:273 0 (const int) -0:273 'a3' (temp highp int) -0:274 Sequence -0:274 move second child to first child (temp mediump int) -0:274 'n1' (temp mediump int) -0:274 Constant: -0:274 4 (const int) -0:275 Sequence -0:275 move second child to first child (temp mediump int) -0:275 'n2' (temp mediump int) -0:275 'gl_NumSamples' (uniform lowp int) -0:283 Function Definition: badImageAtom( (global void) -0:283 Function Parameters: -0:? Sequence -0:289 imageAtomicAdd (global highp int) -0:289 'im2Di' (layout(r32i ) uniform highp iimage2D) -0:289 'P' (uniform mediump 2-component vector of int) -0:289 'dati' (temp mediump int) -0:290 imageAtomicAdd (global highp uint) -0:290 'im2Du' (layout(r32ui ) uniform highp uimage2D) -0:290 'P' (uniform mediump 2-component vector of int) -0:290 'datu' (temp mediump uint) -0:291 imageAtomicMin (global highp int) -0:291 'im2Di' (layout(r32i ) uniform highp iimage2D) -0:291 'P' (uniform mediump 2-component vector of int) -0:291 'dati' (temp mediump int) -0:292 imageAtomicMin (global highp uint) -0:292 'im2Du' (layout(r32ui ) uniform highp uimage2D) -0:292 'P' (uniform mediump 2-component vector of int) -0:292 'datu' (temp mediump uint) -0:293 imageAtomicMax (global highp int) -0:293 'im2Di' (layout(r32i ) uniform highp iimage2D) -0:293 'P' (uniform mediump 2-component vector of int) -0:293 'dati' (temp mediump int) -0:294 imageAtomicMax (global highp uint) -0:294 'im2Du' (layout(r32ui ) uniform highp uimage2D) -0:294 'P' (uniform mediump 2-component vector of int) -0:294 'datu' (temp mediump uint) -0:295 imageAtomicAnd (global highp int) -0:295 'im2Di' (layout(r32i ) uniform highp iimage2D) -0:295 'P' (uniform mediump 2-component vector of int) -0:295 'dati' (temp mediump int) -0:296 imageAtomicAnd (global highp uint) -0:296 'im2Du' (layout(r32ui ) uniform highp uimage2D) -0:296 'P' (uniform mediump 2-component vector of int) -0:296 'datu' (temp mediump uint) -0:297 imageAtomicOr (global highp int) -0:297 'im2Di' (layout(r32i ) uniform highp iimage2D) -0:297 'P' (uniform mediump 2-component vector of int) -0:297 'dati' (temp mediump int) -0:298 imageAtomicOr (global highp uint) -0:298 'im2Du' (layout(r32ui ) uniform highp uimage2D) -0:298 'P' (uniform mediump 2-component vector of int) -0:298 'datu' (temp mediump uint) -0:299 imageAtomicXor (global highp int) -0:299 'im2Di' (layout(r32i ) uniform highp iimage2D) -0:299 'P' (uniform mediump 2-component vector of int) -0:299 'dati' (temp mediump int) -0:300 imageAtomicXor (global highp uint) -0:300 'im2Du' (layout(r32ui ) uniform highp uimage2D) -0:300 'P' (uniform mediump 2-component vector of int) -0:300 'datu' (temp mediump uint) -0:301 imageAtomicExchange (global highp int) -0:301 'im2Di' (layout(r32i ) uniform highp iimage2D) -0:301 'P' (uniform mediump 2-component vector of int) -0:301 'dati' (temp mediump int) -0:302 imageAtomicExchange (global highp uint) -0:302 'im2Du' (layout(r32ui ) uniform highp uimage2D) -0:302 'P' (uniform mediump 2-component vector of int) -0:302 'datu' (temp mediump uint) -0:303 imageAtomicExchange (global highp float) -0:303 'im2Df' (layout(r32f ) uniform highp image2D) -0:303 'P' (uniform mediump 2-component vector of int) -0:303 'datf' (temp mediump float) -0:304 imageAtomicCompSwap (global highp int) -0:304 'im2Di' (layout(r32i ) uniform highp iimage2D) -0:304 'P' (uniform mediump 2-component vector of int) -0:304 Constant: -0:304 3 (const int) -0:304 'dati' (temp mediump int) -0:305 imageAtomicCompSwap (global highp uint) -0:305 'im2Du' (layout(r32ui ) uniform highp uimage2D) -0:305 'P' (uniform mediump 2-component vector of int) -0:305 Constant: -0:305 5 (const uint) -0:305 'datu' (temp mediump uint) -0:316 Function Definition: goodImageAtom( (global void) -0:316 Function Parameters: -0:? Sequence -0:322 imageAtomicAdd (global highp int) -0:322 'im2Di' (layout(r32i ) uniform highp iimage2D) -0:322 'P' (uniform mediump 2-component vector of int) -0:322 'dati' (temp mediump int) -0:323 imageAtomicAdd (global highp uint) -0:323 'im2Du' (layout(r32ui ) uniform highp uimage2D) -0:323 'P' (uniform mediump 2-component vector of int) -0:323 'datu' (temp mediump uint) -0:324 imageAtomicMin (global highp int) -0:324 'im2Di' (layout(r32i ) uniform highp iimage2D) -0:324 'P' (uniform mediump 2-component vector of int) -0:324 'dati' (temp mediump int) -0:325 imageAtomicMin (global highp uint) -0:325 'im2Du' (layout(r32ui ) uniform highp uimage2D) -0:325 'P' (uniform mediump 2-component vector of int) -0:325 'datu' (temp mediump uint) -0:326 imageAtomicMax (global highp int) -0:326 'im2Di' (layout(r32i ) uniform highp iimage2D) -0:326 'P' (uniform mediump 2-component vector of int) -0:326 'dati' (temp mediump int) -0:327 imageAtomicMax (global highp uint) -0:327 'im2Du' (layout(r32ui ) uniform highp uimage2D) -0:327 'P' (uniform mediump 2-component vector of int) -0:327 'datu' (temp mediump uint) -0:328 imageAtomicAnd (global highp int) -0:328 'im2Di' (layout(r32i ) uniform highp iimage2D) -0:328 'P' (uniform mediump 2-component vector of int) -0:328 'dati' (temp mediump int) -0:329 imageAtomicAnd (global highp uint) -0:329 'im2Du' (layout(r32ui ) uniform highp uimage2D) -0:329 'P' (uniform mediump 2-component vector of int) -0:329 'datu' (temp mediump uint) -0:330 imageAtomicOr (global highp int) -0:330 'im2Di' (layout(r32i ) uniform highp iimage2D) -0:330 'P' (uniform mediump 2-component vector of int) -0:330 'dati' (temp mediump int) -0:331 imageAtomicOr (global highp uint) -0:331 'im2Du' (layout(r32ui ) uniform highp uimage2D) -0:331 'P' (uniform mediump 2-component vector of int) -0:331 'datu' (temp mediump uint) -0:332 imageAtomicXor (global highp int) -0:332 'im2Di' (layout(r32i ) uniform highp iimage2D) -0:332 'P' (uniform mediump 2-component vector of int) -0:332 'dati' (temp mediump int) -0:333 imageAtomicXor (global highp uint) -0:333 'im2Du' (layout(r32ui ) uniform highp uimage2D) -0:333 'P' (uniform mediump 2-component vector of int) -0:333 'datu' (temp mediump uint) -0:334 imageAtomicExchange (global highp int) -0:334 'im2Di' (layout(r32i ) uniform highp iimage2D) -0:334 'P' (uniform mediump 2-component vector of int) -0:334 'dati' (temp mediump int) -0:335 imageAtomicExchange (global highp uint) -0:335 'im2Du' (layout(r32ui ) uniform highp uimage2D) -0:335 'P' (uniform mediump 2-component vector of int) -0:335 'datu' (temp mediump uint) -0:336 imageAtomicExchange (global highp float) -0:336 'im2Df' (layout(r32f ) uniform highp image2D) -0:336 'P' (uniform mediump 2-component vector of int) -0:336 'datf' (temp mediump float) -0:337 imageAtomicCompSwap (global highp int) -0:337 'im2Di' (layout(r32i ) uniform highp iimage2D) -0:337 'P' (uniform mediump 2-component vector of int) -0:337 Constant: -0:337 3 (const int) -0:337 'dati' (temp mediump int) -0:338 imageAtomicCompSwap (global highp uint) -0:338 'im2Du' (layout(r32ui ) uniform highp uimage2D) -0:338 'P' (uniform mediump 2-component vector of int) -0:338 Constant: -0:338 5 (const uint) -0:338 'datu' (temp mediump uint) -0:340 imageAtomicMax (global highp int) -0:340 'badIm2Di' (layout(rgba16i ) uniform highp iimage2D) -0:340 'P' (uniform mediump 2-component vector of int) -0:340 'dati' (temp mediump int) -0:341 imageAtomicMax (global highp uint) -0:341 'badIm2Du' (layout(rgba8ui ) uniform highp uimage2D) -0:341 'P' (uniform mediump 2-component vector of int) -0:341 'datu' (temp mediump uint) -0:342 imageAtomicExchange (global highp float) -0:342 'badIm2Df' (layout(rgba32f ) uniform highp image2D) -0:342 'P' (uniform mediump 2-component vector of int) -0:342 'datf' (temp mediump float) -0:353 Function Definition: badInterp( (global void) -0:353 Function Parameters: -0:355 Sequence -0:355 interpolateAtCentroid (global mediump 2-component vector of float) -0:355 'colorfc' (centroid flat in mediump 2-component vector of float) -0:356 interpolateAtSample (global mediump 2-component vector of float) -0:356 'colorfc' (centroid flat in mediump 2-component vector of float) -0:356 Constant: -0:356 1 (const int) -0:357 interpolateAtOffset (global mediump 2-component vector of float) -0:357 'colorfc' (centroid flat in mediump 2-component vector of float) -0:357 Constant: -0:357 0.200000 -0:357 0.200000 -0:369 Function Definition: interp( (global void) -0:369 Function Parameters: -0:? Sequence -0:376 move second child to first child (temp mediump 2-component vector of float) -0:376 'res2' (temp mediump 2-component vector of float) -0:376 interpolateAtCentroid (global mediump 2-component vector of float) -0:376 'colorfc' (centroid flat in mediump 2-component vector of float) -0:377 move second child to first child (temp mediump 4-component vector of float) -0:377 'res4' (temp mediump 4-component vector of float) -0:377 interpolateAtCentroid (global mediump 4-component vector of float) -0:377 'colorSampIn' (smooth sample in mediump 4-component vector of float) -0:378 move second child to first child (temp mediump 4-component vector of float) -0:378 'res4' (temp mediump 4-component vector of float) -0:378 interpolateAtCentroid (global mediump 4-component vector of float) -0:378 'colorfsi' (flat sample in mediump 4-component vector of float) -0:379 move second child to first child (temp mediump float) -0:379 'res' (temp mediump float) -0:379 interpolateAtCentroid (global mediump float) -0:379 'scalarIn' (smooth in mediump float) -0:380 'res3' (temp mediump 3-component vector of float) -0:381 move second child to first child (temp mediump 3-component vector of float) -0:381 'res3' (temp mediump 3-component vector of float) -0:381 interpolateAtCentroid (global mediump 3-component vector of float) -0:381 direct index (smooth sample temp mediump 3-component vector of float) -0:381 'sampInArray' (smooth sample in 4-element array of mediump 3-component vector of float) -0:381 Constant: -0:381 2 (const int) -0:382 move second child to first child (temp mediump 2-component vector of float) -0:382 'res2' (temp mediump 2-component vector of float) -0:382 interpolateAtCentroid (global mediump 2-component vector of float) -0:382 vector swizzle (temp mediump 2-component vector of float) -0:382 direct index (smooth sample temp mediump 3-component vector of float) -0:382 'sampInArray' (smooth sample in 4-element array of mediump 3-component vector of float) -0:382 Constant: -0:382 2 (const int) -0:382 Sequence -0:382 Constant: -0:382 0 (const int) -0:382 Constant: -0:382 1 (const int) -0:384 'res3' (temp mediump 3-component vector of float) -0:385 move second child to first child (temp mediump 3-component vector of float) -0:385 'res3' (temp mediump 3-component vector of float) -0:385 interpolateAtSample (global mediump 3-component vector of float) -0:385 indirect index (smooth sample temp mediump 3-component vector of float) -0:385 'sampInArray' (smooth sample in 4-element array of mediump 3-component vector of float) -0:385 'i' (uniform mediump int) -0:385 Constant: -0:385 0 (const int) -0:386 move second child to first child (temp mediump 2-component vector of float) -0:386 'res2' (temp mediump 2-component vector of float) -0:386 interpolateAtSample (global mediump 2-component vector of float) -0:386 vector swizzle (temp mediump 2-component vector of float) -0:386 direct index (smooth sample temp mediump 3-component vector of float) -0:386 'sampInArray' (smooth sample in 4-element array of mediump 3-component vector of float) -0:386 Constant: -0:386 2 (const int) -0:386 Sequence -0:386 Constant: -0:386 0 (const int) -0:386 Constant: -0:386 1 (const int) -0:386 Constant: -0:386 2 (const int) -0:387 move second child to first child (temp mediump float) -0:387 'res' (temp mediump float) -0:387 interpolateAtSample (global mediump float) -0:387 'scalarIn' (smooth in mediump float) -0:387 Constant: -0:387 1 (const int) -0:389 'res3' (temp mediump 3-component vector of float) -0:390 move second child to first child (temp mediump 3-component vector of float) -0:390 'res3' (temp mediump 3-component vector of float) -0:390 interpolateAtOffset (global mediump 3-component vector of float) -0:390 direct index (smooth sample temp mediump 3-component vector of float) -0:390 'sampInArray' (smooth sample in 4-element array of mediump 3-component vector of float) -0:390 Constant: -0:390 2 (const int) -0:390 Constant: -0:390 0.200000 -0:390 0.200000 -0:391 move second child to first child (temp mediump 2-component vector of float) -0:391 'res2' (temp mediump 2-component vector of float) -0:391 interpolateAtOffset (global mediump 2-component vector of float) -0:391 vector swizzle (temp mediump 2-component vector of float) -0:391 direct index (smooth sample temp mediump 3-component vector of float) -0:391 'sampInArray' (smooth sample in 4-element array of mediump 3-component vector of float) -0:391 Constant: -0:391 2 (const int) -0:391 Sequence -0:391 Constant: -0:391 0 (const int) -0:391 Constant: -0:391 1 (const int) -0:391 Constant: -0:391 0.200000 -0:391 0.200000 -0:392 move second child to first child (temp mediump float) -0:392 'res' (temp mediump float) -0:392 interpolateAtOffset (global mediump float) -0:392 add (temp mediump float) -0:392 'scalarIn' (smooth in mediump float) -0:392 'scalarIn' (smooth in mediump float) -0:392 Constant: -0:392 0.200000 -0:392 0.200000 -0:393 move second child to first child (temp mediump float) -0:393 'res' (temp mediump float) -0:393 interpolateAtOffset (global mediump float) -0:393 'scalarIn' (smooth in mediump float) -0:393 Constant: -0:393 0.200000 -0:393 0.200000 -0:396 move second child to first child (temp mediump float) -0:396 'res' (temp mediump float) -0:396 interpolateAtCentroid (global mediump float) -0:396 'f' (temp mediump float) -0:397 move second child to first child (temp mediump 4-component vector of float) -0:397 'res4' (temp mediump 4-component vector of float) -0:397 interpolateAtSample (global mediump 4-component vector of float) -0:397 'outp' (out mediump 4-component vector of float) -0:397 Constant: -0:397 0 (const int) -0:427 Function Definition: blendFoo( (temp void) -0:427 Function Parameters: -0:428 Function Definition: blendFoo(vf3; (global void) -0:428 Function Parameters: -0:428 'v' (in mediump 3-component vector of float) 0:? Linker Objects 0:? 'gl_FragCoord' (smooth in mediump 4-component vector of float) 0:? 'v3' (layout(location=2 ) smooth in mediump 3-component vector of float) diff --git a/Test/baseResults/310.geom.out b/Test/baseResults/310.geom.out index 888c1423..def6b7ab 100644 --- a/Test/baseResults/310.geom.out +++ b/Test/baseResults/310.geom.out @@ -250,74 +250,6 @@ ERROR: node is still EOpNull! 0:52 'gl_Layer' (layout(stream=0 ) out highp int Layer) 0:52 Constant: 0:52 2 (const int) -0:63 Function Definition: foo(i1; (global void) -0:63 Function Parameters: -0:63 'a' (in highp int) -0:65 Sequence -0:65 move second child to first child (temp mediump 4-component vector of float) -0:65 a: direct index for structure (layout(stream=0 ) out mediump 4-component vector of float) -0:65 'ouuaa6' (layout(stream=0 ) out block{layout(stream=0 ) out mediump 4-component vector of float a}) -0:65 Constant: -0:65 0 (const int) -0:65 Constant: -0:65 1.000000 -0:65 1.000000 -0:65 1.000000 -0:65 1.000000 -0:114 Function Definition: fooe1( (global void) -0:114 Function Parameters: -0:116 Sequence -0:116 'gl_ViewportIndex' (temp float) -0:117 'gl_MaxViewports' (temp float) -0:118 Constant: -0:118 4 (const int) -0:119 Sequence -0:119 move second child to first child (temp highp int) -0:119 'inv' (temp highp int) -0:119 'gl_InvocationID' (in highp int InvocationID) -0:134 Function Definition: notHere( (global void) -0:134 Function Parameters: -0:136 Sequence -0:136 'gl_MaxGeometryVaryingComponents' (temp float) -0:137 'gl_VerticesIn' (temp float) -0:140 Function Definition: pointSize1( (global void) -0:140 Function Parameters: -0:142 Sequence -0:142 Sequence -0:142 move second child to first child (temp highp float) -0:142 'ps' (temp highp float) -0:142 gl_PointSize: direct index for structure (in highp float PointSize) -0:142 direct index (temp block{in highp 4-component vector of float Position gl_Position, in highp float PointSize gl_PointSize}) -0:142 'gl_in' (in 4-element array of block{in highp 4-component vector of float Position gl_Position, in highp float PointSize gl_PointSize}) -0:142 Constant: -0:142 3 (const int) -0:142 Constant: -0:142 1 (const int) -0:143 move second child to first child (temp highp float) -0:143 gl_PointSize: direct index for structure (layout(stream=0 ) gl_PointSize highp float PointSize) -0:143 'anon@1' (layout(stream=0 ) out block{layout(stream=0 ) gl_Position highp 4-component vector of float Position gl_Position, layout(stream=0 ) gl_PointSize highp float PointSize gl_PointSize}) -0:143 Constant: -0:143 1 (const uint) -0:143 'ps' (temp highp float) -0:148 Function Definition: pointSize2( (global void) -0:148 Function Parameters: -0:150 Sequence -0:150 Sequence -0:150 move second child to first child (temp highp float) -0:150 'ps' (temp highp float) -0:150 gl_PointSize: direct index for structure (in highp float PointSize) -0:150 direct index (temp block{in highp 4-component vector of float Position gl_Position, in highp float PointSize gl_PointSize}) -0:150 'gl_in' (in 4-element array of block{in highp 4-component vector of float Position gl_Position, in highp float PointSize gl_PointSize}) -0:150 Constant: -0:150 3 (const int) -0:150 Constant: -0:150 1 (const int) -0:151 move second child to first child (temp highp float) -0:151 gl_PointSize: direct index for structure (layout(stream=0 ) gl_PointSize highp float PointSize) -0:151 'anon@1' (layout(stream=0 ) out block{layout(stream=0 ) gl_Position highp 4-component vector of float Position gl_Position, layout(stream=0 ) gl_PointSize highp float PointSize gl_PointSize}) -0:151 Constant: -0:151 1 (const uint) -0:151 'ps' (temp highp float) 0:? Linker Objects 0:? 'fromV' (in 4-element array of block{in mediump 3-component vector of float color}) 0:? 'nonBlockUnsized' (in 4-element array of mediump 4-component vector of float) diff --git a/Test/baseResults/310.tesc.out b/Test/baseResults/310.tesc.out index 24e3d209..ab27198f 100644 --- a/Test/baseResults/310.tesc.out +++ b/Test/baseResults/310.tesc.out @@ -514,172 +514,6 @@ ERROR: node is still EOpNull! 0:58 Barrier (global void) 0:61 Branch: Return 0:63 Barrier (global void) -0:69 Function Definition: foo( (global void) -0:69 Function Parameters: -0:71 Sequence -0:71 gl_Position: direct index for structure (out highp 4-component vector of float Position) -0:71 direct index (temp block{out highp 4-component vector of float Position gl_Position, out highp float PointSize gl_PointSize}) -0:71 'gl_out' (out 4-element array of block{out highp 4-component vector of float Position gl_Position, out highp float PointSize gl_PointSize}) -0:71 Constant: -0:71 4 (const int) -0:71 Constant: -0:71 0 (const int) -0:73 Barrier (global void) -0:92 Function Definition: foop( (global void) -0:92 Function Parameters: -0:? Sequence -0:95 move second child to first child (temp highp float) -0:95 'd' (noContraction temp highp float) -0:95 fma (global highp float) -0:95 'd' (noContraction temp highp float) -0:95 'd' (noContraction temp highp float) -0:95 'd' (noContraction temp highp float) -0:112 Function Definition: pointSize2( (global void) -0:112 Function Parameters: -0:114 Sequence -0:114 Sequence -0:114 move second child to first child (temp highp float) -0:114 'ps' (temp highp float) -0:114 gl_PointSize: direct index for structure (in highp float PointSize) -0:114 direct index (temp block{in highp 4-component vector of float Position gl_Position, in highp float PointSize gl_PointSize}) -0:114 'gl_in' (in 32-element array of block{in highp 4-component vector of float Position gl_Position, in highp float PointSize gl_PointSize}) -0:114 Constant: -0:114 1 (const int) -0:114 Constant: -0:114 1 (const int) -0:115 move second child to first child (temp highp float) -0:115 gl_PointSize: direct index for structure (out highp float PointSize) -0:115 indirect index (temp block{out highp 4-component vector of float Position gl_Position, out highp float PointSize gl_PointSize}) -0:115 'gl_out' (out 4-element array of block{out highp 4-component vector of float Position gl_Position, out highp float PointSize gl_PointSize}) -0:115 'gl_InvocationID' (in highp int InvocationID) -0:115 Constant: -0:115 1 (const int) -0:115 'ps' (temp highp float) -0:122 Function Definition: goodfoop( (global void) -0:122 Function Parameters: -0:? Sequence -0:126 multiply second child into first child (temp highp 3-component vector of float) -0:126 'pv3' (noContraction temp highp 3-component vector of float) -0:126 'pv3' (noContraction temp highp 3-component vector of float) -0:127 move second child to first child (temp highp 3-component vector of float) -0:127 'pv3' (noContraction temp highp 3-component vector of float) -0:127 fma (global highp 3-component vector of float) -0:127 'pv3' (noContraction temp highp 3-component vector of float) -0:127 'pv3' (noContraction temp highp 3-component vector of float) -0:127 'pv3' (noContraction temp highp 3-component vector of float) -0:128 move second child to first child (temp highp float) -0:128 'd' (noContraction temp highp float) -0:128 fma (global highp float) -0:128 'd' (noContraction temp highp float) -0:128 'd' (noContraction temp highp float) -0:128 'd' (noContraction temp highp float) -0:131 Function Definition: bbBad( (global void) -0:131 Function Parameters: -0:133 Sequence -0:133 'gl_BoundingBoxOES' (patch out 2-element array of highp 4-component vector of float BoundingBox) -0:138 Function Definition: bb( (global void) -0:138 Function Parameters: -0:140 Sequence -0:140 move second child to first child (temp highp 4-component vector of float) -0:140 direct index (patch temp highp 4-component vector of float BoundingBox) -0:140 'gl_BoundingBoxOES' (patch out 2-element array of highp 4-component vector of float BoundingBox) -0:140 Constant: -0:140 0 (const int) -0:140 Constant: -0:140 0.000000 -0:140 0.000000 -0:140 0.000000 -0:140 0.000000 -0:141 move second child to first child (temp highp 4-component vector of float) -0:141 direct index (patch temp highp 4-component vector of float BoundingBox) -0:141 'gl_BoundingBoxOES' (patch out 2-element array of highp 4-component vector of float BoundingBox) -0:141 Constant: -0:141 1 (const int) -0:141 Constant: -0:141 1.000000 -0:141 1.000000 -0:141 1.000000 -0:141 1.000000 -0:142 move second child to first child (temp highp 4-component vector of float) -0:142 direct index (patch temp highp 4-component vector of float BoundingBox) -0:142 'gl_BoundingBoxOES' (patch out 2-element array of highp 4-component vector of float BoundingBox) -0:142 Constant: -0:142 2 (const int) -0:142 Constant: -0:142 2.000000 -0:142 2.000000 -0:142 2.000000 -0:142 2.000000 -0:153 Function Definition: outputtingOutparam(i1; (global void) -0:153 Function Parameters: -0:153 'a' (out highp int) -0:155 Sequence -0:155 move second child to first child (temp highp int) -0:155 'a' (out highp int) -0:155 Constant: -0:155 2 (const int) -0:158 Function Definition: outputting( (global void) -0:158 Function Parameters: -0:160 Sequence -0:160 move second child to first child (temp highp int) -0:160 indirect index (temp highp int) -0:160 'outa' (out 4-element array of highp int) -0:160 'gl_InvocationID' (in highp int InvocationID) -0:160 Constant: -0:160 2 (const int) -0:161 move second child to first child (temp highp int) -0:161 direct index (temp highp int) -0:161 'outa' (out 4-element array of highp int) -0:161 Constant: -0:161 1 (const int) -0:161 Constant: -0:161 2 (const int) -0:162 move second child to first child (temp highp 4-component vector of float) -0:162 gl_Position: direct index for structure (out highp 4-component vector of float Position) -0:162 direct index (temp block{out highp 4-component vector of float Position gl_Position, out highp float PointSize gl_PointSize}) -0:162 'gl_out' (out 4-element array of block{out highp 4-component vector of float Position gl_Position, out highp float PointSize gl_PointSize}) -0:162 Constant: -0:162 0 (const int) -0:162 Constant: -0:162 0 (const int) -0:162 Constant: -0:162 1.000000 -0:162 1.000000 -0:162 1.000000 -0:162 1.000000 -0:163 direct index (temp highp int) -0:163 'outa' (out 4-element array of highp int) -0:163 Constant: -0:163 1 (const int) -0:164 direct index (temp block{out highp 4-component vector of float Position gl_Position, out highp float PointSize gl_PointSize}) -0:164 'gl_out' (out 4-element array of block{out highp 4-component vector of float Position gl_Position, out highp float PointSize gl_PointSize}) -0:164 Constant: -0:164 0 (const int) -0:165 Function Call: outputtingOutparam(i1; (global void) -0:165 direct index (temp highp int) -0:165 'outa' (out 4-element array of highp int) -0:165 Constant: -0:165 0 (const int) -0:166 Function Call: outputtingOutparam(i1; (global void) -0:166 indirect index (temp highp int) -0:166 'outa' (out 4-element array of highp int) -0:166 'gl_InvocationID' (in highp int InvocationID) -0:167 move second child to first child (temp highp float) -0:167 f: direct index for structure (out highp float) -0:167 direct index (patch temp block{out highp float f}) -0:167 'patchIName' (patch out 4-element array of block{out highp float f}) -0:167 Constant: -0:167 1 (const int) -0:167 Constant: -0:167 0 (const int) -0:167 Constant: -0:167 3.140000 -0:168 move second child to first child (temp highp int) -0:168 indirect index (temp highp int) -0:168 'outa' (out 4-element array of highp int) -0:168 'gl_InvocationID' (in highp int InvocationID) -0:168 Constant: -0:168 2 (const int) 0:? Linker Objects 0:? 'gl_out' (out 4-element array of block{out highp 4-component vector of float Position gl_Position, out highp float PointSize gl_PointSize}) 0:? 'outa' (out 4-element array of highp int) diff --git a/Test/baseResults/310.tese.out b/Test/baseResults/310.tese.out index aacfedbd..62894ec7 100644 --- a/Test/baseResults/310.tese.out +++ b/Test/baseResults/310.tese.out @@ -274,19 +274,6 @@ ERROR: node is still EOpNull! 0:48 Constant: 0:48 0.000000 0:48 'cd' (temp highp float) -0:117 Function Definition: pointSize2( (global void) -0:117 Function Parameters: -0:? Sequence -0:120 move second child to first child (temp highp float) -0:120 gl_PointSize: direct index for structure (gl_PointSize highp float PointSize) -0:120 'anon@1' (out block{gl_Position highp 4-component vector of float Position gl_Position, gl_PointSize highp float PointSize gl_PointSize}) -0:120 Constant: -0:120 1 (const uint) -0:120 'ps' (temp highp float) -0:125 Function Definition: bbbad( (global void) -0:125 Function Parameters: -0:127 Sequence -0:127 'gl_BoundingBoxOES' (temp float) 0:? Linker Objects 0:? 'patchIn' (patch in highp 4-component vector of float) 0:? 'patchOut' (patch out highp 4-component vector of float) diff --git a/Test/baseResults/310.vert.out b/Test/baseResults/310.vert.out index 84a50e89..d0dfedf2 100644 --- a/Test/baseResults/310.vert.out +++ b/Test/baseResults/310.vert.out @@ -1158,693 +1158,6 @@ ERROR: node is still EOpNull! 0:48 'v4' (temp mediump 4-component vector of float) 0:48 UnpackSnorm4x8 (global mediump 4-component vector of float, operation at highp) 0:48 'u1' (temp highp uint) -0:60 Function Definition: foo( (global void) -0:60 Function Parameters: -0:? Sequence -0:63 move second child to first child (temp highp 2-component vector of int) -0:63 'v2' (temp highp 2-component vector of int) -0:63 textureSize (global highp 2-component vector of int) -0:63 's2dms' (uniform highp sampler2DMS) -0:64 move second child to first child (temp highp 2-component vector of int) -0:64 'v2' (temp highp 2-component vector of int) -0:64 textureSize (global highp 2-component vector of int) -0:64 'us2dms' (uniform highp usampler2DMS) -0:65 Sequence -0:65 move second child to first child (temp highp 4-component vector of float) -0:65 'v4' (temp highp 4-component vector of float) -0:65 textureFetch (global highp 4-component vector of float) -0:65 's2dms' (uniform highp sampler2DMS) -0:65 'v2' (temp highp 2-component vector of int) -0:65 Constant: -0:65 2 (const int) -0:66 Sequence -0:66 move second child to first child (temp highp 4-component vector of int) -0:66 'iv4' (temp highp 4-component vector of int) -0:66 textureFetch (global highp 4-component vector of int) -0:66 'is2dms' (uniform highp isampler2DMS) -0:66 'v2' (temp highp 2-component vector of int) -0:66 Constant: -0:66 2 (const int) -0:67 Constant: -0:67 0.000000 -0:69 frexp (global highp float) -0:69 'f' (temp highp float) -0:69 'ini' (in highp int) -0:114 Function Definition: foo_IO( (global void) -0:114 Function Parameters: -0:116 Sequence -0:116 Sequence -0:116 move second child to first child (temp highp int) -0:116 'sum' (temp highp int) -0:116 add (temp highp int) -0:116 'gl_VertexID' (gl_VertexId highp int VertexId) -0:117 'gl_InstanceID' (gl_InstanceId highp int InstanceId) -0:118 move second child to first child (temp highp 4-component vector of float) -0:118 gl_Position: direct index for structure (gl_Position highp 4-component vector of float Position) -0:118 'anon@1' (out block{gl_Position highp 4-component vector of float Position gl_Position, }) -0:118 Constant: -0:118 0 (const uint) -0:118 Constant: -0:118 1.000000 -0:118 1.000000 -0:118 1.000000 -0:118 1.000000 -0:119 gl_PointSize: direct index for structure (gl_PointSize highp void PointSize) -0:119 'anon@1' (out block{gl_Position highp 4-component vector of float Position gl_Position, }) -0:119 Constant: -0:119 1 (const uint) -0:153 Function Definition: pfooBad( (global void) -0:153 Function Parameters: -0:? Sequence -0:156 move second child to first child (temp highp 2-component vector of float) -0:156 'h' (noContraction temp highp 2-component vector of float) -0:156 fma (global highp 2-component vector of float) -0:156 'inf' (in highp 2-component vector of float) -0:156 'ing' (in highp 2-component vector of float) -0:156 'h' (noContraction temp highp 2-component vector of float) -0:157 indirect index (temp lowp sampler2D) -0:157 'sArray' (uniform 4-element array of lowp sampler2D) -0:157 add (temp highp int) -0:157 'sIndex' (uniform highp int) -0:157 Constant: -0:157 1 (const int) -0:158 indirect index (layout(binding=0 offset=0 ) temp highp atomic_uint) -0:158 'auArray' (layout(binding=0 offset=0 ) uniform 2-element array of highp atomic_uint) -0:158 add (temp highp int) -0:158 'sIndex' (uniform highp int) -0:158 Constant: -0:158 1 (const int) -0:159 direct index (layout(column_major shared ) temp block{layout(column_major shared ) uniform highp int i}) -0:159 'ubInst' (layout(column_major shared ) uniform 4-element array of block{layout(column_major shared ) uniform highp int i}) -0:159 Constant: -0:159 1 (const int) -0:160 direct index (layout(column_major shared ) temp block{layout(column_major shared ) buffer highp int i}) -0:160 'bbInst' (layout(column_major shared ) buffer 4-element array of block{layout(column_major shared ) buffer highp int i}) -0:160 Constant: -0:160 2 (const int) -0:161 indirect index (layout(column_major shared ) temp block{layout(column_major shared ) uniform highp int i}) -0:161 'ubInst' (layout(column_major shared ) uniform 4-element array of block{layout(column_major shared ) uniform highp int i}) -0:161 add (temp highp int) -0:161 'sIndex' (uniform highp int) -0:161 Constant: -0:161 1 (const int) -0:162 indirect index (layout(column_major shared ) temp block{layout(column_major shared ) buffer highp int i}) -0:162 'bbInst' (layout(column_major shared ) buffer 4-element array of block{layout(column_major shared ) buffer highp int i}) -0:162 'sIndex' (uniform highp int) -0:163 direct index (writeonly temp highp image2D) -0:163 'iArray' (writeonly uniform 5-element array of highp image2D) -0:163 Constant: -0:163 2 (const int) -0:164 indirect index (writeonly temp highp image2D) -0:164 'iArray' (writeonly uniform 5-element array of highp image2D) -0:164 component-wise multiply (temp highp int) -0:164 'sIndex' (uniform highp int) -0:164 Constant: -0:164 2 (const int) -0:165 textureGatherOffset (global lowp 4-component vector of float) -0:165 direct index (temp lowp sampler2D) -0:165 'sArray' (uniform 4-element array of lowp sampler2D) -0:165 Constant: -0:165 0 (const int) -0:165 Constant: -0:165 0.100000 -0:165 0.100000 -0:165 Convert float to int (temp lowp 2-component vector of int) -0:165 'inf' (in highp 2-component vector of float) -0:166 textureGatherOffsets (global lowp 4-component vector of float, operation at highp) -0:166 direct index (temp lowp sampler2D) -0:166 'sArray' (uniform 4-element array of lowp sampler2D) -0:166 Constant: -0:166 0 (const int) -0:166 Constant: -0:166 0.100000 -0:166 0.100000 -0:166 Constant: -0:166 0 (const int) -0:166 0 (const int) -0:166 0 (const int) -0:166 0 (const int) -0:166 0 (const int) -0:166 0 (const int) -0:166 0 (const int) -0:166 0 (const int) -0:171 Function Definition: pfoo( (global void) -0:171 Function Parameters: -0:? Sequence -0:174 move second child to first child (temp highp 2-component vector of float) -0:174 'h' (noContraction temp highp 2-component vector of float) -0:174 fma (global highp 2-component vector of float) -0:174 'inf' (in highp 2-component vector of float) -0:174 'ing' (in highp 2-component vector of float) -0:174 'h' (noContraction temp highp 2-component vector of float) -0:175 indirect index (temp lowp sampler2D) -0:175 'sArray' (uniform 4-element array of lowp sampler2D) -0:175 add (temp highp int) -0:175 'sIndex' (uniform highp int) -0:175 Constant: -0:175 1 (const int) -0:176 indirect index (layout(column_major shared ) temp block{layout(column_major shared ) uniform highp int i}) -0:176 'ubInst' (layout(column_major shared ) uniform 4-element array of block{layout(column_major shared ) uniform highp int i}) -0:176 add (temp highp int) -0:176 'sIndex' (uniform highp int) -0:176 Constant: -0:176 1 (const int) -0:177 indirect index (layout(column_major shared ) temp block{layout(column_major shared ) buffer highp int i}) -0:177 'bbInst' (layout(column_major shared ) buffer 4-element array of block{layout(column_major shared ) buffer highp int i}) -0:177 subtract (temp highp int) -0:177 'sIndex' (uniform highp int) -0:177 Constant: -0:177 2 (const int) -0:178 direct index (writeonly temp highp image2D) -0:178 'iArray' (writeonly uniform 5-element array of highp image2D) -0:178 Constant: -0:178 2 (const int) -0:179 indirect index (writeonly temp highp image2D) -0:179 'iArray' (writeonly uniform 5-element array of highp image2D) -0:179 subtract (temp highp int) -0:179 'sIndex' (uniform highp int) -0:179 Constant: -0:179 2 (const int) -0:180 textureGatherOffset (global lowp 4-component vector of float) -0:180 direct index (temp lowp sampler2D) -0:180 'sArray' (uniform 4-element array of lowp sampler2D) -0:180 Constant: -0:180 0 (const int) -0:180 Constant: -0:180 0.100000 -0:180 0.100000 -0:180 Convert float to int (temp lowp 2-component vector of int) -0:180 'inf' (in highp 2-component vector of float) -0:181 textureGatherOffsets (global lowp 4-component vector of float, operation at highp) -0:181 direct index (temp lowp sampler2D) -0:181 'sArray' (uniform 4-element array of lowp sampler2D) -0:181 Constant: -0:181 0 (const int) -0:181 Constant: -0:181 0.100000 -0:181 0.100000 -0:181 Constant: -0:181 0 (const int) -0:181 0 (const int) -0:181 0 (const int) -0:181 0 (const int) -0:181 0 (const int) -0:181 0 (const int) -0:181 0 (const int) -0:181 0 (const int) -0:182 textureGatherOffsets (global lowp 4-component vector of float, operation at highp) -0:182 direct index (temp lowp sampler2D) -0:182 'sArray' (uniform 4-element array of lowp sampler2D) -0:182 Constant: -0:182 0 (const int) -0:182 Constant: -0:182 0.100000 -0:182 0.100000 -0:182 'offsets' (uniform 4-element array of highp 2-component vector of int) -0:220 Function Definition: bufferT( (global void) -0:220 Function Parameters: -0:222 Sequence -0:222 Sequence -0:222 move second child to first child (temp highp int) -0:222 's1' (temp highp int) -0:222 textureSize (global highp int) -0:222 'bufSamp1' (uniform highp samplerBuffer) -0:223 Sequence -0:223 move second child to first child (temp highp int) -0:223 's2' (temp highp int) -0:223 textureSize (global highp int) -0:223 'bufSamp2' (uniform highp isamplerBuffer) -0:224 Sequence -0:224 move second child to first child (temp highp int) -0:224 's3' (temp highp int) -0:224 textureSize (global highp int) -0:224 'bufSamp3' (uniform highp usamplerBuffer) -0:226 Sequence -0:226 move second child to first child (temp highp int) -0:226 's4' (temp highp int) -0:226 imageQuerySize (global highp int) -0:226 'bufSamp4' (writeonly uniform highp imageBuffer) -0:227 Sequence -0:227 move second child to first child (temp highp int) -0:227 's5' (temp highp int) -0:227 imageQuerySize (global highp int) -0:227 'bufSamp5' (writeonly uniform highp iimageBuffer) -0:228 Sequence -0:228 move second child to first child (temp highp int) -0:228 's6' (temp highp int) -0:228 imageQuerySize (global highp int) -0:228 'bufSamp6' (writeonly uniform highp uimageBuffer) -0:230 Sequence -0:230 move second child to first child (temp highp 4-component vector of float) -0:230 'f1' (temp highp 4-component vector of float) -0:230 textureFetch (global highp 4-component vector of float) -0:230 'bufSamp1' (uniform highp samplerBuffer) -0:230 's1' (temp highp int) -0:231 Sequence -0:231 move second child to first child (temp highp 4-component vector of int) -0:231 'f2' (temp highp 4-component vector of int) -0:231 textureFetch (global highp 4-component vector of int) -0:231 'bufSamp2' (uniform highp isamplerBuffer) -0:231 's2' (temp highp int) -0:232 Sequence -0:232 move second child to first child (temp highp 4-component vector of uint) -0:232 'f3' (temp highp 4-component vector of uint) -0:232 textureFetch (global highp 4-component vector of uint) -0:232 'bufSamp3' (uniform highp usamplerBuffer) -0:232 's3' (temp highp int) -0:279 Function Definition: CAT( (global void) -0:279 Function Parameters: -0:281 Sequence -0:281 Sequence -0:281 move second child to first child (temp highp 3-component vector of int) -0:281 's4' (temp highp 3-component vector of int) -0:281 textureSize (global highp 3-component vector of int) -0:281 'CA4' (uniform highp samplerCubeArray) -0:281 Constant: -0:281 1 (const int) -0:282 Sequence -0:282 move second child to first child (temp highp 3-component vector of int) -0:282 's5' (temp highp 3-component vector of int) -0:282 textureSize (global highp 3-component vector of int) -0:282 'CA5' (uniform highp samplerCubeArrayShadow) -0:282 Constant: -0:282 1 (const int) -0:283 Sequence -0:283 move second child to first child (temp highp 3-component vector of int) -0:283 's6' (temp highp 3-component vector of int) -0:283 textureSize (global highp 3-component vector of int) -0:283 'CA6' (uniform highp isamplerCubeArray) -0:283 Constant: -0:283 1 (const int) -0:284 Sequence -0:284 move second child to first child (temp highp 3-component vector of int) -0:284 's7' (temp highp 3-component vector of int) -0:284 textureSize (global highp 3-component vector of int) -0:284 'CA7' (uniform highp usamplerCubeArray) -0:284 Constant: -0:284 1 (const int) -0:286 Sequence -0:286 move second child to first child (temp highp 4-component vector of float) -0:286 't4' (temp highp 4-component vector of float) -0:286 texture (global highp 4-component vector of float) -0:286 'CA4' (uniform highp samplerCubeArray) -0:286 Constant: -0:286 0.500000 -0:286 0.500000 -0:286 0.500000 -0:286 0.500000 -0:287 Sequence -0:287 move second child to first child (temp highp float) -0:287 't5' (temp highp float) -0:287 texture (global highp float) -0:287 'CA5' (uniform highp samplerCubeArrayShadow) -0:287 Constant: -0:287 0.500000 -0:287 0.500000 -0:287 0.500000 -0:287 0.500000 -0:287 Constant: -0:287 3.000000 -0:288 Sequence -0:288 move second child to first child (temp highp 4-component vector of int) -0:288 't6' (temp highp 4-component vector of int) -0:288 texture (global highp 4-component vector of int) -0:288 'CA6' (uniform highp isamplerCubeArray) -0:288 Constant: -0:288 0.500000 -0:288 0.500000 -0:288 0.500000 -0:288 0.500000 -0:289 Sequence -0:289 move second child to first child (temp highp 4-component vector of uint) -0:289 't7' (temp highp 4-component vector of uint) -0:289 texture (global highp 4-component vector of uint) -0:289 'CA7' (uniform highp usamplerCubeArray) -0:289 Constant: -0:289 0.500000 -0:289 0.500000 -0:289 0.500000 -0:289 0.500000 -0:291 Sequence -0:291 move second child to first child (temp highp 4-component vector of float) -0:291 'L4' (temp highp 4-component vector of float) -0:291 textureLod (global highp 4-component vector of float) -0:291 'CA4' (uniform highp samplerCubeArray) -0:291 Constant: -0:291 0.500000 -0:291 0.500000 -0:291 0.500000 -0:291 0.500000 -0:291 Constant: -0:291 0.240000 -0:292 Sequence -0:292 move second child to first child (temp highp 4-component vector of int) -0:292 'L6' (temp highp 4-component vector of int) -0:292 textureLod (global highp 4-component vector of int) -0:292 'CA6' (uniform highp isamplerCubeArray) -0:292 Constant: -0:292 0.500000 -0:292 0.500000 -0:292 0.500000 -0:292 0.500000 -0:292 Constant: -0:292 0.260000 -0:293 Sequence -0:293 move second child to first child (temp highp 4-component vector of uint) -0:293 'L7' (temp highp 4-component vector of uint) -0:293 textureLod (global highp 4-component vector of uint) -0:293 'CA7' (uniform highp usamplerCubeArray) -0:293 Constant: -0:293 0.500000 -0:293 0.500000 -0:293 0.500000 -0:293 0.500000 -0:293 Constant: -0:293 0.270000 -0:295 Sequence -0:295 move second child to first child (temp highp 4-component vector of float) -0:295 'g4' (temp highp 4-component vector of float) -0:295 textureGrad (global highp 4-component vector of float) -0:295 'CA4' (uniform highp samplerCubeArray) -0:295 Constant: -0:295 0.500000 -0:295 0.500000 -0:295 0.500000 -0:295 0.500000 -0:295 Constant: -0:295 0.100000 -0:295 0.100000 -0:295 0.100000 -0:295 Constant: -0:295 0.200000 -0:295 0.200000 -0:295 0.200000 -0:296 Sequence -0:296 move second child to first child (temp highp 4-component vector of int) -0:296 'g6' (temp highp 4-component vector of int) -0:296 textureGrad (global highp 4-component vector of int) -0:296 'CA6' (uniform highp isamplerCubeArray) -0:296 Constant: -0:296 0.500000 -0:296 0.500000 -0:296 0.500000 -0:296 0.500000 -0:296 Constant: -0:296 0.100000 -0:296 0.100000 -0:296 0.100000 -0:296 Constant: -0:296 0.200000 -0:296 0.200000 -0:296 0.200000 -0:297 Sequence -0:297 move second child to first child (temp highp 4-component vector of uint) -0:297 'g7' (temp highp 4-component vector of uint) -0:297 textureGrad (global highp 4-component vector of uint) -0:297 'CA7' (uniform highp usamplerCubeArray) -0:297 Constant: -0:297 0.500000 -0:297 0.500000 -0:297 0.500000 -0:297 0.500000 -0:297 Constant: -0:297 0.100000 -0:297 0.100000 -0:297 0.100000 -0:297 Constant: -0:297 0.200000 -0:297 0.200000 -0:297 0.200000 -0:299 Sequence -0:299 move second child to first child (temp highp 4-component vector of float) -0:299 'gath4' (temp highp 4-component vector of float) -0:299 textureGather (global highp 4-component vector of float) -0:299 'CA4' (uniform highp samplerCubeArray) -0:299 Constant: -0:299 0.500000 -0:299 0.500000 -0:299 0.500000 -0:299 0.500000 -0:300 Sequence -0:300 move second child to first child (temp highp 4-component vector of float) -0:300 'gathC4' (temp highp 4-component vector of float) -0:300 textureGather (global highp 4-component vector of float) -0:300 'CA4' (uniform highp samplerCubeArray) -0:300 Constant: -0:300 0.500000 -0:300 0.500000 -0:300 0.500000 -0:300 0.500000 -0:300 Constant: -0:300 2 (const int) -0:301 Sequence -0:301 move second child to first child (temp highp 4-component vector of int) -0:301 'gath6' (temp highp 4-component vector of int) -0:301 textureGather (global highp 4-component vector of int) -0:301 'CA6' (uniform highp isamplerCubeArray) -0:301 Constant: -0:301 0.500000 -0:301 0.500000 -0:301 0.500000 -0:301 0.500000 -0:302 Sequence -0:302 move second child to first child (temp highp 4-component vector of int) -0:302 'gathC6' (temp highp 4-component vector of int) -0:302 textureGather (global highp 4-component vector of int) -0:302 'CA6' (uniform highp isamplerCubeArray) -0:302 Constant: -0:302 0.500000 -0:302 0.500000 -0:302 0.500000 -0:302 0.500000 -0:302 Constant: -0:302 1 (const int) -0:303 Sequence -0:303 move second child to first child (temp highp 4-component vector of uint) -0:303 'gath7' (temp highp 4-component vector of uint) -0:303 textureGather (global highp 4-component vector of uint) -0:303 'CA7' (uniform highp usamplerCubeArray) -0:303 Constant: -0:303 0.500000 -0:303 0.500000 -0:303 0.500000 -0:303 0.500000 -0:304 Sequence -0:304 move second child to first child (temp highp 4-component vector of uint) -0:304 'gathC7' (temp highp 4-component vector of uint) -0:304 textureGather (global highp 4-component vector of uint) -0:304 'CA7' (uniform highp usamplerCubeArray) -0:304 Constant: -0:304 0.500000 -0:304 0.500000 -0:304 0.500000 -0:304 0.500000 -0:304 Constant: -0:304 0 (const int) -0:306 Sequence -0:306 move second child to first child (temp highp 4-component vector of float) -0:306 'gath5' (temp highp 4-component vector of float) -0:306 textureGather (global highp 4-component vector of float) -0:306 'CA5' (uniform highp samplerCubeArrayShadow) -0:306 Constant: -0:306 0.500000 -0:306 0.500000 -0:306 0.500000 -0:306 0.500000 -0:306 Constant: -0:306 2.500000 -0:308 Sequence -0:308 move second child to first child (temp highp 3-component vector of int) -0:308 's1' (temp highp 3-component vector of int) -0:308 imageQuerySize (global highp 3-component vector of int) -0:308 'CA1' (writeonly uniform highp imageCubeArray) -0:309 Sequence -0:309 move second child to first child (temp highp 3-component vector of int) -0:309 's2' (temp highp 3-component vector of int) -0:309 imageQuerySize (global highp 3-component vector of int) -0:309 'CA2' (writeonly uniform highp iimageCubeArray) -0:310 Sequence -0:310 move second child to first child (temp highp 3-component vector of int) -0:310 's3' (temp highp 3-component vector of int) -0:310 imageQuerySize (global highp 3-component vector of int) -0:310 'CA3' (writeonly uniform highp uimageCubeArray) -0:312 imageStore (global highp void) -0:312 'CA1' (writeonly uniform highp imageCubeArray) -0:312 's3' (temp highp 3-component vector of int) -0:312 Constant: -0:312 1.000000 -0:312 1.000000 -0:312 1.000000 -0:312 1.000000 -0:313 imageStore (global highp void) -0:313 'CA2' (writeonly uniform highp iimageCubeArray) -0:313 's3' (temp highp 3-component vector of int) -0:313 Constant: -0:313 1 (const int) -0:313 1 (const int) -0:313 1 (const int) -0:313 1 (const int) -0:314 imageStore (global highp void) -0:314 'CA3' (writeonly uniform highp uimageCubeArray) -0:314 's3' (temp highp 3-component vector of int) -0:314 Constant: -0:314 1 (const uint) -0:314 1 (const uint) -0:314 1 (const uint) -0:314 1 (const uint) -0:316 Sequence -0:316 move second child to first child (temp highp 4-component vector of float) -0:316 'cl1' (temp highp 4-component vector of float) -0:316 imageLoad (global highp 4-component vector of float) -0:316 'rCA1' (layout(rgba16f ) readonly uniform highp imageCubeArray) -0:316 's3' (temp highp 3-component vector of int) -0:317 Sequence -0:317 move second child to first child (temp highp 4-component vector of int) -0:317 'cl2' (temp highp 4-component vector of int) -0:317 imageLoad (global highp 4-component vector of int) -0:317 'rCA2' (layout(rgba32i ) readonly uniform highp iimageCubeArray) -0:317 's3' (temp highp 3-component vector of int) -0:318 Sequence -0:318 move second child to first child (temp highp 4-component vector of uint) -0:318 'cl3' (temp highp 4-component vector of uint) -0:318 imageLoad (global highp 4-component vector of uint) -0:318 'rCA3' (layout(r32ui ) readonly uniform highp uimageCubeArray) -0:318 's3' (temp highp 3-component vector of int) -0:343 Function Definition: MSA( (global void) -0:343 Function Parameters: -0:345 Sequence -0:345 Sequence -0:345 move second child to first child (temp highp 4-component vector of float) -0:345 'tf' (temp highp 4-component vector of float) -0:345 textureFetch (global highp 4-component vector of float) -0:345 'samp2DMSA' (uniform highp sampler2DMSArray) -0:345 Constant: -0:345 5 (const int) -0:345 5 (const int) -0:345 5 (const int) -0:345 Constant: -0:345 2 (const int) -0:346 Sequence -0:346 move second child to first child (temp highp 4-component vector of int) -0:346 'tfi' (temp highp 4-component vector of int) -0:346 textureFetch (global highp 4-component vector of int) -0:346 'samp2DMSAi' (uniform highp isampler2DMSArray) -0:346 Constant: -0:346 5 (const int) -0:346 5 (const int) -0:346 5 (const int) -0:346 Constant: -0:346 2 (const int) -0:347 Sequence -0:347 move second child to first child (temp highp 4-component vector of uint) -0:347 'tfu' (temp highp 4-component vector of uint) -0:347 textureFetch (global highp 4-component vector of uint) -0:347 'samp2DMSAu' (uniform highp usampler2DMSArray) -0:347 Constant: -0:347 5 (const int) -0:347 5 (const int) -0:347 5 (const int) -0:347 Constant: -0:347 2 (const int) -0:349 Sequence -0:349 move second child to first child (temp highp 3-component vector of int) -0:349 'tfs' (temp highp 3-component vector of int) -0:349 textureSize (global highp 3-component vector of int) -0:349 'samp2DMSA' (uniform highp sampler2DMSArray) -0:350 Sequence -0:350 move second child to first child (temp highp 3-component vector of int) -0:350 'tfsi' (temp highp 3-component vector of int) -0:350 textureSize (global highp 3-component vector of int) -0:350 'samp2DMSAi' (uniform highp isampler2DMSArray) -0:352 Sequence -0:352 move second child to first child (temp highp 3-component vector of int) -0:352 'tfsu' (temp highp 3-component vector of int) -0:352 textureSize (global highp 3-component vector of int) -0:352 'samp2DMSAu' (uniform highp usampler2DMSArray) -0:364 Function Definition: goodImageAtom( (global void) -0:364 Function Parameters: -0:? Sequence -0:370 imageAtomicAdd (global highp int) -0:370 'im2Di' (layout(r32i ) uniform highp iimage2D) -0:370 'P' (uniform highp 2-component vector of int) -0:370 'dati' (temp highp int) -0:371 imageAtomicAdd (global highp uint) -0:371 'im2Du' (layout(r32ui ) uniform highp uimage2D) -0:371 'P' (uniform highp 2-component vector of int) -0:371 'datu' (temp highp uint) -0:372 imageAtomicMin (global highp int) -0:372 'im2Di' (layout(r32i ) uniform highp iimage2D) -0:372 'P' (uniform highp 2-component vector of int) -0:372 'dati' (temp highp int) -0:373 imageAtomicMin (global highp uint) -0:373 'im2Du' (layout(r32ui ) uniform highp uimage2D) -0:373 'P' (uniform highp 2-component vector of int) -0:373 'datu' (temp highp uint) -0:374 imageAtomicMax (global highp int) -0:374 'im2Di' (layout(r32i ) uniform highp iimage2D) -0:374 'P' (uniform highp 2-component vector of int) -0:374 'dati' (temp highp int) -0:375 imageAtomicMax (global highp uint) -0:375 'im2Du' (layout(r32ui ) uniform highp uimage2D) -0:375 'P' (uniform highp 2-component vector of int) -0:375 'datu' (temp highp uint) -0:376 imageAtomicAnd (global highp int) -0:376 'im2Di' (layout(r32i ) uniform highp iimage2D) -0:376 'P' (uniform highp 2-component vector of int) -0:376 'dati' (temp highp int) -0:377 imageAtomicAnd (global highp uint) -0:377 'im2Du' (layout(r32ui ) uniform highp uimage2D) -0:377 'P' (uniform highp 2-component vector of int) -0:377 'datu' (temp highp uint) -0:378 imageAtomicOr (global highp int) -0:378 'im2Di' (layout(r32i ) uniform highp iimage2D) -0:378 'P' (uniform highp 2-component vector of int) -0:378 'dati' (temp highp int) -0:379 imageAtomicOr (global highp uint) -0:379 'im2Du' (layout(r32ui ) uniform highp uimage2D) -0:379 'P' (uniform highp 2-component vector of int) -0:379 'datu' (temp highp uint) -0:380 imageAtomicXor (global highp int) -0:380 'im2Di' (layout(r32i ) uniform highp iimage2D) -0:380 'P' (uniform highp 2-component vector of int) -0:380 'dati' (temp highp int) -0:381 imageAtomicXor (global highp uint) -0:381 'im2Du' (layout(r32ui ) uniform highp uimage2D) -0:381 'P' (uniform highp 2-component vector of int) -0:381 'datu' (temp highp uint) -0:382 imageAtomicExchange (global highp int) -0:382 'im2Di' (layout(r32i ) uniform highp iimage2D) -0:382 'P' (uniform highp 2-component vector of int) -0:382 'dati' (temp highp int) -0:383 imageAtomicExchange (global highp uint) -0:383 'im2Du' (layout(r32ui ) uniform highp uimage2D) -0:383 'P' (uniform highp 2-component vector of int) -0:383 'datu' (temp highp uint) -0:384 imageAtomicExchange (global highp float) -0:384 'im2Df' (layout(r32f ) uniform highp image2D) -0:384 'P' (uniform highp 2-component vector of int) -0:384 'datf' (temp highp float) -0:385 imageAtomicCompSwap (global highp int) -0:385 'im2Di' (layout(r32i ) uniform highp iimage2D) -0:385 'P' (uniform highp 2-component vector of int) -0:385 Constant: -0:385 3 (const int) -0:385 'dati' (temp highp int) -0:386 imageAtomicCompSwap (global highp uint) -0:386 'im2Du' (layout(r32ui ) uniform highp uimage2D) -0:386 'P' (uniform highp 2-component vector of int) -0:386 Constant: -0:386 5 (const uint) -0:386 'datu' (temp highp uint) -0:398 Function Definition: badInterp( (global void) -0:398 Function Parameters: -0:400 Sequence -0:400 Constant: -0:400 0.000000 -0:401 Constant: -0:401 0.000000 -0:402 Constant: -0:402 0.000000 0:? Linker Objects 0:? 's' (shared highp 4-component vector of float) 0:? 'v' (buffer highp 4-component vector of float) diff --git a/Test/baseResults/310AofA.vert.out b/Test/baseResults/310AofA.vert.out index 28592d51..6b69e71e 100644 --- a/Test/baseResults/310AofA.vert.out +++ b/Test/baseResults/310AofA.vert.out @@ -359,277 +359,6 @@ ERROR: node is still EOpNull! 0:13 1 (const uint) 0:13 2 (const uint) 0:13 'd' (temp 3-element array of 2-element array of highp int) -0:44 Function Definition: foo(f1[5][7]; (global 4-element array of 7-element array of highp float) -0:44 Function Parameters: -0:44 'a' (in 5-element array of 7-element array of highp float) -0:? Sequence -0:47 move second child to first child (temp 7-element array of highp float) -0:47 'r' (temp 7-element array of highp float) -0:47 direct index (temp 7-element array of highp float) -0:47 'a' (in 5-element array of 7-element array of highp float) -0:47 Constant: -0:47 2 (const int) -0:48 Constant: -0:48 0.000000 -0:49 Constant: -0:49 0.000000 -0:50 Branch: Return with expression -0:50 Construct float (temp 4-element array of 7-element array of float) -0:50 direct index (temp 7-element array of highp float) -0:50 'a' (in 5-element array of 7-element array of highp float) -0:50 Constant: -0:50 0 (const int) -0:50 direct index (temp 7-element array of highp float) -0:50 'a' (in 5-element array of 7-element array of highp float) -0:50 Constant: -0:50 1 (const int) -0:50 'r' (temp 7-element array of highp float) -0:50 direct index (temp 7-element array of highp float) -0:50 'a' (in 5-element array of 7-element array of highp float) -0:50 Constant: -0:50 3 (const int) -0:51 Branch: Return with expression -0:51 Construct float (temp 4-element array of 7-element array of float) -0:51 direct index (temp 7-element array of highp float) -0:51 'a' (in 5-element array of 7-element array of highp float) -0:51 Constant: -0:51 0 (const int) -0:51 direct index (temp 7-element array of highp float) -0:51 'a' (in 5-element array of 7-element array of highp float) -0:51 Constant: -0:51 1 (const int) -0:51 'r' (temp 7-element array of highp float) -0:51 direct index (temp 7-element array of highp float) -0:51 'a' (in 5-element array of 7-element array of highp float) -0:51 Constant: -0:51 3 (const int) -0:52 Branch: Return with expression -0:52 Construct float (temp 4-element array of 7-element array of float) -0:52 direct index (temp 7-element array of highp float) -0:52 'a' (in 5-element array of 7-element array of highp float) -0:52 Constant: -0:52 0 (const int) -0:52 direct index (temp 7-element array of highp float) -0:52 'a' (in 5-element array of 7-element array of highp float) -0:52 Constant: -0:52 1 (const int) -0:52 direct index (temp 7-element array of highp float) -0:52 'a' (in 5-element array of 7-element array of highp float) -0:52 Constant: -0:52 2 (const int) -0:52 direct index (temp 7-element array of highp float) -0:52 'a' (in 5-element array of 7-element array of highp float) -0:52 Constant: -0:52 3 (const int) -0:55 Function Definition: bar(f1[5][7]; (global void) -0:55 Function Parameters: -0:55 '' (in 5-element array of 7-element array of highp float) -0:57 Function Definition: foo2( (global void) -0:57 Function Parameters: -0:? Sequence -0:? Sequence -0:62 move second child to first child (temp highp float) -0:62 direct index (temp highp float) -0:62 direct index (temp 2-element array of highp float) -0:62 direct index (temp 4-element array of 2-element array of highp float) -0:62 'gu' (temp 3-element array of 4-element array of 2-element array of highp float) -0:62 Constant: -0:62 2 (const int) -0:62 Constant: -0:62 4 (const int) -0:62 Constant: -0:62 1 (const int) -0:62 Constant: -0:62 4.000000 -0:64 Sequence -0:64 move second child to first child (temp 3-element array of 2-element array of highp 4-component vector of float) -0:64 'ca4' (temp 3-element array of 2-element array of highp 4-component vector of float) -0:66 Constant: -0:66 0.000000 -0:66 0.000000 -0:66 0.000000 -0:66 0.000000 -0:66 1.000000 -0:66 1.000000 -0:66 1.000000 -0:66 1.000000 -0:66 0.000000 -0:66 0.000000 -0:66 0.000000 -0:66 0.000000 -0:66 1.000000 -0:66 1.000000 -0:66 1.000000 -0:66 1.000000 -0:66 0.000000 -0:66 0.000000 -0:66 0.000000 -0:66 0.000000 -0:66 1.000000 -0:66 1.000000 -0:66 1.000000 -0:66 1.000000 -0:67 Sequence -0:67 move second child to first child (temp 3-element array of 2-element array of highp 4-component vector of float) -0:67 'caim' (temp 3-element array of 2-element array of highp 4-component vector of float) -0:69 Constant: -0:69 4.000000 -0:69 4.000000 -0:69 4.000000 -0:69 4.000000 -0:69 2.000000 -0:69 2.000000 -0:69 2.000000 -0:69 2.000000 -0:69 4.000000 -0:69 4.000000 -0:69 4.000000 -0:69 4.000000 -0:69 2.000000 -0:69 2.000000 -0:69 2.000000 -0:69 2.000000 -0:69 4.000000 -0:69 4.000000 -0:69 4.000000 -0:69 4.000000 -0:69 2.000000 -0:69 2.000000 -0:69 2.000000 -0:69 2.000000 -0:70 Sequence -0:70 move second child to first child (temp 3-element array of 2-element array of highp 4-component vector of float) -0:70 'caim2' (temp 3-element array of 2-element array of highp 4-component vector of float) -0:72 Constant: -0:72 4.000000 -0:72 4.000000 -0:72 4.000000 -0:72 4.000000 -0:72 2.000000 -0:72 2.000000 -0:72 2.000000 -0:72 2.000000 -0:72 4.000000 -0:72 4.000000 -0:72 4.000000 -0:72 4.000000 -0:72 2.000000 -0:72 2.000000 -0:72 2.000000 -0:72 2.000000 -0:72 4.000000 -0:72 4.000000 -0:72 4.000000 -0:72 4.000000 -0:72 2.000000 -0:72 2.000000 -0:72 2.000000 -0:72 2.000000 -0:73 Sequence -0:73 move second child to first child (temp 3-element array of 2-element array of highp 4-component vector of float) -0:73 'caim3' (temp 3-element array of 2-element array of highp 4-component vector of float) -0:75 Constant: -0:75 4.000000 -0:75 4.000000 -0:75 4.000000 -0:75 4.000000 -0:75 2.000000 -0:75 2.000000 -0:75 2.000000 -0:75 2.000000 -0:75 4.000000 -0:75 4.000000 -0:75 4.000000 -0:75 4.000000 -0:75 2.000000 -0:75 2.000000 -0:75 2.000000 -0:75 2.000000 -0:75 4.000000 -0:75 4.000000 -0:75 4.000000 -0:75 4.000000 -0:75 2.000000 -0:75 2.000000 -0:75 2.000000 -0:75 2.000000 -0:77 move second child to first child (temp 4-element array of 7-element array of highp float) -0:77 'g4' (global 4-element array of 7-element array of highp float) -0:77 Function Call: foo(f1[5][7]; (global 4-element array of 7-element array of highp float) -0:77 'g5' (global 5-element array of 7-element array of highp float) -0:78 'g5' (global 5-element array of 7-element array of highp float) -0:79 'gu' (global 1-element array of 7-element array of highp float) -0:81 Constant: -0:81 0.000000 -0:82 Function Call: bar(f1[5][7]; (global void) -0:82 'g5' (global 5-element array of 7-element array of highp float) -0:84 Test condition and select (temp void) -0:84 Condition -0:84 Compare Equal (temp bool) -0:84 Function Call: foo(f1[5][7]; (global 4-element array of 7-element array of highp float) -0:84 'g5' (global 5-element array of 7-element array of highp float) -0:84 'g4' (global 4-element array of 7-element array of highp float) -0:84 true case is null -0:86 Test condition and select (temp void) -0:86 Condition -0:86 Constant: -0:86 false (const bool) -0:86 true case is null -0:90 move second child to first child (temp highp float) -0:90 direct index (temp highp float) -0:90 direct index (temp 7-element array of highp float) -0:90 'u' (temp 5-element array of 7-element array of highp float) -0:90 Constant: -0:90 5 (const int) -0:90 Constant: -0:90 2 (const int) -0:90 Constant: -0:90 5.000000 -0:91 Function Call: foo(f1[5][7]; (global 4-element array of 7-element array of highp float) -0:91 'u' (temp 5-element array of 7-element array of highp float) -0:94 direct index (layout(column_major shared ) temp highp 4-component vector of float) -0:94 v: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp 4-component vector of float) -0:94 direct index (layout(column_major shared ) temp block{layout(column_major shared ) buffer implicitly-sized array of highp float u, layout(column_major shared ) buffer implicitly-sized array of highp 4-component vector of float v}) -0:94 'name' (layout(column_major shared ) buffer 3-element array of block{layout(column_major shared ) buffer implicitly-sized array of highp float u, layout(column_major shared ) buffer implicitly-sized array of highp 4-component vector of float v}) -0:94 Constant: -0:94 1 (const int) -0:94 Constant: -0:94 1 (const int) -0:94 Constant: -0:94 -1 (const int) -0:95 move second child to first child (temp highp 4-component vector of float) -0:95 direct index (layout(column_major shared ) temp highp 4-component vector of float) -0:95 v: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp 4-component vector of float) -0:95 direct index (layout(column_major shared ) temp block{layout(column_major shared ) buffer implicitly-sized array of highp float u, layout(column_major shared ) buffer implicitly-sized array of highp 4-component vector of float v}) -0:95 'name' (layout(column_major shared ) buffer 3-element array of block{layout(column_major shared ) buffer implicitly-sized array of highp float u, layout(column_major shared ) buffer implicitly-sized array of highp 4-component vector of float v}) -0:95 Constant: -0:95 1 (const int) -0:95 Constant: -0:95 1 (const int) -0:95 Constant: -0:95 1 (const int) -0:95 Constant: -0:95 4.300000 -0:95 4.300000 -0:95 4.300000 -0:95 4.300000 -0:96 v: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp 4-component vector of float) -0:96 direct index (layout(column_major shared ) temp block{layout(column_major shared ) buffer implicitly-sized array of highp float u, layout(column_major shared ) buffer implicitly-sized array of highp 4-component vector of float v}) -0:96 'name' (layout(column_major shared ) buffer 3-element array of block{layout(column_major shared ) buffer implicitly-sized array of highp float u, layout(column_major shared ) buffer implicitly-sized array of highp 4-component vector of float v}) -0:96 Constant: -0:96 1 (const int) -0:96 Constant: -0:96 1 (const int) -0:98 Constant: -0:98 7 (const int) -0:99 array length (temp int) -0:99 v: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of 7-element array of highp 4-component vector of float) -0:99 direct index (layout(column_major shared ) temp block{layout(column_major shared ) buffer highp float u, layout(column_major shared ) buffer implicitly-sized array of 7-element array of highp 4-component vector of float v}) -0:99 'name3' (layout(column_major shared ) buffer 3-element array of block{layout(column_major shared ) buffer highp float u, layout(column_major shared ) buffer implicitly-sized array of 7-element array of highp 4-component vector of float v}) -0:99 Constant: -0:99 0 (const int) -0:99 Constant: -0:99 1 (const int) 0:? Linker Objects 0:? 'name' (layout(column_major shared ) buffer 3-element array of block{layout(column_major shared ) buffer implicitly-sized array of highp float u, layout(column_major shared ) buffer implicitly-sized array of highp 4-component vector of float v}) 0:? 'uname' (layout(column_major shared ) uniform 3-element array of block{layout(column_major shared ) uniform highp float u, layout(column_major shared ) uniform 1-element array of highp 4-component vector of float v}) diff --git a/Test/baseResults/330.frag.out b/Test/baseResults/330.frag.out index 904ad3ed..d3c54fcf 100644 --- a/Test/baseResults/330.frag.out +++ b/Test/baseResults/330.frag.out @@ -152,31 +152,6 @@ ERROR: node is still EOpNull! 0:12 'buffer' (temp int) 0:12 Constant: 0:12 4 (const int) -0:21 Function Definition: foo( (global void) -0:21 Function Parameters: -0:23 Sequence -0:23 Sequence -0:23 move second child to first child (temp 4-component vector of float) -0:23 'c' (temp 4-component vector of float) -0:23 gl_Color: direct index for structure (in 4-component vector of float Color) -0:23 'anon@0' (in block{in 4-component vector of float Color gl_Color, }) -0:23 Constant: -0:23 2 (const uint) -0:24 move second child to first child (temp 4-component vector of float) -0:24 'outVar' (layout(location=0 index=0 ) out 4-component vector of float) -0:24 'inVar' (smooth in 4-component vector of float) -0:133 Function Definition: qlod( (global void) -0:133 Function Parameters: -0:? Sequence -0:140 'lod' (temp 2-component vector of float) -0:141 'lod' (temp 2-component vector of float) -0:147 Function Definition: fooKeyMem( (global void) -0:147 Function Parameters: -0:149 Sequence -0:149 precise: direct index for structure (global int) -0:149 'KeyMem' (global structure{global int precise}) -0:149 Constant: -0:149 0 (const int) 0:? Linker Objects 0:? 'inVar' (smooth in 4-component vector of float) 0:? 'outVar' (layout(location=0 index=0 ) out 4-component vector of float) diff --git a/Test/baseResults/400.frag.out b/Test/baseResults/400.frag.out index 90904140..aea4e49b 100644 --- a/Test/baseResults/400.frag.out +++ b/Test/baseResults/400.frag.out @@ -642,312 +642,6 @@ ERROR: node is still EOpNull! 0:27 move second child to first child (temp 4-component vector of float) 0:27 'c' (temp 4-component vector of float) 0:27 'gl_FragCoord' (gl_FragCoord 4-component vector of float FragCoord) -0:47 Function Definition: foo23( (global void) -0:47 Function Parameters: -0:? Sequence -0:51 textureProjGradOffset (global float) -0:51 'u2drs' (uniform sampler2DRectShadow) -0:51 'outp' (out 4-component vector of float) -0:51 Constant: -0:51 0.000000 -0:51 0.000000 -0:51 Constant: -0:51 0.000000 -0:51 0.000000 -0:51 Convert float to int (temp 2-component vector of int) -0:51 'c2D' (smooth in 2-component vector of float) -0:52 textureProjGradOffset (global float) -0:52 'u2drs' (uniform sampler2DRectShadow) -0:52 'outp' (out 4-component vector of float) -0:52 Constant: -0:52 0.000000 -0:52 0.000000 -0:52 Constant: -0:52 0.000000 -0:52 0.000000 -0:52 Constant: -0:52 3 (const int) -0:52 4 (const int) -0:53 textureProjGradOffset (global float) -0:53 'u2drs' (uniform sampler2DRectShadow) -0:53 'outp' (out 4-component vector of float) -0:53 Constant: -0:53 0.000000 -0:53 0.000000 -0:53 Constant: -0:53 0.000000 -0:53 0.000000 -0:53 Constant: -0:53 15 (const int) -0:53 16 (const int) -0:54 textureProjGradOffset (global float) -0:54 'u2drs' (uniform sampler2DRectShadow) -0:54 'outp' (out 4-component vector of float) -0:54 Constant: -0:54 0.000000 -0:54 0.000000 -0:54 Constant: -0:54 0.000000 -0:54 0.000000 -0:54 Constant: -0:54 -10 (const int) -0:54 20 (const int) -0:60 Function Definition: foo24( (global void) -0:60 Function Parameters: -0:? Sequence -0:63 move second child to first child (temp 3-component vector of double) -0:63 'df' (temp 3-component vector of double) -0:63 modf (global 3-component vector of double) -0:63 Convert float to double (temp 3-component vector of double) -0:63 vector swizzle (temp 3-component vector of float) -0:63 'outp' (out 4-component vector of float) -0:63 Sequence -0:63 Constant: -0:63 0 (const int) -0:63 Constant: -0:63 1 (const int) -0:63 Constant: -0:63 2 (const int) -0:63 'di' (temp 3-component vector of double) -0:71 Function Definition: foodc1( (global void) -0:71 Function Parameters: -0:73 Sequence -0:73 Sequence -0:73 move second child to first child (temp 2-component vector of float) -0:73 'v2' (temp 2-component vector of float) -0:73 dPdxFine (global 2-component vector of float) -0:73 'in2' (smooth in 2-component vector of float) -0:74 Sequence -0:74 move second child to first child (temp 3-component vector of float) -0:74 'v3' (temp 3-component vector of float) -0:74 dPdyCoarse (global 3-component vector of float) -0:74 'in3' (smooth in 3-component vector of float) -0:75 Sequence -0:75 move second child to first child (temp 4-component vector of float) -0:75 'v4' (temp 4-component vector of float) -0:75 add (temp 4-component vector of float) -0:75 fwidthCoarse (global 4-component vector of float) -0:75 'in4' (smooth in 4-component vector of float) -0:75 fwidthFine (global 4-component vector of float) -0:75 'in4' (smooth in 4-component vector of float) -0:80 Function Definition: foodc2( (global void) -0:80 Function Parameters: -0:82 Sequence -0:82 Sequence -0:82 move second child to first child (temp 2-component vector of float) -0:82 'v2' (temp 2-component vector of float) -0:82 dPdxFine (global 2-component vector of float) -0:82 'in2' (smooth in 2-component vector of float) -0:83 Sequence -0:83 move second child to first child (temp 3-component vector of float) -0:83 'v3' (temp 3-component vector of float) -0:83 dPdyCoarse (global 3-component vector of float) -0:83 'in3' (smooth in 3-component vector of float) -0:84 Sequence -0:84 move second child to first child (temp 4-component vector of float) -0:84 'v4' (temp 4-component vector of float) -0:84 add (temp 4-component vector of float) -0:84 fwidthCoarse (global 4-component vector of float) -0:84 'in4' (smooth in 4-component vector of float) -0:84 fwidthFine (global 4-component vector of float) -0:84 'in4' (smooth in 4-component vector of float) -0:89 move second child to first child (temp 2-component vector of float) -0:89 'v2' (temp 2-component vector of float) -0:89 frexp (global 2-component vector of float) -0:89 'v2' (temp 2-component vector of float) -0:89 'i2' (temp 2-component vector of int) -0:90 move second child to first child (temp 3-component vector of float) -0:90 'v3' (temp 3-component vector of float) -0:90 ldexp (global 3-component vector of float) -0:90 'v3' (temp 3-component vector of float) -0:90 'i3' (temp 3-component vector of int) -0:92 move second child to first child (temp uint) -0:92 'u1' (temp uint) -0:92 PackUnorm4x8 (global uint) -0:92 'v4' (temp 4-component vector of float) -0:93 move second child to first child (temp uint) -0:93 'u1' (temp uint) -0:93 PackSnorm4x8 (global uint) -0:93 'v4' (temp 4-component vector of float) -0:94 move second child to first child (temp 4-component vector of float) -0:94 'v4' (temp 4-component vector of float) -0:94 UnpackUnorm4x8 (global 4-component vector of float) -0:94 'u1' (temp uint) -0:95 move second child to first child (temp 4-component vector of float) -0:95 'v4' (temp 4-component vector of float) -0:95 UnpackSnorm4x8 (global 4-component vector of float) -0:95 'u1' (temp uint) -0:99 move second child to first child (temp double) -0:99 'd' (temp double) -0:99 PackDouble2x32 (global double) -0:99 'u2' (temp 2-component vector of uint) -0:100 move second child to first child (temp 2-component vector of uint) -0:100 'u2' (temp 2-component vector of uint) -0:100 UnpackDouble2x32 (global 2-component vector of uint) -0:100 'd' (temp double) -0:117 Function Definition: interp( (global void) -0:117 Function Parameters: -0:119 Sequence -0:119 interpolateAtCentroid (global 2-component vector of float) -0:119 'colorfc' (centroid flat in 2-component vector of float) -0:120 interpolateAtCentroid (global 4-component vector of float) -0:120 'colorSampIn' (smooth sample in 4-component vector of float) -0:121 interpolateAtCentroid (global 4-component vector of float) -0:121 'colorfsi' (noperspective in 4-component vector of float) -0:122 interpolateAtCentroid (global float) -0:122 'scalarIn' (smooth in float) -0:123 Constant: -0:123 0.000000 -0:124 interpolateAtCentroid (global 3-component vector of float) -0:124 direct index (smooth sample temp 3-component vector of float) -0:124 'sampInArray' (smooth sample in 4-element array of 3-component vector of float) -0:124 Constant: -0:124 2 (const int) -0:125 interpolateAtCentroid (global 2-component vector of float) -0:125 vector swizzle (temp 2-component vector of float) -0:125 direct index (smooth sample temp 3-component vector of float) -0:125 'sampInArray' (smooth sample in 4-element array of 3-component vector of float) -0:125 Constant: -0:125 2 (const int) -0:125 Sequence -0:125 Constant: -0:125 0 (const int) -0:125 Constant: -0:125 1 (const int) -0:127 Constant: -0:127 0.000000 -0:128 interpolateAtSample (global 3-component vector of float) -0:128 indirect index (smooth sample temp 3-component vector of float) -0:128 'sampInArray' (smooth sample in 4-element array of 3-component vector of float) -0:128 'i' (flat in int) -0:128 Constant: -0:128 0 (const int) -0:129 interpolateAtSample (global float) -0:129 x: direct index for structure (global float) -0:129 's1' (smooth in structure{global float x}) -0:129 Constant: -0:129 0 (const int) -0:129 Constant: -0:129 2 (const int) -0:130 interpolateAtSample (global float) -0:130 'scalarIn' (smooth in float) -0:130 Constant: -0:130 1 (const int) -0:132 Constant: -0:132 0.000000 -0:133 interpolateAtOffset (global 3-component vector of float) -0:133 direct index (smooth sample temp 3-component vector of float) -0:133 'sampInArray' (smooth sample in 4-element array of 3-component vector of float) -0:133 Constant: -0:133 2 (const int) -0:133 Constant: -0:133 0.200000 -0:133 0.200000 -0:134 interpolateAtOffset (global 2-component vector of float) -0:134 vector swizzle (temp 2-component vector of float) -0:134 direct index (smooth sample temp 3-component vector of float) -0:134 'sampInArray' (smooth sample in 4-element array of 3-component vector of float) -0:134 Constant: -0:134 2 (const int) -0:134 Sequence -0:134 Constant: -0:134 0 (const int) -0:134 Constant: -0:134 1 (const int) -0:134 Constant: -0:134 0.200000 -0:134 0.200000 -0:135 interpolateAtOffset (global float) -0:135 add (temp float) -0:135 'scalarIn' (smooth in float) -0:135 'scalarIn' (smooth in float) -0:135 Constant: -0:135 0.200000 -0:135 0.200000 -0:136 interpolateAtOffset (global float) -0:136 x: direct index for structure (global float) -0:136 's2' (sample temp structure{global float x}) -0:136 Constant: -0:136 0 (const int) -0:136 Constant: -0:136 0.200000 -0:136 0.200000 -0:139 interpolateAtCentroid (global float) -0:139 'f' (temp float) -0:140 interpolateAtSample (global 4-component vector of float) -0:140 'outp' (out 4-component vector of float) -0:140 Constant: -0:140 0 (const int) -0:161 Function Definition: qlod( (global void) -0:161 Function Parameters: -0:? Sequence -0:168 move second child to first child (temp 2-component vector of float) -0:168 'lod' (temp 2-component vector of float) -0:168 textureQueryLod (global 2-component vector of float) -0:168 'samp1D' (uniform sampler1D) -0:168 'pf' (temp float) -0:169 move second child to first child (temp 2-component vector of float) -0:169 'lod' (temp 2-component vector of float) -0:169 textureQueryLod (global 2-component vector of float) -0:169 'isamp2D' (uniform isampler2D) -0:169 'pf2' (temp 2-component vector of float) -0:170 move second child to first child (temp 2-component vector of float) -0:170 'lod' (temp 2-component vector of float) -0:170 textureQueryLod (global 2-component vector of float) -0:170 'usamp3D' (uniform usampler3D) -0:170 'pf3' (temp 3-component vector of float) -0:171 move second child to first child (temp 2-component vector of float) -0:171 'lod' (temp 2-component vector of float) -0:171 textureQueryLod (global 2-component vector of float) -0:171 'sampCube' (uniform samplerCube) -0:171 'pf3' (temp 3-component vector of float) -0:172 move second child to first child (temp 2-component vector of float) -0:172 'lod' (temp 2-component vector of float) -0:172 textureQueryLod (global 2-component vector of float) -0:172 'isamp1DA' (uniform isampler1DArray) -0:172 'pf' (temp float) -0:173 move second child to first child (temp 2-component vector of float) -0:173 'lod' (temp 2-component vector of float) -0:173 textureQueryLod (global 2-component vector of float) -0:173 'usamp2DA' (uniform usampler2DArray) -0:173 'pf2' (temp 2-component vector of float) -0:174 move second child to first child (temp 2-component vector of float) -0:174 'lod' (temp 2-component vector of float) -0:174 textureQueryLod (global 2-component vector of float) -0:174 'isampCubeA' (uniform isamplerCubeArray) -0:174 'pf3' (temp 3-component vector of float) -0:176 move second child to first child (temp 2-component vector of float) -0:176 'lod' (temp 2-component vector of float) -0:176 textureQueryLod (global 2-component vector of float) -0:176 'samp1Ds' (uniform sampler1DShadow) -0:176 'pf' (temp float) -0:177 move second child to first child (temp 2-component vector of float) -0:177 'lod' (temp 2-component vector of float) -0:177 textureQueryLod (global 2-component vector of float) -0:177 'samp2Ds' (uniform sampler2DShadow) -0:177 'pf2' (temp 2-component vector of float) -0:178 move second child to first child (temp 2-component vector of float) -0:178 'lod' (temp 2-component vector of float) -0:178 textureQueryLod (global 2-component vector of float) -0:178 'sampCubes' (uniform samplerCubeShadow) -0:178 'pf3' (temp 3-component vector of float) -0:179 move second child to first child (temp 2-component vector of float) -0:179 'lod' (temp 2-component vector of float) -0:179 textureQueryLod (global 2-component vector of float) -0:179 'samp1DAs' (uniform sampler1DArrayShadow) -0:179 'pf' (temp float) -0:180 move second child to first child (temp 2-component vector of float) -0:180 'lod' (temp 2-component vector of float) -0:180 textureQueryLod (global 2-component vector of float) -0:180 'samp2DAs' (uniform sampler2DArrayShadow) -0:180 'pf2' (temp 2-component vector of float) -0:181 move second child to first child (temp 2-component vector of float) -0:181 'lod' (temp 2-component vector of float) -0:181 textureQueryLod (global 2-component vector of float) -0:181 'sampCubeAs' (uniform samplerCubeArrayShadow) -0:181 'pf3' (temp 3-component vector of float) -0:183 'lod' (temp 2-component vector of float) -0:184 'lod' (temp 2-component vector of float) 0:? Linker Objects 0:? 'c2D' (smooth in 2-component vector of float) 0:? 'i' (flat in int) diff --git a/Test/baseResults/400.geom.out b/Test/baseResults/400.geom.out index 16117e62..86e2b8ff 100644 --- a/Test/baseResults/400.geom.out +++ b/Test/baseResults/400.geom.out @@ -1070,981 +1070,6 @@ ERROR: node is still EOpNull! 0:9 move second child to first child (temp int) 0:9 'id' (temp int) 0:9 'gl_InvocationID' (in int InvocationID) -0:23 Function Definition: foo( (global void) -0:23 Function Parameters: -0:25 Sequence -0:25 Constant: -0:25 1 (const int) -0:26 gl_Position: direct index for structure (in 4-component vector of float Position) -0:26 direct index (temp block{in 4-component vector of float Position gl_Position, in float PointSize gl_PointSize}) -0:26 'gl_in' (in 3-element array of block{in 4-component vector of float Position gl_Position, in float PointSize gl_PointSize}) -0:26 Constant: -0:26 1 (const int) -0:26 Constant: -0:26 0 (const int) -0:34 Function Definition: foo2( (global void) -0:34 Function Parameters: -0:36 Sequence -0:36 Constant: -0:36 1 (const int) -0:37 Constant: -0:37 3 (const int) -0:46 Function Definition: foo3( (global void) -0:46 Function Parameters: -0:48 Sequence -0:48 Constant: -0:48 3 (const int) -0:49 Constant: -0:49 3 (const int) -0:50 Constant: -0:50 3 (const int) -0:51 Constant: -0:51 3 (const int) -0:75 Function Definition: bits( (global void) -0:75 Function Parameters: -0:? Sequence -0:78 move second child to first child (temp 2-component vector of uint) -0:78 'u2' (temp 2-component vector of uint) -0:78 addCarry (global 2-component vector of uint) -0:78 'u2' (temp 2-component vector of uint) -0:78 'u2' (temp 2-component vector of uint) -0:78 'u2' (temp 2-component vector of uint) -0:80 move second child to first child (temp uint) -0:80 'u1' (temp uint) -0:80 subBorrow (global uint) -0:80 'u1' (temp uint) -0:80 'u1' (temp uint) -0:80 'u1' (temp uint) -0:82 uMulExtended (global void) -0:82 'u4' (temp 4-component vector of uint) -0:82 'u4' (temp 4-component vector of uint) -0:82 'u4' (temp 4-component vector of uint) -0:82 'u4' (temp 4-component vector of uint) -0:84 iMulExtended (global void) -0:84 'i4' (temp 4-component vector of int) -0:84 'i4' (temp 4-component vector of int) -0:84 'i4' (temp 4-component vector of int) -0:84 'i4' (temp 4-component vector of int) -0:86 move second child to first child (temp int) -0:86 'i1' (temp int) -0:86 bitfieldExtract (global int) -0:86 'i1' (temp int) -0:86 Constant: -0:86 4 (const int) -0:86 Constant: -0:86 5 (const int) -0:88 move second child to first child (temp 3-component vector of uint) -0:88 'u3' (temp 3-component vector of uint) -0:88 bitfieldExtract (global 3-component vector of uint) -0:88 'u3' (temp 3-component vector of uint) -0:88 Constant: -0:88 4 (const int) -0:88 Constant: -0:88 5 (const int) -0:90 move second child to first child (temp 3-component vector of int) -0:90 'i3' (temp 3-component vector of int) -0:90 bitfieldInsert (global 3-component vector of int) -0:90 'i3' (temp 3-component vector of int) -0:90 'i3' (temp 3-component vector of int) -0:90 Constant: -0:90 4 (const int) -0:90 Constant: -0:90 5 (const int) -0:91 move second child to first child (temp uint) -0:91 'u1' (temp uint) -0:91 bitfieldInsert (global uint) -0:91 'u1' (temp uint) -0:91 'u1' (temp uint) -0:91 Constant: -0:91 4 (const int) -0:91 Constant: -0:91 5 (const int) -0:93 move second child to first child (temp 2-component vector of int) -0:93 'i2' (temp 2-component vector of int) -0:93 bitFieldReverse (global 2-component vector of int) -0:93 'i2' (temp 2-component vector of int) -0:94 move second child to first child (temp 4-component vector of uint) -0:94 'u4' (temp 4-component vector of uint) -0:94 bitFieldReverse (global 4-component vector of uint) -0:94 'u4' (temp 4-component vector of uint) -0:95 move second child to first child (temp int) -0:95 'i1' (temp int) -0:95 bitCount (global int) -0:95 'i1' (temp int) -0:96 move second child to first child (temp 3-component vector of int) -0:96 'i3' (temp 3-component vector of int) -0:96 bitCount (global 3-component vector of int) -0:96 'u3' (temp 3-component vector of uint) -0:97 move second child to first child (temp 2-component vector of int) -0:97 'i2' (temp 2-component vector of int) -0:97 findLSB (global 2-component vector of int) -0:97 'i2' (temp 2-component vector of int) -0:98 move second child to first child (temp 4-component vector of int) -0:98 'i4' (temp 4-component vector of int) -0:98 findLSB (global 4-component vector of int) -0:98 'u4' (temp 4-component vector of uint) -0:99 move second child to first child (temp int) -0:99 'i1' (temp int) -0:99 findMSB (global int) -0:99 'i1' (temp int) -0:100 move second child to first child (temp 2-component vector of int) -0:100 'i2' (temp 2-component vector of int) -0:100 findMSB (global 2-component vector of int) -0:100 'u2' (temp 2-component vector of uint) -0:108 Function Definition: qlod( (global void) -0:108 Function Parameters: -0:? Sequence -0:115 'lod' (temp 2-component vector of float) -0:116 'lod' (temp 2-component vector of float) -0:119 Function Definition: doubles( (global void) -0:119 Function Parameters: -0:? Sequence -0:131 move second child to first child (temp double) -0:131 'doublev' (temp double) -0:131 Constant: -0:131 1.702939 -0:132 move second child to first child (temp 2-component vector of double) -0:132 'dvec2v' (temp 2-component vector of double) -0:132 Constant: -0:132 1.643168 -0:132 1.643168 -0:133 move second child to first child (temp 3-component vector of double) -0:133 'dvec3v' (temp 3-component vector of double) -0:133 Constant: -0:133 1.414214 -0:133 1.414214 -0:133 1.414214 -0:134 move second child to first child (temp 4-component vector of double) -0:134 'dvec4v' (temp 4-component vector of double) -0:134 Constant: -0:134 1.449138 -0:134 1.449138 -0:134 1.449138 -0:134 1.449138 -0:136 add second child into first child (temp double) -0:136 'doublev' (temp double) -0:136 inverse sqrt (global double) -0:136 'doublev' (temp double) -0:137 add second child into first child (temp 2-component vector of double) -0:137 'dvec2v' (temp 2-component vector of double) -0:137 inverse sqrt (global 2-component vector of double) -0:137 'dvec2v' (temp 2-component vector of double) -0:138 add second child into first child (temp 3-component vector of double) -0:138 'dvec3v' (temp 3-component vector of double) -0:138 inverse sqrt (global 3-component vector of double) -0:138 'dvec3v' (temp 3-component vector of double) -0:139 add second child into first child (temp 4-component vector of double) -0:139 'dvec4v' (temp 4-component vector of double) -0:139 inverse sqrt (global 4-component vector of double) -0:139 'dvec4v' (temp 4-component vector of double) -0:141 add second child into first child (temp double) -0:141 'doublev' (temp double) -0:141 Absolute value (global double) -0:141 'doublev' (temp double) -0:142 add second child into first child (temp 2-component vector of double) -0:142 'dvec2v' (temp 2-component vector of double) -0:142 Absolute value (global 2-component vector of double) -0:142 'dvec2v' (temp 2-component vector of double) -0:143 add second child into first child (temp 3-component vector of double) -0:143 'dvec3v' (temp 3-component vector of double) -0:143 Absolute value (global 3-component vector of double) -0:143 'dvec3v' (temp 3-component vector of double) -0:144 add second child into first child (temp 4-component vector of double) -0:144 'dvec4v' (temp 4-component vector of double) -0:144 Absolute value (global 4-component vector of double) -0:144 'dvec4v' (temp 4-component vector of double) -0:146 add second child into first child (temp double) -0:146 'doublev' (temp double) -0:146 Sign (global double) -0:146 'doublev' (temp double) -0:147 add second child into first child (temp 2-component vector of double) -0:147 'dvec2v' (temp 2-component vector of double) -0:147 Sign (global 2-component vector of double) -0:147 'dvec2v' (temp 2-component vector of double) -0:148 add second child into first child (temp 3-component vector of double) -0:148 'dvec3v' (temp 3-component vector of double) -0:148 Sign (global 3-component vector of double) -0:148 'dvec3v' (temp 3-component vector of double) -0:149 add second child into first child (temp 4-component vector of double) -0:149 'dvec4v' (temp 4-component vector of double) -0:149 Sign (global 4-component vector of double) -0:149 'dvec4v' (temp 4-component vector of double) -0:151 add second child into first child (temp double) -0:151 'doublev' (temp double) -0:151 Floor (global double) -0:151 'doublev' (temp double) -0:152 add second child into first child (temp 2-component vector of double) -0:152 'dvec2v' (temp 2-component vector of double) -0:152 Floor (global 2-component vector of double) -0:152 'dvec2v' (temp 2-component vector of double) -0:153 add second child into first child (temp 3-component vector of double) -0:153 'dvec3v' (temp 3-component vector of double) -0:153 Floor (global 3-component vector of double) -0:153 'dvec3v' (temp 3-component vector of double) -0:154 add second child into first child (temp 4-component vector of double) -0:154 'dvec4v' (temp 4-component vector of double) -0:154 Floor (global 4-component vector of double) -0:154 'dvec4v' (temp 4-component vector of double) -0:156 add second child into first child (temp double) -0:156 'doublev' (temp double) -0:156 trunc (global double) -0:156 'doublev' (temp double) -0:157 add second child into first child (temp 2-component vector of double) -0:157 'dvec2v' (temp 2-component vector of double) -0:157 trunc (global 2-component vector of double) -0:157 'dvec2v' (temp 2-component vector of double) -0:158 add second child into first child (temp 3-component vector of double) -0:158 'dvec3v' (temp 3-component vector of double) -0:158 trunc (global 3-component vector of double) -0:158 'dvec3v' (temp 3-component vector of double) -0:159 add second child into first child (temp 4-component vector of double) -0:159 'dvec4v' (temp 4-component vector of double) -0:159 trunc (global 4-component vector of double) -0:159 'dvec4v' (temp 4-component vector of double) -0:161 add second child into first child (temp double) -0:161 'doublev' (temp double) -0:161 round (global double) -0:161 'doublev' (temp double) -0:162 add second child into first child (temp 2-component vector of double) -0:162 'dvec2v' (temp 2-component vector of double) -0:162 round (global 2-component vector of double) -0:162 'dvec2v' (temp 2-component vector of double) -0:163 add second child into first child (temp 3-component vector of double) -0:163 'dvec3v' (temp 3-component vector of double) -0:163 round (global 3-component vector of double) -0:163 'dvec3v' (temp 3-component vector of double) -0:164 add second child into first child (temp 4-component vector of double) -0:164 'dvec4v' (temp 4-component vector of double) -0:164 round (global 4-component vector of double) -0:164 'dvec4v' (temp 4-component vector of double) -0:166 add second child into first child (temp double) -0:166 'doublev' (temp double) -0:166 roundEven (global double) -0:166 'doublev' (temp double) -0:167 add second child into first child (temp 2-component vector of double) -0:167 'dvec2v' (temp 2-component vector of double) -0:167 roundEven (global 2-component vector of double) -0:167 'dvec2v' (temp 2-component vector of double) -0:168 add second child into first child (temp 3-component vector of double) -0:168 'dvec3v' (temp 3-component vector of double) -0:168 roundEven (global 3-component vector of double) -0:168 'dvec3v' (temp 3-component vector of double) -0:169 add second child into first child (temp 4-component vector of double) -0:169 'dvec4v' (temp 4-component vector of double) -0:169 roundEven (global 4-component vector of double) -0:169 'dvec4v' (temp 4-component vector of double) -0:171 add second child into first child (temp double) -0:171 'doublev' (temp double) -0:171 Ceiling (global double) -0:171 'doublev' (temp double) -0:172 add second child into first child (temp 2-component vector of double) -0:172 'dvec2v' (temp 2-component vector of double) -0:172 Ceiling (global 2-component vector of double) -0:172 'dvec2v' (temp 2-component vector of double) -0:173 add second child into first child (temp 3-component vector of double) -0:173 'dvec3v' (temp 3-component vector of double) -0:173 Ceiling (global 3-component vector of double) -0:173 'dvec3v' (temp 3-component vector of double) -0:174 add second child into first child (temp 4-component vector of double) -0:174 'dvec4v' (temp 4-component vector of double) -0:174 Ceiling (global 4-component vector of double) -0:174 'dvec4v' (temp 4-component vector of double) -0:176 add second child into first child (temp double) -0:176 'doublev' (temp double) -0:176 Fraction (global double) -0:176 'doublev' (temp double) -0:177 add second child into first child (temp 2-component vector of double) -0:177 'dvec2v' (temp 2-component vector of double) -0:177 Fraction (global 2-component vector of double) -0:177 'dvec2v' (temp 2-component vector of double) -0:178 add second child into first child (temp 3-component vector of double) -0:178 'dvec3v' (temp 3-component vector of double) -0:178 Fraction (global 3-component vector of double) -0:178 'dvec3v' (temp 3-component vector of double) -0:179 add second child into first child (temp 4-component vector of double) -0:179 'dvec4v' (temp 4-component vector of double) -0:179 Fraction (global 4-component vector of double) -0:179 'dvec4v' (temp 4-component vector of double) -0:181 add second child into first child (temp double) -0:181 'doublev' (temp double) -0:181 mod (global double) -0:181 'doublev' (temp double) -0:181 'doublev' (temp double) -0:182 add second child into first child (temp 2-component vector of double) -0:182 'dvec2v' (temp 2-component vector of double) -0:182 mod (global 2-component vector of double) -0:182 'dvec2v' (temp 2-component vector of double) -0:182 'doublev' (temp double) -0:183 add second child into first child (temp 3-component vector of double) -0:183 'dvec3v' (temp 3-component vector of double) -0:183 mod (global 3-component vector of double) -0:183 'dvec3v' (temp 3-component vector of double) -0:183 'doublev' (temp double) -0:184 add second child into first child (temp 4-component vector of double) -0:184 'dvec4v' (temp 4-component vector of double) -0:184 mod (global 4-component vector of double) -0:184 'dvec4v' (temp 4-component vector of double) -0:184 'doublev' (temp double) -0:185 add second child into first child (temp 2-component vector of double) -0:185 'dvec2v' (temp 2-component vector of double) -0:185 mod (global 2-component vector of double) -0:185 'dvec2v' (temp 2-component vector of double) -0:185 'dvec2v' (temp 2-component vector of double) -0:186 add second child into first child (temp 3-component vector of double) -0:186 'dvec3v' (temp 3-component vector of double) -0:186 mod (global 3-component vector of double) -0:186 'dvec3v' (temp 3-component vector of double) -0:186 'dvec3v' (temp 3-component vector of double) -0:187 add second child into first child (temp 4-component vector of double) -0:187 'dvec4v' (temp 4-component vector of double) -0:187 mod (global 4-component vector of double) -0:187 'dvec4v' (temp 4-component vector of double) -0:187 'dvec4v' (temp 4-component vector of double) -0:189 add second child into first child (temp double) -0:189 'doublev' (temp double) -0:189 modf (global double) -0:189 'doublev' (temp double) -0:189 'doublev' (temp double) -0:190 add second child into first child (temp 2-component vector of double) -0:190 'dvec2v' (temp 2-component vector of double) -0:190 modf (global 2-component vector of double) -0:190 'dvec2v' (temp 2-component vector of double) -0:190 'dvec2v' (temp 2-component vector of double) -0:191 add second child into first child (temp 3-component vector of double) -0:191 'dvec3v' (temp 3-component vector of double) -0:191 modf (global 3-component vector of double) -0:191 'dvec3v' (temp 3-component vector of double) -0:191 'dvec3v' (temp 3-component vector of double) -0:192 add second child into first child (temp 4-component vector of double) -0:192 'dvec4v' (temp 4-component vector of double) -0:192 modf (global 4-component vector of double) -0:192 'dvec4v' (temp 4-component vector of double) -0:192 'dvec4v' (temp 4-component vector of double) -0:194 add second child into first child (temp double) -0:194 'doublev' (temp double) -0:194 min (global double) -0:194 'doublev' (temp double) -0:194 'doublev' (temp double) -0:195 add second child into first child (temp 2-component vector of double) -0:195 'dvec2v' (temp 2-component vector of double) -0:195 min (global 2-component vector of double) -0:195 'dvec2v' (temp 2-component vector of double) -0:195 'doublev' (temp double) -0:196 add second child into first child (temp 3-component vector of double) -0:196 'dvec3v' (temp 3-component vector of double) -0:196 min (global 3-component vector of double) -0:196 'dvec3v' (temp 3-component vector of double) -0:196 'doublev' (temp double) -0:197 add second child into first child (temp 4-component vector of double) -0:197 'dvec4v' (temp 4-component vector of double) -0:197 min (global 4-component vector of double) -0:197 'dvec4v' (temp 4-component vector of double) -0:197 'doublev' (temp double) -0:198 add second child into first child (temp 2-component vector of double) -0:198 'dvec2v' (temp 2-component vector of double) -0:198 min (global 2-component vector of double) -0:198 'dvec2v' (temp 2-component vector of double) -0:198 'dvec2v' (temp 2-component vector of double) -0:199 add second child into first child (temp 3-component vector of double) -0:199 'dvec3v' (temp 3-component vector of double) -0:199 min (global 3-component vector of double) -0:199 'dvec3v' (temp 3-component vector of double) -0:199 'dvec3v' (temp 3-component vector of double) -0:200 add second child into first child (temp 4-component vector of double) -0:200 'dvec4v' (temp 4-component vector of double) -0:200 min (global 4-component vector of double) -0:200 'dvec4v' (temp 4-component vector of double) -0:200 'dvec4v' (temp 4-component vector of double) -0:202 add second child into first child (temp double) -0:202 'doublev' (temp double) -0:202 max (global double) -0:202 'doublev' (temp double) -0:202 'doublev' (temp double) -0:203 add second child into first child (temp 2-component vector of double) -0:203 'dvec2v' (temp 2-component vector of double) -0:203 max (global 2-component vector of double) -0:203 'dvec2v' (temp 2-component vector of double) -0:203 'doublev' (temp double) -0:204 add second child into first child (temp 3-component vector of double) -0:204 'dvec3v' (temp 3-component vector of double) -0:204 max (global 3-component vector of double) -0:204 'dvec3v' (temp 3-component vector of double) -0:204 'doublev' (temp double) -0:205 add second child into first child (temp 4-component vector of double) -0:205 'dvec4v' (temp 4-component vector of double) -0:205 max (global 4-component vector of double) -0:205 'dvec4v' (temp 4-component vector of double) -0:205 'doublev' (temp double) -0:206 add second child into first child (temp 2-component vector of double) -0:206 'dvec2v' (temp 2-component vector of double) -0:206 max (global 2-component vector of double) -0:206 'dvec2v' (temp 2-component vector of double) -0:206 'dvec2v' (temp 2-component vector of double) -0:207 add second child into first child (temp 3-component vector of double) -0:207 'dvec3v' (temp 3-component vector of double) -0:207 max (global 3-component vector of double) -0:207 'dvec3v' (temp 3-component vector of double) -0:207 'dvec3v' (temp 3-component vector of double) -0:208 add second child into first child (temp 4-component vector of double) -0:208 'dvec4v' (temp 4-component vector of double) -0:208 max (global 4-component vector of double) -0:208 'dvec4v' (temp 4-component vector of double) -0:208 'dvec4v' (temp 4-component vector of double) -0:210 add second child into first child (temp double) -0:210 'doublev' (temp double) -0:210 clamp (global double) -0:210 'doublev' (temp double) -0:210 'doublev' (temp double) -0:210 'doublev' (temp double) -0:211 add second child into first child (temp 2-component vector of double) -0:211 'dvec2v' (temp 2-component vector of double) -0:211 clamp (global 2-component vector of double) -0:211 'dvec2v' (temp 2-component vector of double) -0:211 'doublev' (temp double) -0:211 'doublev' (temp double) -0:212 add second child into first child (temp 3-component vector of double) -0:212 'dvec3v' (temp 3-component vector of double) -0:212 clamp (global 3-component vector of double) -0:212 'dvec3v' (temp 3-component vector of double) -0:212 'doublev' (temp double) -0:212 'doublev' (temp double) -0:213 add second child into first child (temp 4-component vector of double) -0:213 'dvec4v' (temp 4-component vector of double) -0:213 clamp (global 4-component vector of double) -0:213 'dvec4v' (temp 4-component vector of double) -0:213 'doublev' (temp double) -0:213 'doublev' (temp double) -0:214 add second child into first child (temp 2-component vector of double) -0:214 'dvec2v' (temp 2-component vector of double) -0:214 clamp (global 2-component vector of double) -0:214 'dvec2v' (temp 2-component vector of double) -0:214 'dvec2v' (temp 2-component vector of double) -0:214 'dvec2v' (temp 2-component vector of double) -0:215 add second child into first child (temp 3-component vector of double) -0:215 'dvec3v' (temp 3-component vector of double) -0:215 clamp (global 3-component vector of double) -0:215 'dvec3v' (temp 3-component vector of double) -0:215 'dvec3v' (temp 3-component vector of double) -0:215 'dvec3v' (temp 3-component vector of double) -0:216 add second child into first child (temp 4-component vector of double) -0:216 'dvec4v' (temp 4-component vector of double) -0:216 clamp (global 4-component vector of double) -0:216 'dvec4v' (temp 4-component vector of double) -0:216 'dvec4v' (temp 4-component vector of double) -0:216 'dvec4v' (temp 4-component vector of double) -0:218 add second child into first child (temp double) -0:218 'doublev' (temp double) -0:218 mix (global double) -0:218 'doublev' (temp double) -0:218 'doublev' (temp double) -0:218 'doublev' (temp double) -0:219 add second child into first child (temp 2-component vector of double) -0:219 'dvec2v' (temp 2-component vector of double) -0:219 mix (global 2-component vector of double) -0:219 'dvec2v' (temp 2-component vector of double) -0:219 'dvec2v' (temp 2-component vector of double) -0:219 'doublev' (temp double) -0:220 add second child into first child (temp 3-component vector of double) -0:220 'dvec3v' (temp 3-component vector of double) -0:220 mix (global 3-component vector of double) -0:220 'dvec3v' (temp 3-component vector of double) -0:220 'dvec3v' (temp 3-component vector of double) -0:220 'doublev' (temp double) -0:221 add second child into first child (temp 4-component vector of double) -0:221 'dvec4v' (temp 4-component vector of double) -0:221 mix (global 4-component vector of double) -0:221 'dvec4v' (temp 4-component vector of double) -0:221 'dvec4v' (temp 4-component vector of double) -0:221 'doublev' (temp double) -0:222 add second child into first child (temp 2-component vector of double) -0:222 'dvec2v' (temp 2-component vector of double) -0:222 mix (global 2-component vector of double) -0:222 'dvec2v' (temp 2-component vector of double) -0:222 'dvec2v' (temp 2-component vector of double) -0:222 'dvec2v' (temp 2-component vector of double) -0:223 add second child into first child (temp 3-component vector of double) -0:223 'dvec3v' (temp 3-component vector of double) -0:223 mix (global 3-component vector of double) -0:223 'dvec3v' (temp 3-component vector of double) -0:223 'dvec3v' (temp 3-component vector of double) -0:223 'dvec3v' (temp 3-component vector of double) -0:224 add second child into first child (temp 4-component vector of double) -0:224 'dvec4v' (temp 4-component vector of double) -0:224 mix (global 4-component vector of double) -0:224 'dvec4v' (temp 4-component vector of double) -0:224 'dvec4v' (temp 4-component vector of double) -0:224 'dvec4v' (temp 4-component vector of double) -0:225 add second child into first child (temp double) -0:225 'doublev' (temp double) -0:225 mix (global double) -0:225 'doublev' (temp double) -0:225 'doublev' (temp double) -0:225 'boolv' (temp bool) -0:226 add second child into first child (temp 2-component vector of double) -0:226 'dvec2v' (temp 2-component vector of double) -0:226 mix (global 2-component vector of double) -0:226 'dvec2v' (temp 2-component vector of double) -0:226 'dvec2v' (temp 2-component vector of double) -0:226 'bvec2v' (temp 2-component vector of bool) -0:227 add second child into first child (temp 3-component vector of double) -0:227 'dvec3v' (temp 3-component vector of double) -0:227 mix (global 3-component vector of double) -0:227 'dvec3v' (temp 3-component vector of double) -0:227 'dvec3v' (temp 3-component vector of double) -0:227 'bvec3v' (temp 3-component vector of bool) -0:228 add second child into first child (temp 4-component vector of double) -0:228 'dvec4v' (temp 4-component vector of double) -0:228 mix (global 4-component vector of double) -0:228 'dvec4v' (temp 4-component vector of double) -0:228 'dvec4v' (temp 4-component vector of double) -0:228 'bvec4v' (temp 4-component vector of bool) -0:230 add second child into first child (temp double) -0:230 'doublev' (temp double) -0:230 step (global double) -0:230 'doublev' (temp double) -0:230 'doublev' (temp double) -0:231 add second child into first child (temp 2-component vector of double) -0:231 'dvec2v' (temp 2-component vector of double) -0:231 step (global 2-component vector of double) -0:231 'dvec2v' (temp 2-component vector of double) -0:231 'dvec2v' (temp 2-component vector of double) -0:232 add second child into first child (temp 3-component vector of double) -0:232 'dvec3v' (temp 3-component vector of double) -0:232 step (global 3-component vector of double) -0:232 'dvec3v' (temp 3-component vector of double) -0:232 'dvec3v' (temp 3-component vector of double) -0:233 add second child into first child (temp 4-component vector of double) -0:233 'dvec4v' (temp 4-component vector of double) -0:233 step (global 4-component vector of double) -0:233 'dvec4v' (temp 4-component vector of double) -0:233 'dvec4v' (temp 4-component vector of double) -0:234 add second child into first child (temp 2-component vector of double) -0:234 'dvec2v' (temp 2-component vector of double) -0:234 step (global 2-component vector of double) -0:234 'doublev' (temp double) -0:234 'dvec2v' (temp 2-component vector of double) -0:235 add second child into first child (temp 3-component vector of double) -0:235 'dvec3v' (temp 3-component vector of double) -0:235 step (global 3-component vector of double) -0:235 'doublev' (temp double) -0:235 'dvec3v' (temp 3-component vector of double) -0:236 add second child into first child (temp 4-component vector of double) -0:236 'dvec4v' (temp 4-component vector of double) -0:236 step (global 4-component vector of double) -0:236 'doublev' (temp double) -0:236 'dvec4v' (temp 4-component vector of double) -0:238 add second child into first child (temp double) -0:238 'doublev' (temp double) -0:238 smoothstep (global double) -0:238 'doublev' (temp double) -0:238 'doublev' (temp double) -0:238 'doublev' (temp double) -0:239 add second child into first child (temp 2-component vector of double) -0:239 'dvec2v' (temp 2-component vector of double) -0:239 smoothstep (global 2-component vector of double) -0:239 'dvec2v' (temp 2-component vector of double) -0:239 'dvec2v' (temp 2-component vector of double) -0:239 'dvec2v' (temp 2-component vector of double) -0:240 add second child into first child (temp 3-component vector of double) -0:240 'dvec3v' (temp 3-component vector of double) -0:240 smoothstep (global 3-component vector of double) -0:240 'dvec3v' (temp 3-component vector of double) -0:240 'dvec3v' (temp 3-component vector of double) -0:240 'dvec3v' (temp 3-component vector of double) -0:241 add second child into first child (temp 4-component vector of double) -0:241 'dvec4v' (temp 4-component vector of double) -0:241 smoothstep (global 4-component vector of double) -0:241 'dvec4v' (temp 4-component vector of double) -0:241 'dvec4v' (temp 4-component vector of double) -0:241 'dvec4v' (temp 4-component vector of double) -0:242 add second child into first child (temp 2-component vector of double) -0:242 'dvec2v' (temp 2-component vector of double) -0:242 smoothstep (global 2-component vector of double) -0:242 'doublev' (temp double) -0:242 'doublev' (temp double) -0:242 'dvec2v' (temp 2-component vector of double) -0:243 add second child into first child (temp 3-component vector of double) -0:243 'dvec3v' (temp 3-component vector of double) -0:243 smoothstep (global 3-component vector of double) -0:243 'doublev' (temp double) -0:243 'doublev' (temp double) -0:243 'dvec3v' (temp 3-component vector of double) -0:244 add second child into first child (temp 4-component vector of double) -0:244 'dvec4v' (temp 4-component vector of double) -0:244 smoothstep (global 4-component vector of double) -0:244 'doublev' (temp double) -0:244 'doublev' (temp double) -0:244 'dvec4v' (temp 4-component vector of double) -0:246 move second child to first child (temp bool) -0:246 'boolv' (temp bool) -0:246 isnan (global bool) -0:246 'doublev' (temp double) -0:247 move second child to first child (temp 2-component vector of bool) -0:247 'bvec2v' (temp 2-component vector of bool) -0:247 isnan (global 2-component vector of bool) -0:247 'dvec2v' (temp 2-component vector of double) -0:248 move second child to first child (temp 3-component vector of bool) -0:248 'bvec3v' (temp 3-component vector of bool) -0:248 isnan (global 3-component vector of bool) -0:248 'dvec3v' (temp 3-component vector of double) -0:249 move second child to first child (temp 4-component vector of bool) -0:249 'bvec4v' (temp 4-component vector of bool) -0:249 isnan (global 4-component vector of bool) -0:249 'dvec4v' (temp 4-component vector of double) -0:251 move second child to first child (temp bool) -0:251 'boolv' (temp bool) -0:251 Test condition and select (temp bool) -0:251 Condition -0:251 'boolv' (temp bool) -0:251 true case -0:251 isinf (global bool) -0:251 'doublev' (temp double) -0:251 false case -0:251 Constant: -0:251 false (const bool) -0:252 move second child to first child (temp 2-component vector of bool) -0:252 'bvec2v' (temp 2-component vector of bool) -0:252 Test condition and select (temp 2-component vector of bool) -0:252 Condition -0:252 'boolv' (temp bool) -0:252 true case -0:252 isinf (global 2-component vector of bool) -0:252 'dvec2v' (temp 2-component vector of double) -0:252 false case -0:252 Constant: -0:252 false (const bool) -0:252 false (const bool) -0:253 move second child to first child (temp 3-component vector of bool) -0:253 'bvec3v' (temp 3-component vector of bool) -0:253 Test condition and select (temp 3-component vector of bool) -0:253 Condition -0:253 'boolv' (temp bool) -0:253 true case -0:253 isinf (global 3-component vector of bool) -0:253 'dvec3v' (temp 3-component vector of double) -0:253 false case -0:253 Constant: -0:253 false (const bool) -0:253 false (const bool) -0:253 false (const bool) -0:254 move second child to first child (temp 4-component vector of bool) -0:254 'bvec4v' (temp 4-component vector of bool) -0:254 Test condition and select (temp 4-component vector of bool) -0:254 Condition -0:254 'boolv' (temp bool) -0:254 true case -0:254 isinf (global 4-component vector of bool) -0:254 'dvec4v' (temp 4-component vector of double) -0:254 false case -0:254 Constant: -0:254 false (const bool) -0:254 false (const bool) -0:254 false (const bool) -0:254 false (const bool) -0:256 add second child into first child (temp double) -0:256 'doublev' (temp double) -0:256 length (global double) -0:256 'doublev' (temp double) -0:257 add second child into first child (temp double) -0:257 'doublev' (temp double) -0:257 length (global double) -0:257 'dvec2v' (temp 2-component vector of double) -0:258 add second child into first child (temp double) -0:258 'doublev' (temp double) -0:258 length (global double) -0:258 'dvec3v' (temp 3-component vector of double) -0:259 add second child into first child (temp double) -0:259 'doublev' (temp double) -0:259 length (global double) -0:259 'dvec4v' (temp 4-component vector of double) -0:261 add second child into first child (temp double) -0:261 'doublev' (temp double) -0:261 distance (global double) -0:261 'doublev' (temp double) -0:261 'doublev' (temp double) -0:262 add second child into first child (temp double) -0:262 'doublev' (temp double) -0:262 distance (global double) -0:262 'dvec2v' (temp 2-component vector of double) -0:262 'dvec2v' (temp 2-component vector of double) -0:263 add second child into first child (temp double) -0:263 'doublev' (temp double) -0:263 distance (global double) -0:263 'dvec3v' (temp 3-component vector of double) -0:263 'dvec3v' (temp 3-component vector of double) -0:264 add second child into first child (temp double) -0:264 'doublev' (temp double) -0:264 distance (global double) -0:264 'dvec4v' (temp 4-component vector of double) -0:264 'dvec4v' (temp 4-component vector of double) -0:266 add second child into first child (temp double) -0:266 'doublev' (temp double) -0:266 dot-product (global double) -0:266 'doublev' (temp double) -0:266 'doublev' (temp double) -0:267 add second child into first child (temp double) -0:267 'doublev' (temp double) -0:267 dot-product (global double) -0:267 'dvec2v' (temp 2-component vector of double) -0:267 'dvec2v' (temp 2-component vector of double) -0:268 add second child into first child (temp double) -0:268 'doublev' (temp double) -0:268 dot-product (global double) -0:268 'dvec3v' (temp 3-component vector of double) -0:268 'dvec3v' (temp 3-component vector of double) -0:269 add second child into first child (temp double) -0:269 'doublev' (temp double) -0:269 dot-product (global double) -0:269 'dvec4v' (temp 4-component vector of double) -0:269 'dvec4v' (temp 4-component vector of double) -0:271 add second child into first child (temp 3-component vector of double) -0:271 'dvec3v' (temp 3-component vector of double) -0:271 cross-product (global 3-component vector of double) -0:271 'dvec3v' (temp 3-component vector of double) -0:271 'dvec3v' (temp 3-component vector of double) -0:273 add second child into first child (temp double) -0:273 'doublev' (temp double) -0:273 normalize (global double) -0:273 'doublev' (temp double) -0:274 add second child into first child (temp 2-component vector of double) -0:274 'dvec2v' (temp 2-component vector of double) -0:274 normalize (global 2-component vector of double) -0:274 'dvec2v' (temp 2-component vector of double) -0:275 add second child into first child (temp 3-component vector of double) -0:275 'dvec3v' (temp 3-component vector of double) -0:275 normalize (global 3-component vector of double) -0:275 'dvec3v' (temp 3-component vector of double) -0:276 add second child into first child (temp 4-component vector of double) -0:276 'dvec4v' (temp 4-component vector of double) -0:276 normalize (global 4-component vector of double) -0:276 'dvec4v' (temp 4-component vector of double) -0:278 add second child into first child (temp double) -0:278 'doublev' (temp double) -0:278 face-forward (global double) -0:278 'doublev' (temp double) -0:278 'doublev' (temp double) -0:278 'doublev' (temp double) -0:279 add second child into first child (temp 2-component vector of double) -0:279 'dvec2v' (temp 2-component vector of double) -0:279 face-forward (global 2-component vector of double) -0:279 'dvec2v' (temp 2-component vector of double) -0:279 'dvec2v' (temp 2-component vector of double) -0:279 'dvec2v' (temp 2-component vector of double) -0:280 add second child into first child (temp 3-component vector of double) -0:280 'dvec3v' (temp 3-component vector of double) -0:280 face-forward (global 3-component vector of double) -0:280 'dvec3v' (temp 3-component vector of double) -0:280 'dvec3v' (temp 3-component vector of double) -0:280 'dvec3v' (temp 3-component vector of double) -0:281 add second child into first child (temp 4-component vector of double) -0:281 'dvec4v' (temp 4-component vector of double) -0:281 face-forward (global 4-component vector of double) -0:281 'dvec4v' (temp 4-component vector of double) -0:281 'dvec4v' (temp 4-component vector of double) -0:281 'dvec4v' (temp 4-component vector of double) -0:283 add second child into first child (temp double) -0:283 'doublev' (temp double) -0:283 reflect (global double) -0:283 'doublev' (temp double) -0:283 'doublev' (temp double) -0:284 add second child into first child (temp 2-component vector of double) -0:284 'dvec2v' (temp 2-component vector of double) -0:284 reflect (global 2-component vector of double) -0:284 'dvec2v' (temp 2-component vector of double) -0:284 'dvec2v' (temp 2-component vector of double) -0:285 add second child into first child (temp 3-component vector of double) -0:285 'dvec3v' (temp 3-component vector of double) -0:285 reflect (global 3-component vector of double) -0:285 'dvec3v' (temp 3-component vector of double) -0:285 'dvec3v' (temp 3-component vector of double) -0:286 add second child into first child (temp 4-component vector of double) -0:286 'dvec4v' (temp 4-component vector of double) -0:286 reflect (global 4-component vector of double) -0:286 'dvec4v' (temp 4-component vector of double) -0:286 'dvec4v' (temp 4-component vector of double) -0:288 add second child into first child (temp double) -0:288 'doublev' (temp double) -0:288 refract (global double) -0:288 'doublev' (temp double) -0:288 'doublev' (temp double) -0:288 'doublev' (temp double) -0:289 add second child into first child (temp 2-component vector of double) -0:289 'dvec2v' (temp 2-component vector of double) -0:289 refract (global 2-component vector of double) -0:289 'dvec2v' (temp 2-component vector of double) -0:289 'dvec2v' (temp 2-component vector of double) -0:289 'doublev' (temp double) -0:290 add second child into first child (temp 3-component vector of double) -0:290 'dvec3v' (temp 3-component vector of double) -0:290 refract (global 3-component vector of double) -0:290 'dvec3v' (temp 3-component vector of double) -0:290 'dvec3v' (temp 3-component vector of double) -0:290 'doublev' (temp double) -0:291 add second child into first child (temp 4-component vector of double) -0:291 'dvec4v' (temp 4-component vector of double) -0:291 refract (global 4-component vector of double) -0:291 'dvec4v' (temp 4-component vector of double) -0:291 'dvec4v' (temp 4-component vector of double) -0:291 'doublev' (temp double) -0:293 Sequence -0:293 move second child to first child (temp 2X2 matrix of double) -0:293 'dmat2v' (temp 2X2 matrix of double) -0:293 outer product (global 2X2 matrix of double) -0:293 'dvec2v' (temp 2-component vector of double) -0:293 'dvec2v' (temp 2-component vector of double) -0:294 Sequence -0:294 move second child to first child (temp 3X3 matrix of double) -0:294 'dmat3v' (temp 3X3 matrix of double) -0:294 outer product (global 3X3 matrix of double) -0:294 'dvec3v' (temp 3-component vector of double) -0:294 'dvec3v' (temp 3-component vector of double) -0:295 Sequence -0:295 move second child to first child (temp 4X4 matrix of double) -0:295 'dmat4v' (temp 4X4 matrix of double) -0:295 outer product (global 4X4 matrix of double) -0:295 'dvec4v' (temp 4-component vector of double) -0:295 'dvec4v' (temp 4-component vector of double) -0:296 Sequence -0:296 move second child to first child (temp 2X3 matrix of double) -0:296 'dmat2x3v' (temp 2X3 matrix of double) -0:296 outer product (global 2X3 matrix of double) -0:296 'dvec3v' (temp 3-component vector of double) -0:296 'dvec2v' (temp 2-component vector of double) -0:297 Sequence -0:297 move second child to first child (temp 3X2 matrix of double) -0:297 'dmat3x2v' (temp 3X2 matrix of double) -0:297 outer product (global 3X2 matrix of double) -0:297 'dvec2v' (temp 2-component vector of double) -0:297 'dvec3v' (temp 3-component vector of double) -0:298 Sequence -0:298 move second child to first child (temp 2X4 matrix of double) -0:298 'dmat2x4v' (temp 2X4 matrix of double) -0:298 outer product (global 2X4 matrix of double) -0:298 'dvec4v' (temp 4-component vector of double) -0:298 'dvec2v' (temp 2-component vector of double) -0:299 Sequence -0:299 move second child to first child (temp 4X2 matrix of double) -0:299 'dmat4x2v' (temp 4X2 matrix of double) -0:299 outer product (global 4X2 matrix of double) -0:299 'dvec2v' (temp 2-component vector of double) -0:299 'dvec4v' (temp 4-component vector of double) -0:300 Sequence -0:300 move second child to first child (temp 3X4 matrix of double) -0:300 'dmat3x4v' (temp 3X4 matrix of double) -0:300 outer product (global 3X4 matrix of double) -0:300 'dvec4v' (temp 4-component vector of double) -0:300 'dvec3v' (temp 3-component vector of double) -0:301 Sequence -0:301 move second child to first child (temp 4X3 matrix of double) -0:301 'dmat4x3v' (temp 4X3 matrix of double) -0:301 outer product (global 4X3 matrix of double) -0:301 'dvec3v' (temp 3-component vector of double) -0:301 'dvec4v' (temp 4-component vector of double) -0:303 matrix mult second child into first child (temp 2X2 matrix of double) -0:303 'dmat2v' (temp 2X2 matrix of double) -0:303 component-wise multiply (global 2X2 matrix of double) -0:303 'dmat2v' (temp 2X2 matrix of double) -0:303 'dmat2v' (temp 2X2 matrix of double) -0:304 matrix mult second child into first child (temp 3X3 matrix of double) -0:304 'dmat3v' (temp 3X3 matrix of double) -0:304 component-wise multiply (global 3X3 matrix of double) -0:304 'dmat3v' (temp 3X3 matrix of double) -0:304 'dmat3v' (temp 3X3 matrix of double) -0:305 matrix mult second child into first child (temp 4X4 matrix of double) -0:305 'dmat4v' (temp 4X4 matrix of double) -0:305 component-wise multiply (global 4X4 matrix of double) -0:305 'dmat4v' (temp 4X4 matrix of double) -0:305 'dmat4v' (temp 4X4 matrix of double) -0:306 move second child to first child (temp 2X3 matrix of double) -0:306 'dmat2x3v' (temp 2X3 matrix of double) -0:306 component-wise multiply (global 2X3 matrix of double) -0:306 'dmat2x3v' (temp 2X3 matrix of double) -0:306 'dmat2x3v' (temp 2X3 matrix of double) -0:307 move second child to first child (temp 2X4 matrix of double) -0:307 'dmat2x4v' (temp 2X4 matrix of double) -0:307 component-wise multiply (global 2X4 matrix of double) -0:307 'dmat2x4v' (temp 2X4 matrix of double) -0:307 'dmat2x4v' (temp 2X4 matrix of double) -0:308 move second child to first child (temp 3X2 matrix of double) -0:308 'dmat3x2v' (temp 3X2 matrix of double) -0:308 component-wise multiply (global 3X2 matrix of double) -0:308 'dmat3x2v' (temp 3X2 matrix of double) -0:308 'dmat3x2v' (temp 3X2 matrix of double) -0:309 move second child to first child (temp 3X4 matrix of double) -0:309 'dmat3x4v' (temp 3X4 matrix of double) -0:309 component-wise multiply (global 3X4 matrix of double) -0:309 'dmat3x4v' (temp 3X4 matrix of double) -0:309 'dmat3x4v' (temp 3X4 matrix of double) -0:310 move second child to first child (temp 4X2 matrix of double) -0:310 'dmat4x2v' (temp 4X2 matrix of double) -0:310 component-wise multiply (global 4X2 matrix of double) -0:310 'dmat4x2v' (temp 4X2 matrix of double) -0:310 'dmat4x2v' (temp 4X2 matrix of double) -0:311 move second child to first child (temp 4X3 matrix of double) -0:311 'dmat4x3v' (temp 4X3 matrix of double) -0:311 component-wise multiply (global 4X3 matrix of double) -0:311 'dmat4x3v' (temp 4X3 matrix of double) -0:311 'dmat4x3v' (temp 4X3 matrix of double) -0:313 matrix mult second child into first child (temp 2X2 matrix of double) -0:313 'dmat2v' (temp 2X2 matrix of double) -0:313 transpose (global 2X2 matrix of double) -0:313 'dmat2v' (temp 2X2 matrix of double) -0:314 matrix mult second child into first child (temp 3X3 matrix of double) -0:314 'dmat3v' (temp 3X3 matrix of double) -0:314 transpose (global 3X3 matrix of double) -0:314 'dmat3v' (temp 3X3 matrix of double) -0:315 matrix mult second child into first child (temp 4X4 matrix of double) -0:315 'dmat4v' (temp 4X4 matrix of double) -0:315 transpose (global 4X4 matrix of double) -0:315 'dmat4v' (temp 4X4 matrix of double) -0:316 move second child to first child (temp 2X3 matrix of double) -0:316 'dmat2x3v' (temp 2X3 matrix of double) -0:316 transpose (global 2X3 matrix of double) -0:316 'dmat3x2v' (temp 3X2 matrix of double) -0:317 move second child to first child (temp 3X2 matrix of double) -0:317 'dmat3x2v' (temp 3X2 matrix of double) -0:317 transpose (global 3X2 matrix of double) -0:317 'dmat2x3v' (temp 2X3 matrix of double) -0:318 move second child to first child (temp 2X4 matrix of double) -0:318 'dmat2x4v' (temp 2X4 matrix of double) -0:318 transpose (global 2X4 matrix of double) -0:318 'dmat4x2v' (temp 4X2 matrix of double) -0:319 move second child to first child (temp 4X2 matrix of double) -0:319 'dmat4x2v' (temp 4X2 matrix of double) -0:319 transpose (global 4X2 matrix of double) -0:319 'dmat2x4v' (temp 2X4 matrix of double) -0:320 move second child to first child (temp 3X4 matrix of double) -0:320 'dmat3x4v' (temp 3X4 matrix of double) -0:320 transpose (global 3X4 matrix of double) -0:320 'dmat4x3v' (temp 4X3 matrix of double) -0:321 move second child to first child (temp 4X3 matrix of double) -0:321 'dmat4x3v' (temp 4X3 matrix of double) -0:321 transpose (global 4X3 matrix of double) -0:321 'dmat3x4v' (temp 3X4 matrix of double) -0:323 add second child into first child (temp double) -0:323 'doublev' (temp double) -0:323 determinant (global double) -0:323 'dmat2v' (temp 2X2 matrix of double) -0:324 add second child into first child (temp double) -0:324 'doublev' (temp double) -0:324 determinant (global double) -0:324 'dmat3v' (temp 3X3 matrix of double) -0:325 add second child into first child (temp double) -0:325 'doublev' (temp double) -0:325 determinant (global double) -0:325 'dmat4v' (temp 4X4 matrix of double) -0:327 matrix mult second child into first child (temp 2X2 matrix of double) -0:327 'dmat2v' (temp 2X2 matrix of double) -0:327 inverse (global 2X2 matrix of double) -0:327 'dmat2v' (temp 2X2 matrix of double) -0:328 matrix mult second child into first child (temp 3X3 matrix of double) -0:328 'dmat3v' (temp 3X3 matrix of double) -0:328 inverse (global 3X3 matrix of double) -0:328 'dmat3v' (temp 3X3 matrix of double) -0:329 matrix mult second child into first child (temp 4X4 matrix of double) -0:329 'dmat4v' (temp 4X4 matrix of double) -0:329 inverse (global 4X4 matrix of double) -0:329 'dmat4v' (temp 4X4 matrix of double) 0:? Linker Objects 0:? 'bn' (in 3-element array of block{in int a}) 0:? 'gl_in' (in 3-element array of block{in 4-component vector of float Position gl_Position, in float PointSize gl_PointSize}) diff --git a/Test/baseResults/400.tesc.out b/Test/baseResults/400.tesc.out index 58a8a327..f3e7b8bb 100644 --- a/Test/baseResults/400.tesc.out +++ b/Test/baseResults/400.tesc.out @@ -364,35 +364,6 @@ ERROR: node is still EOpNull! 0:56 Barrier (global void) 0:59 Branch: Return 0:61 Barrier (global void) -0:67 Function Definition: foo( (global void) -0:67 Function Parameters: -0:69 Sequence -0:69 gl_PointSize: direct index for structure (out float PointSize) -0:69 direct index (temp block{out 4-component vector of float Position gl_Position, out float PointSize gl_PointSize, out 2-element array of float ClipDistance gl_ClipDistance}) -0:69 'gl_out' (out 4-element array of block{out 4-component vector of float Position gl_Position, out float PointSize gl_PointSize, out 2-element array of float ClipDistance gl_ClipDistance}) -0:69 Constant: -0:69 4 (const int) -0:69 Constant: -0:69 1 (const int) -0:71 Barrier (global void) -0:91 Function Definition: foop( (global void) -0:91 Function Parameters: -0:? Sequence -0:95 multiply second child into first child (temp 3-component vector of float) -0:95 'pv3' (noContraction temp 3-component vector of float) -0:95 'pv3' (noContraction temp 3-component vector of float) -0:96 move second child to first child (temp 3-component vector of float) -0:96 'pv3' (noContraction temp 3-component vector of float) -0:96 fma (global 3-component vector of float) -0:96 'pv3' (noContraction temp 3-component vector of float) -0:96 'pv3' (noContraction temp 3-component vector of float) -0:96 'pv3' (noContraction temp 3-component vector of float) -0:97 move second child to first child (temp double) -0:97 'd' (noContraction temp double) -0:97 fma (global double) -0:97 'd' (noContraction temp double) -0:97 'd' (noContraction temp double) -0:97 'd' (noContraction temp double) 0:? Linker Objects 0:? 'gl_out' (out 4-element array of block{out 4-component vector of float Position gl_Position, out float PointSize gl_PointSize, out 2-element array of float ClipDistance gl_ClipDistance}) 0:? 'outa' (global 4-element array of int) diff --git a/Test/baseResults/400.vert.out b/Test/baseResults/400.vert.out index 2b0d63da..bf078875 100755 --- a/Test/baseResults/400.vert.out +++ b/Test/baseResults/400.vert.out @@ -340,11 +340,6 @@ ERROR: node is still EOpNull! 0:20 '' (in uint) 0:20 '' (in float) 0:20 '' (in double) -0:21 Function Definition: ftd(f1;d1;d1; (global void) -0:21 Function Parameters: -0:21 '' (in float) -0:21 '' (in double) -0:21 '' (in double) 0:23 Function Definition: main( (global void) 0:23 Function Parameters: 0:? Sequence @@ -552,19 +547,6 @@ ERROR: node is still EOpNull! 0:91 'f' (temp float) 0:91 Convert float to double (temp double) 0:91 'f' (temp float) -0:97 Function Definition: tf( (global void) -0:97 Function Parameters: -0:? Sequence -0:104 Function Call: itf(i1;f1;i1; (global void) -0:104 'i' (temp int) -0:104 Convert int to float (temp float) -0:104 'i' (temp int) -0:104 'i' (temp int) -0:105 Function Call: itf(i1;f1;i1; (global void) -0:105 'i' (temp int) -0:105 Convert uint to float (temp float) -0:105 'u' (temp uint) -0:105 'i' (temp int) 0:? Linker Objects 0:? 'd' (in double) 0:? 'd3' (in 3-component vector of double) diff --git a/Test/baseResults/410.geom.out b/Test/baseResults/410.geom.out index 6f7252c9..aa421dbe 100644 --- a/Test/baseResults/410.geom.out +++ b/Test/baseResults/410.geom.out @@ -77,35 +77,6 @@ ERROR: node is still EOpNull! 0:5 'gl_ViewportIndex' (layout(stream=0 ) out int ViewportIndex) 0:5 Constant: 0:5 7 (const int) -0:28 Function Definition: foo( (global void) -0:28 Function Parameters: -0:30 Sequence -0:30 Sequence -0:30 move second child to first child (temp float) -0:30 'p' (temp float) -0:30 gl_PointSize: direct index for structure (in float PointSize) -0:30 direct index (temp block{in float PointSize gl_PointSize}) -0:30 'gl_in' (in 2-element array of block{in float PointSize gl_PointSize}) -0:30 Constant: -0:30 1 (const int) -0:30 Constant: -0:30 0 (const int) -0:31 move second child to first child (temp float) -0:31 gl_PointSize: direct index for structure (layout(stream=0 ) gl_PointSize float PointSize) -0:31 'anon@0' (layout(stream=0 ) out block{layout(stream=0 ) gl_PointSize float PointSize gl_PointSize, }) -0:31 Constant: -0:31 1 (const uint) -0:31 'p' (temp float) -0:33 gl_Position: direct index for structure (layout(stream=0 ) gl_Position void Position) -0:33 'anon@0' (layout(stream=0 ) out block{layout(stream=0 ) gl_PointSize float PointSize gl_PointSize, }) -0:33 Constant: -0:33 0 (const uint) -0:36 Function Definition: foo5( (global float) -0:36 Function Parameters: -0:38 Sequence -0:38 Branch: Return with expression -0:38 Constant: -0:38 4.000000 0:? Linker Objects 0:? 'gl_in' (in 2-element array of block{in float PointSize gl_PointSize}) 0:? 'anon@0' (layout(stream=0 ) out block{layout(stream=0 ) gl_PointSize float PointSize gl_PointSize, }) diff --git a/Test/baseResults/420.geom.out b/Test/baseResults/420.geom.out index 625feea7..ca459a64 100644 --- a/Test/baseResults/420.geom.out +++ b/Test/baseResults/420.geom.out @@ -142,111 +142,6 @@ max_vertices = -1 input primitive = triangles output primitive = none ERROR: node is still EOpNull! -0:7 Function Definition: foo( (global void) -0:7 Function Parameters: -0:9 Sequence -0:9 Constant: -0:9 1 (const int) -0:10 gl_Position: direct index for structure (in 4-component vector of float Position) -0:10 direct index (temp block{in 4-component vector of float Position gl_Position, in float PointSize gl_PointSize, in 1-element array of float ClipDistance gl_ClipDistance}) -0:10 'gl_in' (in 3-element array of block{in 4-component vector of float Position gl_Position, in float PointSize gl_PointSize, in 1-element array of float ClipDistance gl_ClipDistance}) -0:10 Constant: -0:10 1 (const int) -0:10 Constant: -0:10 0 (const int) -0:11 gl_Position: direct index for structure (in 4-component vector of float Position) -0:11 indirect index (temp block{in 4-component vector of float Position gl_Position, in float PointSize gl_PointSize, in 1-element array of float ClipDistance gl_ClipDistance}) -0:11 'gl_in' (in 3-element array of block{in 4-component vector of float Position gl_Position, in float PointSize gl_PointSize, in 1-element array of float ClipDistance gl_ClipDistance}) -0:11 'i' (global int) -0:11 Constant: -0:11 0 (const int) -0:18 Function Definition: foo3( (global void) -0:18 Function Parameters: -0:20 Sequence -0:20 Constant: -0:20 3 (const int) -0:21 gl_Position: direct index for structure (in 4-component vector of float Position) -0:21 indirect index (temp block{in 4-component vector of float Position gl_Position, in float PointSize gl_PointSize, in 1-element array of float ClipDistance gl_ClipDistance}) -0:21 'gl_in' (in 3-element array of block{in 4-component vector of float Position gl_Position, in float PointSize gl_PointSize, in 1-element array of float ClipDistance gl_ClipDistance}) -0:21 'i' (global int) -0:21 Constant: -0:21 0 (const int) -0:22 Constant: -0:22 3 (const int) -0:29 Function Definition: foo4( (global void) -0:29 Function Parameters: -0:? Sequence -0:40 Sequence -0:40 move second child to first child (temp 4-component vector of float) -0:40 'v' (temp 4-component vector of float) -0:40 textureGatherOffset (global 4-component vector of float) -0:40 's2D' (uniform sampler2D) -0:40 direct index (temp 2-component vector of float) -0:40 'coord' (in 3-element array of 2-component vector of float) -0:40 Constant: -0:40 0 (const int) -0:40 vector swizzle (temp 2-component vector of int) -0:40 indirect index (temp 2-component vector of int) -0:40 Constant: -0:40 0 (const int) -0:40 1 (const int) -0:40 1 (const int) -0:40 -2 (const int) -0:40 0 (const int) -0:40 3 (const int) -0:40 -3 (const int) -0:40 0 (const int) -0:40 2 (const int) -0:40 1 (const int) -0:40 'i' (global int) -0:40 Sequence -0:40 Constant: -0:40 0 (const int) -0:40 Constant: -0:40 1 (const int) -0:42 move second child to first child (temp 2-component vector of int) -0:42 vector swizzle (temp 2-component vector of int) -0:42 indirect index (temp 2-component vector of int) -0:42 Constant: -0:42 0 (const int) -0:42 1 (const int) -0:42 1 (const int) -0:42 -2 (const int) -0:42 0 (const int) -0:42 3 (const int) -0:42 -3 (const int) -0:42 0 (const int) -0:42 2 (const int) -0:42 1 (const int) -0:42 'i' (global int) -0:42 Sequence -0:42 Constant: -0:42 0 (const int) -0:42 Constant: -0:42 1 (const int) -0:42 Constant: -0:42 3 (const int) -0:42 3 (const int) -0:43 move second child to first child (temp float) -0:43 direct index (temp float) -0:43 'v4' (uniform 4-component vector of float) -0:43 Constant: -0:43 0 (const int) -0:43 Constant: -0:43 3.200000 -0:44 vector swizzle (temp 2-component vector of float) -0:44 'v4' (uniform 4-component vector of float) -0:44 Sequence -0:44 Constant: -0:44 0 (const int) -0:44 Constant: -0:44 1 (const int) -0:52 Function Definition: foo5( (global float) -0:52 Function Parameters: -0:54 Sequence -0:54 Branch: Return with expression -0:54 Convert int to float (temp float) -0:54 'i' (global int) 0:? Linker Objects 0:? 'i' (global int) 0:? 'gl_in' (in 3-element array of block{in 4-component vector of float Position gl_Position, in float PointSize gl_PointSize, in 1-element array of float ClipDistance gl_ClipDistance}) diff --git a/Test/baseResults/420.tesc.out b/Test/baseResults/420.tesc.out index 594e1302..30839ec8 100644 --- a/Test/baseResults/420.tesc.out +++ b/Test/baseResults/420.tesc.out @@ -184,41 +184,6 @@ ERROR: node is still EOpNull! 0:26 indirect index (temp block{out 4-component vector of float Position gl_Position}) 0:26 'gl_out' (out 3-element array of block{out 4-component vector of float Position gl_Position}) 0:26 'gl_InvocationID' (in int InvocationID) -0:34 Function Definition: foo( (global void) -0:34 Function Parameters: -0:36 Sequence -0:36 Test condition and select (temp void) -0:36 Condition -0:36 logical-or (temp bool) -0:36 Compare Not Equal (temp bool) -0:36 Constant: -0:36 -0.625000 -0:36 -0.500000 -0:36 -0.375000 -0:36 -0.250000 -0:36 -0.375000 -0:36 -0.250000 -0:36 -0.125000 -0:36 0.000000 -0:36 direct index (layout(location=0 ) temp 2X4 matrix of double) -0:36 'vs_tcs_first' (layout(location=0 ) in 32-element array of 2X4 matrix of double) -0:36 Constant: -0:36 0 (const int) -0:37 Compare Not Equal (temp bool) -0:37 Constant: -0:37 0.375000 -0:37 0.500000 -0:37 0.625000 -0:37 0.750000 -0:37 0.625000 -0:37 0.750000 -0:37 0.875000 -0:37 -0.625000 -0:37 direct index (layout(location=12 ) temp 2X4 matrix of double) -0:37 'vs_tcs_last' (layout(location=12 ) in 32-element array of 2X4 matrix of double) -0:37 Constant: -0:37 0 (const int) -0:36 true case is null 0:? Linker Objects 0:? 'gl_out' (out 3-element array of block{out 4-component vector of float Position gl_Position}) 0:? 'a' (out 3-element array of int) diff --git a/Test/baseResults/420.vert.out b/Test/baseResults/420.vert.out index 5636e7a1..a70b44e7 100644 --- a/Test/baseResults/420.vert.out +++ b/Test/baseResults/420.vert.out @@ -310,19 +310,6 @@ Linked vertex stage: Shader version: 420 ERROR: node is still EOpNull! -0:20 Function Definition: foo( (const int) -0:20 Function Parameters: -0:? Sequence -0:23 Sequence -0:23 move second child to first child (temp int) -0:23 'b' (const (read only) int) -0:23 'anonconst' (global int) -0:25 Sequence -0:25 move second child to first child (temp int) -0:25 'd' (const (read only) int) -0:25 'b' (const (read only) int) -0:29 Branch: Return with expression -0:29 'b' (const (read only) int) 0:32 Function Definition: main( (global void) 0:32 Function Parameters: 0:? Sequence @@ -342,164 +329,6 @@ ERROR: node is still EOpNull! 0:42 Constant: 0:42 true (const bool) 0:42 No loop body -0:50 Function Definition: bar(vf4; (global void) -0:50 Function Parameters: -0:50 'v' (volatile in 4-component vector of float) -0:? Sequence -0:53 's' (temp int) -0:54 's' (temp int) -0:55 Test condition and select (temp void) -0:55 Condition -0:55 Compare Equal (temp bool) -0:55 direct index (temp float) -0:55 direct index (temp 4-component vector of float) -0:55 'bad' (in 10-element array of 4-component vector of float) -0:55 Constant: -0:55 0 (const int) -0:55 Constant: -0:55 0 (const int) -0:55 Constant: -0:55 4.200000 -0:55 true case is null -0:57 Test condition and select (temp void) -0:57 Condition -0:57 Constant: -0:57 true (const bool) -0:57 true case -0:58 move second child to first child (temp 4-component vector of float) -0:58 'badorder3' (flat out 4-component vector of float) -0:58 direct index (temp 4-component vector of float) -0:58 'bad' (in 10-element array of 4-component vector of float) -0:58 Constant: -0:58 0 (const int) -0:61 Sequence -0:61 move second child to first child (temp 3-component vector of float) -0:61 'smeared' (temp 3-component vector of float) -0:61 Construct vec3 (temp 3-component vector of float) -0:61 'f' (temp float) -0:62 'f' (temp float) -0:63 'f' (temp float) -0:88 Function Definition: bar23444( (global void) -0:88 Function Parameters: -0:? Sequence -0:91 Sequence -0:91 move second child to first child (temp float) -0:91 'a1' (temp float) -0:91 direct index (temp float) -0:91 direct index (temp 3-component vector of float) -0:91 'm43' (temp 4X3 matrix of float) -0:91 Constant: -0:91 3 (const int) -0:91 Constant: -0:91 1 (const int) -0:93 Sequence -0:93 move second child to first child (temp int) -0:93 'a2' (temp int) -0:93 Constant: -0:93 4 (const int) -0:94 add second child into first child (temp int) -0:94 'a2' (temp int) -0:94 Constant: -0:94 3 (const int) -0:95 add second child into first child (temp int) -0:95 'a2' (temp int) -0:95 Constant: -0:95 3 (const int) -0:96 Sequence -0:96 move second child to first child (temp float) -0:96 'b' (const (read only) float) -0:96 component-wise multiply (temp float) -0:96 Constant: -0:96 2.000000 -0:96 'a1' (temp float) -0:97 Sequence -0:97 move second child to first child (temp int) -0:97 'a' (temp int) -0:97 Constant: -0:97 -1 (const int) -0:109 Function Definition: qux( (global void) -0:109 Function Parameters: -0:111 Sequence -0:111 Sequence -0:111 move second child to first child (temp int) -0:111 'i' (temp int) -0:111 aoeu: direct index for structure (layout(column_major shared ) uniform int) -0:111 'anon@0' (layout(binding=7 column_major shared ) uniform block{layout(column_major shared ) uniform int aoeu}) -0:111 Constant: -0:111 0 (const uint) -0:112 imageAtomicCompSwap (global int) -0:112 'iimg2D' (layout(r32i ) uniform iimage2D) -0:112 Construct ivec2 (temp 2-component vector of int) -0:112 'i' (temp int) -0:112 'i' (temp int) -0:112 'i' (temp int) -0:112 'i' (temp int) -0:113 imageAtomicAdd (global uint) -0:113 'uimg2D' (layout(r32ui ) uniform uimage2D) -0:113 Construct ivec2 (temp 2-component vector of int) -0:113 'i' (temp int) -0:113 'i' (temp int) -0:113 Convert int to uint (temp uint) -0:113 'i' (temp int) -0:114 imageAtomicMin (global int) -0:114 'iimg2Drgba' (layout(rgba32i ) uniform iimage2D) -0:114 Construct ivec2 (temp 2-component vector of int) -0:114 'i' (temp int) -0:114 'i' (temp int) -0:114 'i' (temp int) -0:115 Constant: -0:115 0.000000 -0:116 Sequence -0:116 move second child to first child (temp 4-component vector of int) -0:116 'pos' (temp 4-component vector of int) -0:116 imageLoad (global 4-component vector of int) -0:116 'iimg2D' (layout(r32i ) uniform iimage2D) -0:116 Construct ivec2 (temp 2-component vector of int) -0:116 'i' (temp int) -0:116 'i' (temp int) -0:117 Sequence -0:117 move second child to first child (temp 4-component vector of float) -0:117 'col' (temp 4-component vector of float) -0:117 imageLoad (global 4-component vector of float) -0:117 'img2DMS' (uniform image2DMS) -0:117 Construct ivec2 (temp 2-component vector of int) -0:117 'i' (temp int) -0:117 'i' (temp int) -0:117 'i' (temp int) -0:118 imageStore (global void) -0:118 'img2DMSWO' (writeonly uniform image2DMS) -0:118 Construct ivec2 (temp 2-component vector of int) -0:118 'i' (temp int) -0:118 'i' (temp int) -0:118 'i' (temp int) -0:118 Constant: -0:118 0.000000 -0:118 0.000000 -0:118 0.000000 -0:118 0.000000 -0:119 imageLoad (global 4-component vector of float) -0:119 'img2DMSWO' (writeonly uniform image2DMS) -0:119 Construct ivec2 (temp 2-component vector of int) -0:119 'i' (temp int) -0:119 'i' (temp int) -0:119 'i' (temp int) -0:125 Function Definition: passr(iI21; (global void) -0:125 Function Parameters: -0:125 'image' (coherent readonly in iimage2D) -0:132 Function Definition: passrc( (global void) -0:132 Function Parameters: -0:134 Sequence -0:134 Function Call: passr(iI21; (global void) -0:134 'qualim1' (layout(r32i ) coherent readonly uniform iimage2D) -0:135 Function Call: passr(iI21; (global void) -0:135 'qualim2' (layout(r32i ) coherent volatile readonly uniform iimage2D) -0:136 Function Call: passr(iI21; (global void) -0:136 'iimg2D' (layout(r32i ) uniform iimage2D) -0:153 Function Definition: qlod( (global void) -0:153 Function Parameters: -0:? Sequence -0:157 'levels' (temp int) -0:158 'levels' (temp int) 0:? Linker Objects 0:? 'v2' (smooth out 2-component vector of float) 0:? 'bad' (in 10-element array of 4-component vector of float) diff --git a/Test/baseResults/420_size_gl_in.geom.out b/Test/baseResults/420_size_gl_in.geom.out index 28d09a6d..54ec99ea 100644 --- a/Test/baseResults/420_size_gl_in.geom.out +++ b/Test/baseResults/420_size_gl_in.geom.out @@ -49,26 +49,6 @@ max_vertices = -1 input primitive = triangles output primitive = none ERROR: node is still EOpNull! -0:11 Function Definition: foo( (global void) -0:11 Function Parameters: -0:13 Sequence -0:13 Constant: -0:13 3 (const int) -0:14 gl_Position: direct index for structure (in 4-component vector of float Position) -0:14 direct index (temp block{in 4-component vector of float Position gl_Position, in float PointSize gl_PointSize, in 1-element array of float ClipDistance gl_ClipDistance}) -0:14 'gl_in' (in 3-element array of block{in 4-component vector of float Position gl_Position, in float PointSize gl_PointSize, in 1-element array of float ClipDistance gl_ClipDistance}) -0:14 Constant: -0:14 1 (const int) -0:14 Constant: -0:14 0 (const int) -0:15 Constant: -0:15 3 (const int) -0:16 gl_Position: direct index for structure (in 4-component vector of float Position) -0:16 indirect index (temp block{in 4-component vector of float Position gl_Position, in float PointSize gl_PointSize, in 1-element array of float ClipDistance gl_ClipDistance}) -0:16 'gl_in' (in 3-element array of block{in 4-component vector of float Position gl_Position, in float PointSize gl_PointSize, in 1-element array of float ClipDistance gl_ClipDistance}) -0:16 'i' (global int) -0:16 Constant: -0:16 0 (const int) 0:? Linker Objects 0:? 'i' (global int) 0:? 'colorun' (in 3-element array of 4-component vector of float) diff --git a/Test/baseResults/430.comp.out b/Test/baseResults/430.comp.out index aecf42fc..ed61346f 100644 --- a/Test/baseResults/430.comp.out +++ b/Test/baseResults/430.comp.out @@ -184,77 +184,6 @@ ERROR: node is still EOpNull! 0:39 10 (const int) 0:39 true case 0:40 Barrier (global void) -0:63 Function Definition: foo( (global void) -0:63 Function Parameters: -0:65 Sequence -0:65 move second child to first child (temp float) -0:65 direct index (layout(column_major shared ) temp float) -0:65 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of float) -0:65 'ro' (layout(column_major shared ) readonly buffer block{layout(column_major shared ) buffer int value, layout(column_major shared ) buffer implicitly-sized array of float values}) -0:65 Constant: -0:65 1 (const int) -0:65 Constant: -0:65 2 (const int) -0:65 Constant: -0:65 4.700000 -0:66 array length (temp int) -0:66 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of float) -0:66 'ro' (layout(column_major shared ) readonly buffer block{layout(column_major shared ) buffer int value, layout(column_major shared ) buffer implicitly-sized array of float values}) -0:66 Constant: -0:66 1 (const int) -0:67 Barrier (global void) -0:72 Function Definition: fooaoeu( (global void) -0:72 Function Parameters: -0:73 Sequence -0:73 Sequence -0:73 move second child to first child (temp 2-component vector of int) -0:73 'storePos' (temp 2-component vector of int) -0:73 Convert uint to int (temp 2-component vector of int) -0:73 vector swizzle (temp 2-component vector of uint) -0:73 'gl_GlobalInvocationID' (in 3-component vector of uint GlobalInvocationID) -0:73 Sequence -0:73 Constant: -0:73 0 (const int) -0:73 Constant: -0:73 1 (const int) -0:74 Sequence -0:74 move second child to first child (temp double) -0:74 'localCoef' (temp double) -0:74 Convert float to double (temp double) -0:74 length (global float) -0:74 divide (temp 2-component vector of float) -0:74 Convert int to float (temp 2-component vector of float) -0:74 subtract (temp 2-component vector of int) -0:74 Convert uint to int (temp 2-component vector of int) -0:74 vector swizzle (temp 2-component vector of uint) -0:74 'gl_LocalInvocationID' (in 3-component vector of uint LocalInvocationID) -0:74 Sequence -0:74 Constant: -0:74 0 (const int) -0:74 Constant: -0:74 1 (const int) -0:74 Constant: -0:74 8 (const int) -0:74 Constant: -0:74 8.000000 -0:75 Sequence -0:75 move second child to first child (temp 4-component vector of double) -0:75 'aa' (temp 4-component vector of double) -0:75 Constant: -0:75 0.400000 -0:75 0.200000 -0:75 0.300000 -0:75 0.400000 -0:76 Sequence -0:76 move second child to first child (temp double) -0:76 'globalCoef' (temp double) -0:76 Constant: -0:76 1.000000 -0:78 Sequence -0:78 move second child to first child (temp double) -0:78 'di' (temp double) -0:78 Convert int to double (temp double) -0:78 'i' (temp int) 0:? Linker Objects 0:? 'gl_WorkGroupSize' (const 3-component vector of uint WorkGroupSize) 0:? 2 (const uint) diff --git a/Test/baseResults/430.vert.out b/Test/baseResults/430.vert.out index 676fcd3f..8cd1156b 100644 --- a/Test/baseResults/430.vert.out +++ b/Test/baseResults/430.vert.out @@ -275,135 +275,6 @@ Requested GL_ARB_enhanced_layouts Requested GL_ARB_shader_texture_image_samples in xfb mode ERROR: node is still EOpNull! -0:14 Function Definition: foo( (global void) -0:14 Function Parameters: -0:16 Sequence -0:16 move second child to first child (temp float) -0:16 direct index (temp float ClipDistance) -0:16 gl_ClipDistance: direct index for structure (out 17-element array of float ClipDistance) -0:16 'anon@0' (out block{out 17-element array of float ClipDistance gl_ClipDistance, }) -0:16 Constant: -0:16 2 (const uint) -0:16 Constant: -0:16 2 (const int) -0:16 Constant: -0:16 3.700000 -0:31 Function Definition: foo3(vf4;vf3;vf2;vf3; (global void) -0:31 Function Parameters: -0:31 'v4' (in 4-component vector of float) -0:31 'v3' (volatile in 3-component vector of float) -0:31 'v2' (in 2-component vector of float) -0:31 'cv3' (in 3-component vector of float) -0:148 Function Definition: fooBarrier( (global void) -0:148 Function Parameters: -0:150 Sequence -0:150 Constant: -0:150 0.000000 -0:151 MemoryBarrier (global void) -0:152 MemoryBarrierAtomicCounter (global void) -0:153 MemoryBarrierBuffer (global void) -0:154 Constant: -0:154 0.000000 -0:155 MemoryBarrierImage (global void) -0:156 Constant: -0:156 0.000000 -0:166 Function Definition: fooq( (global void) -0:166 Function Parameters: -0:168 Sequence -0:168 Sequence -0:168 move second child to first child (temp int) -0:168 's' (temp int) -0:168 textureSamples (global int) -0:168 's2dms' (uniform sampler2DMS) -0:169 add second child into first child (temp int) -0:169 's' (temp int) -0:169 textureSamples (global int) -0:169 'us2dmsa' (uniform usampler2DMSArray) -0:170 add second child into first child (temp int) -0:170 's' (temp int) -0:170 imageQuerySamples (global int) -0:170 'ii2dms' (layout(rgba32i ) uniform iimage2DMS) -0:171 add second child into first child (temp int) -0:171 's' (temp int) -0:171 imageQuerySamples (global int) -0:171 'i2dmsa' (layout(rgba32f ) uniform image2DMSArray) -0:176 Function Definition: fooq2( (global void) -0:176 Function Parameters: -0:178 Sequence -0:178 Sequence -0:178 move second child to first child (temp int) -0:178 's' (temp int) -0:178 textureSamples (global int) -0:178 's2dms' (uniform sampler2DMS) -0:179 add second child into first child (temp int) -0:179 's' (temp int) -0:179 textureSamples (global int) -0:179 'us2dmsa' (uniform usampler2DMSArray) -0:180 add second child into first child (temp int) -0:180 's' (temp int) -0:180 imageQuerySamples (global int) -0:180 'ii2dms' (layout(rgba32i ) uniform iimage2DMS) -0:181 add second child into first child (temp int) -0:181 's' (temp int) -0:181 imageQuerySamples (global int) -0:181 'i2dmsa' (layout(rgba32f ) uniform image2DMSArray) -0:202 Function Definition: qlod( (global void) -0:202 Function Parameters: -0:? Sequence -0:206 move second child to first child (temp int) -0:206 'levels' (temp int) -0:206 textureQueryLevels (global int) -0:206 'samp1D' (uniform sampler1D) -0:207 move second child to first child (temp int) -0:207 'levels' (temp int) -0:207 textureQueryLevels (global int) -0:207 'usamp2D' (uniform usampler2D) -0:208 move second child to first child (temp int) -0:208 'levels' (temp int) -0:208 textureQueryLevels (global int) -0:208 'isamp3D' (uniform isampler3D) -0:209 move second child to first child (temp int) -0:209 'levels' (temp int) -0:209 textureQueryLevels (global int) -0:209 'isampCube' (uniform isamplerCube) -0:210 move second child to first child (temp int) -0:210 'levels' (temp int) -0:210 textureQueryLevels (global int) -0:210 'isamp1DA' (uniform isampler1DArray) -0:211 move second child to first child (temp int) -0:211 'levels' (temp int) -0:211 textureQueryLevels (global int) -0:211 'samp2DA' (uniform sampler2DArray) -0:212 move second child to first child (temp int) -0:212 'levels' (temp int) -0:212 textureQueryLevels (global int) -0:212 'usampCubeA' (uniform usamplerCubeArray) -0:214 move second child to first child (temp int) -0:214 'levels' (temp int) -0:214 textureQueryLevels (global int) -0:214 'samp1Ds' (uniform sampler1DShadow) -0:215 move second child to first child (temp int) -0:215 'levels' (temp int) -0:215 textureQueryLevels (global int) -0:215 'samp2Ds' (uniform sampler2DShadow) -0:216 move second child to first child (temp int) -0:216 'levels' (temp int) -0:216 textureQueryLevels (global int) -0:216 'sampCubes' (uniform samplerCubeShadow) -0:217 move second child to first child (temp int) -0:217 'levels' (temp int) -0:217 textureQueryLevels (global int) -0:217 'samp1DAs' (uniform sampler1DArrayShadow) -0:218 move second child to first child (temp int) -0:218 'levels' (temp int) -0:218 textureQueryLevels (global int) -0:218 'samp2DAs' (uniform sampler2DArrayShadow) -0:219 move second child to first child (temp int) -0:219 'levels' (temp int) -0:219 textureQueryLevels (global int) -0:219 'sampCubeAs' (uniform samplerCubeArrayShadow) -0:221 'levels' (temp int) -0:222 'levels' (temp int) 0:? Linker Objects 0:? 'v4' (layout(location=3 ) temp 4-component vector of float) 0:? 'uv4' (layout(location=4 ) uniform 4-component vector of float) diff --git a/Test/baseResults/430AofA.frag.out b/Test/baseResults/430AofA.frag.out index f3bbfb8b..fd3892dc 100644 --- a/Test/baseResults/430AofA.frag.out +++ b/Test/baseResults/430AofA.frag.out @@ -766,34 +766,6 @@ ERROR: node is still EOpNull! 0:84 5.000000 0:85 Function Call: foo(f1[5][7]; (global 4-element array of 7-element array of float) 0:85 'u' (temp 5-element array of 7-element array of float) -0:88 Function Definition: foo3( (global void) -0:88 Function Parameters: -0:? Sequence -0:91 Constant: -0:91 1 (const int) -0:92 move second child to first child (temp float) -0:92 direct index (temp float) -0:92 direct index (temp 7-element array of float) -0:92 direct index (temp 5-element array of 7-element array of float) -0:92 'resize1' (temp 3-element array of 5-element array of 7-element array of float) -0:92 Constant: -0:92 1 (const int) -0:92 Constant: -0:92 4 (const int) -0:92 Constant: -0:92 5 (const int) -0:92 Constant: -0:92 2.000000 -0:93 Constant: -0:93 1 (const int) -0:95 Constant: -0:95 3 (const int) -0:96 Constant: -0:96 5 (const int) -0:97 Constant: -0:97 7 (const int) -0:98 Constant: -0:98 0.000000 0:? Linker Objects 0:? 'many' (global 1-element array of 2-element array of 3-element array of 4-element array of 5-element array of 6-element array of float) 0:? 'gu' (global 1-element array of 7-element array of float) diff --git a/Test/baseResults/430scope.vert.out b/Test/baseResults/430scope.vert.out index f1b9594e..c7d05038 100644 --- a/Test/baseResults/430scope.vert.out +++ b/Test/baseResults/430scope.vert.out @@ -149,20 +149,6 @@ ERROR: node is still EOpNull! 0:8 1.000000 0:11 Branch: Return with expression 0:11 'a' (in int) -0:25 Function Definition: cos(f1; (global float) -0:25 Function Parameters: -0:25 'x' (in float) -0:27 Sequence -0:27 Branch: Return with expression -0:27 Constant: -0:27 1.000000 -0:29 Function Definition: radians(b1; (global bool) -0:29 Function Parameters: -0:29 'x' (in bool) -0:31 Sequence -0:31 Branch: Return with expression -0:31 Constant: -0:31 true (const bool) 0:36 Function Definition: main( (global void) 0:36 Function Parameters: 0:? Sequence diff --git a/Test/baseResults/440.frag.out b/Test/baseResults/440.frag.out index 064fe19e..bdc1b095 100644 --- a/Test/baseResults/440.frag.out +++ b/Test/baseResults/440.frag.out @@ -126,35 +126,6 @@ ERROR: Linking fragment stage: Missing entry point: Each stage requires one entr Shader version: 440 ERROR: node is still EOpNull! -0:144 Function Definition: interp( (global void) -0:144 Function Parameters: -0:146 Sequence -0:146 interpolateAtCentroid (global 2-component vector of float) -0:146 vector swizzle (temp 2-component vector of float) -0:146 direct index (smooth sample temp 3-component vector of float) -0:146 'sampInArray' (smooth sample in 4-element array of 3-component vector of float) -0:146 Constant: -0:146 2 (const int) -0:146 Sequence -0:146 Constant: -0:146 0 (const int) -0:146 Constant: -0:146 1 (const int) -0:147 interpolateAtSample (global float) -0:147 direct index (temp float) -0:147 direct index (smooth sample temp 3-component vector of float) -0:147 'sampInArray' (smooth sample in 4-element array of 3-component vector of float) -0:147 Constant: -0:147 2 (const int) -0:147 Constant: -0:147 0 (const int) -0:147 Constant: -0:147 2 (const int) -0:150 Function Definition: layer( (global int) -0:150 Function Parameters: -0:152 Sequence -0:152 Branch: Return with expression -0:152 'gl_Layer' (flat in int Layer) 0:? Linker Objects 0:? 'a' (layout(location=4 component=2 ) smooth in 2-component vector of float) 0:? 'b' (layout(location=4 component=1 ) smooth in float) diff --git a/Test/baseResults/440.vert.out b/Test/baseResults/440.vert.out index 022ddec4..bf625c8a 100644 --- a/Test/baseResults/440.vert.out +++ b/Test/baseResults/440.vert.out @@ -174,37 +174,6 @@ Shader version: 440 Requested GL_ARB_shader_draw_parameters in xfb mode ERROR: node is still EOpNull! -0:177 Function Definition: drawParamsBad( (global int) -0:177 Function Parameters: -0:179 Sequence -0:179 Branch: Return with expression -0:179 add (temp int) -0:179 add (temp int) -0:179 'gl_BaseVertexARB' (in int BaseVertex) -0:179 'gl_BaseInstanceARB' (in int BaseInstance) -0:179 'gl_DrawIDARB' (in int DrawId) -0:184 Function Definition: drawParams( (global int) -0:184 Function Parameters: -0:186 Sequence -0:186 Branch: Return with expression -0:186 add (temp int) -0:186 add (temp int) -0:186 'gl_BaseVertexARB' (in int BaseVertex) -0:186 'gl_BaseInstanceARB' (in int BaseInstance) -0:186 'gl_DrawIDARB' (in int DrawId) -0:187 move second child to first child (temp int) -0:187 'gl_BaseVertexARB' (in int BaseVertex) -0:187 Constant: -0:187 3 (const int) -0:188 move second child to first child (temp int) -0:188 'gl_BaseInstanceARB' (in int BaseInstance) -0:188 Constant: -0:188 3 (const int) -0:189 move second child to first child (temp int) -0:189 'gl_DrawIDARB' (in int DrawId) -0:189 Constant: -0:189 3 (const int) -0:190 'glBaseInstanceARB' (temp float) 0:? Linker Objects 0:? 'a' (layout(location=2 component=2 ) in 2-component vector of float) 0:? 'b' (layout(location=2 component=1 ) in float) diff --git a/Test/baseResults/450.frag.out b/Test/baseResults/450.frag.out index 23682e8a..03826733 100644 --- a/Test/baseResults/450.frag.out +++ b/Test/baseResults/450.frag.out @@ -263,57 +263,6 @@ Shader version: 450 0:34 'uin' (temp uint) 0:34 Construct bvec3 (temp 3-component vector of bool) 0:34 'b' (temp bool) -0:42 Function Definition: foo( (global void) -0:42 Function Parameters: -0:44 Sequence -0:44 Sequence -0:44 move second child to first child (temp int) -0:44 's' (temp int) -0:44 textureSamples (global int) -0:44 's2dms' (uniform sampler2DMS) -0:45 add second child into first child (temp int) -0:45 's' (temp int) -0:45 textureSamples (global int) -0:45 'us2dmsa' (uniform usampler2DMSArray) -0:46 add second child into first child (temp int) -0:46 's' (temp int) -0:46 imageQuerySamples (global int) -0:46 'ii2dms' (layout(rgba32i ) uniform iimage2DMS) -0:47 add second child into first child (temp int) -0:47 's' (temp int) -0:47 imageQuerySamples (global int) -0:47 'i2dmsa' (layout(rgba32f ) uniform image2DMSArray) -0:48 Sequence -0:48 move second child to first child (temp float) -0:48 'f' (temp float) -0:48 imageAtomicExchange (global float) -0:48 'i2dmsa' (layout(rgba32f ) uniform image2DMSArray) -0:48 Convert float to int (temp 3-component vector of int) -0:48 'in3' (smooth in 3-component vector of float) -0:48 Constant: -0:48 2 (const int) -0:48 Constant: -0:48 4.500000 -0:53 Function Definition: cull(i1; (global float) -0:53 Function Parameters: -0:53 'i' (in int) -0:55 Sequence -0:55 Branch: Return with expression -0:55 Test condition and select (temp float) -0:55 Condition -0:55 Compare Greater Than or Equal (temp bool) -0:55 'i' (in int) -0:55 Constant: -0:55 6 (const int) -0:55 true case -0:55 direct index (smooth temp float CullDistance) -0:55 'gl_CullDistance' (smooth in 6-element array of float CullDistance) -0:55 Constant: -0:55 5 (const int) -0:55 false case -0:55 indirect index (smooth temp float CullDistance) -0:55 'gl_CullDistance' (smooth in 6-element array of float CullDistance) -0:55 'i' (in int) 0:? Linker Objects 0:? 'in1' (smooth in float) 0:? 'in2' (smooth in 2-component vector of float) diff --git a/Test/baseResults/array.frag.out b/Test/baseResults/array.frag.out index 8b3cf807..e254bf13 100644 --- a/Test/baseResults/array.frag.out +++ b/Test/baseResults/array.frag.out @@ -446,71 +446,6 @@ ERROR: node is still EOpNull! 0:58 1 (const int) 0:58 Constant: 0:58 4 (const int) -0:68 Function Definition: foo( (global void) -0:68 Function Parameters: -0:? Sequence -0:71 move second child to first child (temp int) -0:71 direct index (temp int) -0:71 'uns' (temp 4-element array of int) -0:71 Constant: -0:71 3 (const int) -0:71 Constant: -0:71 40 (const int) -0:72 move second child to first child (temp int) -0:72 direct index (temp int) -0:72 'uns' (temp 4-element array of int) -0:72 Constant: -0:72 1 (const int) -0:72 Constant: -0:72 30 (const int) -0:73 move second child to first child (temp 3-component vector of float) -0:73 direct index (temp 3-component vector of float) -0:73 'guns' (global 8-element array of 3-component vector of float) -0:73 Constant: -0:73 2 (const int) -0:73 Constant: -0:73 2.400000 -0:73 2.400000 -0:73 2.400000 -0:76 Constant: -0:76 0.000000 -0:79 Function Definition: foo2( (global implicitly-sized array of float) -0:79 Function Parameters: -0:? Sequence -0:82 Branch: Return with expression -0:82 'f' (temp 1-element array of float) -0:84 Branch: Return with expression -0:84 'g' (temp 9-element array of float) -0:89 Function Definition: foo3( (global void) -0:89 Function Parameters: -0:? Sequence -0:92 move second child to first child (temp float) -0:92 direct index (temp float) -0:92 'resize1' (temp 3-element array of float) -0:92 Constant: -0:92 2 (const int) -0:92 Constant: -0:92 4.000000 -0:93 Constant: -0:93 1 (const int) -0:95 Constant: -0:95 3 (const int) -0:98 move second child to first child (temp float) -0:98 direct index (temp float) -0:98 'resize2' (temp 5-element array of float) -0:98 Constant: -0:98 5 (const int) -0:98 Constant: -0:98 4.000000 -0:100 Constant: -0:100 5 (const int) -0:101 move second child to first child (temp float) -0:101 direct index (temp float) -0:101 'resize2' (temp 5-element array of float) -0:101 Constant: -0:101 5 (const int) -0:101 Constant: -0:101 4.000000 0:106 Sequence 0:106 move second child to first child (temp float) 0:106 'b' (global float) diff --git a/Test/baseResults/array100.frag.out b/Test/baseResults/array100.frag.out index b44f6a02..cf543614 100644 --- a/Test/baseResults/array100.frag.out +++ b/Test/baseResults/array100.frag.out @@ -265,29 +265,6 @@ ERROR: node is still EOpNull! 0:40 1.000000 0:40 1.000000 0:40 1.000000 -0:53 Function Definition: bar9( (global structure{global mediump 4-component vector of float v4, global structure{global mediump 3-component vector of float v3, global 4-element array of mediump 2-component vector of float v2} sa}) -0:53 Function Parameters: -0:? Sequence -0:56 Branch: Return with expression -0:56 's' (temp structure{global mediump 4-component vector of float v4, global structure{global mediump 3-component vector of float v3, global 4-element array of mediump 2-component vector of float v2} sa}) -0:59 Function Definition: bar10(struct-SB-vf4-struct-SA-vf3-vf2[4]11; (global void) -0:59 Function Parameters: -0:59 's' (in structure{global mediump 4-component vector of float v4, global structure{global mediump 3-component vector of float v3, global 4-element array of mediump 2-component vector of float v2} sa}) -0:63 Function Definition: bar11( (global void) -0:63 Function Parameters: -0:? Sequence -0:66 move second child to first child (temp structure{global mediump 4-component vector of float v4, global structure{global mediump 3-component vector of float v3, global 4-element array of mediump 2-component vector of float v2} sa}) -0:66 's1' (temp structure{global mediump 4-component vector of float v4, global structure{global mediump 3-component vector of float v3, global 4-element array of mediump 2-component vector of float v2} sa}) -0:66 's2' (temp structure{global mediump 4-component vector of float v4, global structure{global mediump 3-component vector of float v3, global 4-element array of mediump 2-component vector of float v2} sa}) -0:67 Function Call: bar10(struct-SB-vf4-struct-SA-vf3-vf2[4]11; (global void) -0:67 's1' (temp structure{global mediump 4-component vector of float v4, global structure{global mediump 3-component vector of float v3, global 4-element array of mediump 2-component vector of float v2} sa}) -0:68 move second child to first child (temp structure{global mediump 4-component vector of float v4, global structure{global mediump 3-component vector of float v3, global 4-element array of mediump 2-component vector of float v2} sa}) -0:68 's2' (temp structure{global mediump 4-component vector of float v4, global structure{global mediump 3-component vector of float v3, global 4-element array of mediump 2-component vector of float v2} sa}) -0:68 Function Call: bar9( (global structure{global mediump 4-component vector of float v4, global structure{global mediump 3-component vector of float v3, global 4-element array of mediump 2-component vector of float v2} sa}) -0:69 Sequence -0:69 move second child to first child (temp structure{global mediump 4-component vector of float v4, global structure{global mediump 3-component vector of float v3, global 4-element array of mediump 2-component vector of float v2} sa}) -0:69 'initSb' (temp structure{global mediump 4-component vector of float v4, global structure{global mediump 3-component vector of float v3, global 4-element array of mediump 2-component vector of float v2} sa}) -0:69 's1' (temp structure{global mediump 4-component vector of float v4, global structure{global mediump 3-component vector of float v3, global 4-element array of mediump 2-component vector of float v2} sa}) 0:? Linker Objects 0:? 'gu' (global 1-element array of mediump float) 0:? 'g4' (global 4-element array of mediump float) diff --git a/Test/baseResults/atomic_uint.frag.out b/Test/baseResults/atomic_uint.frag.out index 4d05756c..e54b5dcf 100644 --- a/Test/baseResults/atomic_uint.frag.out +++ b/Test/baseResults/atomic_uint.frag.out @@ -86,22 +86,6 @@ Linked fragment stage: Shader version: 420 ERROR: node is still EOpNull! -0:5 Function Definition: func(au1; (global uint) -0:5 Function Parameters: -0:5 'c' (in atomic_uint) -0:7 Sequence -0:7 Branch: Return with expression -0:7 AtomicCounterIncrement (global uint) -0:7 'c' (in atomic_uint) -0:10 Function Definition: func2(au1; (global uint) -0:10 Function Parameters: -0:10 'c' (out atomic_uint) -0:12 Sequence -0:12 Branch: Return with expression -0:12 'counter' (layout(binding=0 offset=0 ) uniform atomic_uint) -0:13 Branch: Return with expression -0:13 AtomicCounter (global uint) -0:13 'counter' (layout(binding=0 offset=0 ) uniform atomic_uint) 0:16 Function Definition: main( (global void) 0:16 Function Parameters: 0:? Sequence @@ -112,22 +96,6 @@ ERROR: node is still EOpNull! 0:19 'counter' (layout(binding=0 offset=0 ) uniform atomic_uint) 0:20 AtomicCounterDecrement (global uint) 0:20 'counter' (layout(binding=0 offset=0 ) uniform atomic_uint) -0:26 Function Definition: opac( (global void) -0:26 Function Parameters: -0:28 Sequence -0:28 'counter' (layout(binding=0 offset=0 ) uniform atomic_uint) -0:29 'counter' (layout(binding=0 offset=0 ) uniform atomic_uint) -0:31 indirect index (temp int) -0:31 'a' (temp 3-element array of int) -0:31 'counter' (layout(binding=0 offset=0 ) uniform atomic_uint) -0:32 direct index (layout(binding=1 offset=3 ) temp atomic_uint) -0:32 'countArr' (layout(binding=1 offset=3 ) uniform 4-element array of atomic_uint) -0:32 Constant: -0:32 2 (const int) -0:33 indirect index (layout(binding=1 offset=3 ) temp atomic_uint) -0:33 'countArr' (layout(binding=1 offset=3 ) uniform 4-element array of atomic_uint) -0:33 'i' (uniform int) -0:34 'counter' (layout(binding=0 offset=0 ) uniform atomic_uint) 0:? Linker Objects 0:? 'counter' (layout(binding=0 offset=0 ) uniform atomic_uint) 0:? 'countArr' (layout(binding=1 offset=3 ) uniform 4-element array of atomic_uint) diff --git a/Test/baseResults/constFold.frag.out b/Test/baseResults/constFold.frag.out index 2e784688..33bf5130 100644 --- a/Test/baseResults/constFold.frag.out +++ b/Test/baseResults/constFold.frag.out @@ -546,120 +546,6 @@ ERROR: node is still EOpNull! 0:69 0.028000 0:69 0.500000 0:69 1.000000 -0:78 Function Definition: foo( (global void) -0:78 Function Parameters: -0:? Sequence -0:81 move second child to first child (temp float) -0:81 direct index (temp float) -0:81 'a' (temp 3-element array of float) -0:81 Constant: -0:81 0 (const int) -0:81 Constant: -0:81 7.000000 -0:82 Constant: -0:82 2 (const int) -0:83 Constant: -0:83 2147483647 (const int) -0:84 Constant: -0:84 inf -0:88 Constant: -0:88 2 (const uint) -0:88 3 (const uint) -0:89 Constant: -0:89 0 (const uint) -0:90 Constant: -0:90 6 (const uint) -0:90 7 (const uint) -0:103 Function Definition: foo2( (global void) -0:103 Function Parameters: -0:105 Sequence -0:105 direct index (temp float) -0:105 'a1' (global 1-element array of float) -0:105 Constant: -0:105 0 (const int) -0:106 direct index (temp float) -0:106 'a2' (global 2-element array of float) -0:106 Constant: -0:106 0 (const int) -0:107 direct index (temp float) -0:107 'a3' (global 4-element array of float) -0:107 Constant: -0:107 0 (const int) -0:108 direct index (temp float) -0:108 'a4' (global 2-element array of float) -0:108 Constant: -0:108 0 (const int) -0:109 Constant: -0:109 1.000000 -0:110 Constant: -0:110 5.000000 -0:111 Constant: -0:111 2.000000 -0:112 Constant: -0:112 3.000000 -0:113 Constant: -0:113 0.000000 -0:114 Constant: -0:114 0.000000 -0:116 move second child to first child (temp int) -0:116 'p' (temp int) -0:116 Constant: -0:116 2147483647 (const int) -0:117 move second child to first child (temp int) -0:117 'p' (temp int) -0:117 Constant: -0:117 -2147483648 (const int) -0:118 move second child to first child (temp int) -0:118 'p' (temp int) -0:118 Constant: -0:118 -2147483647 (const int) -0:119 Sequence -0:119 move second child to first child (temp float) -0:119 'f' (temp float) -0:119 Constant: -0:119 1.444000 -0:120 move second child to first child (temp float) -0:120 'f' (temp float) -0:120 direct index (temp float) -0:120 Construct vec4 (temp 4-component vector of float) -0:120 Test condition and select (temp float) -0:120 Condition -0:120 Compare Less Than (temp bool) -0:120 direct index (temp float) -0:120 'inv' (smooth in 4-component vector of float) -0:120 Constant: -0:120 0 (const int) -0:120 Constant: -0:120 2.400000 -0:120 true case -0:120 Constant: -0:120 -1.000000 -0:120 false case -0:120 Constant: -0:120 1.000000 -0:120 Constant: -0:120 3 (const int) -0:126 Function Definition: foo3( (global void) -0:126 Function Parameters: -0:128 Sequence -0:128 Sequence -0:128 move second child to first child (temp 3X2 matrix of float) -0:128 'r32' (temp 3X2 matrix of float) -0:128 Constant: -0:128 43.000000 -0:128 64.000000 -0:128 51.000000 -0:128 76.000000 -0:128 59.000000 -0:128 88.000000 -0:138 Function Definition: foo4( (global void) -0:138 Function Parameters: -0:140 Sequence -0:140 Sequence -0:140 move second child to first child (temp int) -0:140 'a' (temp int) -0:140 Constant: -0:140 9 (const int) 0:? Linker Objects 0:? 'a' (const int) 0:? 1 (const int) diff --git a/Test/baseResults/cppComplexExpr.vert.out b/Test/baseResults/cppComplexExpr.vert.out index aa73a069..352dcac1 100644 --- a/Test/baseResults/cppComplexExpr.vert.out +++ b/Test/baseResults/cppComplexExpr.vert.out @@ -152,41 +152,6 @@ ERROR: node is still EOpNull! 0:39 'gl_Position' (gl_Position highp 4-component vector of float Position) 0:39 Construct vec4 (temp highp 4-component vector of float) 0:39 'sum' (global highp float) -0:44 Function Definition: foo( (global highp float) -0:44 Function Parameters: -0:46 Sequence -0:46 Branch: Return with expression -0:46 add (temp highp float) -0:46 add (temp highp float) -0:46 direct index (temp highp float) -0:46 'gl_Position' (gl_Position highp 4-component vector of float Position) -0:46 Constant: -0:46 0 (const int) -0:46 Constant: -0:46 3.000000 -0:46 add (temp highp float) -0:46 direct index (temp highp float) -0:46 'gl_Position' (gl_Position highp 4-component vector of float Position) -0:46 Constant: -0:46 0 (const int) -0:46 Constant: -0:46 3.000000 -0:47 Branch: Return with expression -0:47 add (temp highp float) -0:47 add (temp highp float) -0:47 direct index (temp highp float) -0:47 'gl_Position' (gl_Position highp 4-component vector of float Position) -0:47 Constant: -0:47 1 (const int) -0:47 Constant: -0:47 3.000000 -0:47 add (temp highp float) -0:47 direct index (temp highp float) -0:47 'gl_Position' (gl_Position highp 4-component vector of float Position) -0:47 Constant: -0:47 1 (const int) -0:47 Constant: -0:47 3.000000 0:97 Sequence 0:97 move second child to first child (temp highp float) 0:97 'c' (global highp float) diff --git a/Test/baseResults/cppNest.vert.out b/Test/baseResults/cppNest.vert.out index df905579..2077ec33 100644 --- a/Test/baseResults/cppNest.vert.out +++ b/Test/baseResults/cppNest.vert.out @@ -135,17 +135,6 @@ ERROR: node is still EOpNull! 0:133 'selected3' (global int) 0:133 Constant: 0:133 3 (const int) -0:175 Function Definition: foo985( (global void) -0:175 Function Parameters: -0:175 Sequence -0:175 add (temp int) -0:175 Constant: -0:175 2 (const int) -0:175 Comma (temp int) -0:175 Constant: -0:175 3 (const int) -0:175 Constant: -0:175 4 (const int) 0:? Linker Objects 0:? 'sum' (global float) 0:? 'selected4' (global int) diff --git a/Test/baseResults/cppSimple.vert.out b/Test/baseResults/cppSimple.vert.out index 366770d1..bf4b42ae 100644 --- a/Test/baseResults/cppSimple.vert.out +++ b/Test/baseResults/cppSimple.vert.out @@ -282,19 +282,6 @@ ERROR: node is still EOpNull! 0:202 'f' (global double) 0:202 Constant: 0:202 0.000800 -12:20031 Function Definition: foo234( (global void) -12:20031 Function Parameters: -12:20033 Sequence -12:20033 move second child to first child (temp 4-component vector of float) -12:20033 gl_Position: direct index for structure (gl_Position 4-component vector of float Position) -12:20033 'anon@0' (out block{gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out 1-element array of float ClipDistance gl_ClipDistance, gl_ClipVertex 4-component vector of float ClipVertex gl_ClipVertex, out 4-component vector of float FrontColor gl_FrontColor, out 4-component vector of float BackColor gl_BackColor, out 4-component vector of float FrontSecondaryColor gl_FrontSecondaryColor, out 4-component vector of float BackSecondaryColor gl_BackSecondaryColor, out 1-element array of 4-component vector of float TexCoord gl_TexCoord, out float FogFragCoord gl_FogFragCoord}) -12:20033 Constant: -12:20033 0 (const uint) -12:20033 Constant: -12:20033 6.000000 -12:20033 6.000000 -12:20033 6.000000 -12:20033 6.000000 12:9011 Sequence 12:9011 move second child to first child (temp int) 12:9011 'R1' (global int) diff --git a/Test/baseResults/dce.frag.out b/Test/baseResults/dce.frag.out index 2846abd5..6707ae72 100644 --- a/Test/baseResults/dce.frag.out +++ b/Test/baseResults/dce.frag.out @@ -147,128 +147,6 @@ Shader version: 400 0:5 'c' (global int) 0:5 Constant: 0:5 0 (const int) -0:7 Function Definition: bar( (global void) -0:7 Function Parameters: -0:9 Sequence -0:9 Test condition and select (temp void) -0:9 Condition -0:9 Constant: -0:9 false (const bool) -0:9 true case -0:10 Pre-Increment (temp int) -0:10 'c' (global int) -0:9 false case -0:12 Pre-Increment (temp int) -0:12 'c' (global int) -0:14 Test condition and select (temp int) -0:14 Condition -0:14 Constant: -0:14 false (const bool) -0:14 true case -0:14 Pre-Increment (temp int) -0:14 'c' (global int) -0:14 false case -0:14 Pre-Increment (temp int) -0:14 'c' (global int) -0:16 switch -0:16 condition -0:16 'c' (global int) -0:16 body -0:16 Sequence -0:17 case: with expression -0:17 Constant: -0:17 1 (const int) -0:? Sequence -0:18 Pre-Increment (temp int) -0:18 'c' (global int) -0:19 Branch: Break -0:20 Pre-Increment (temp int) -0:20 'c' (global int) -0:21 case: with expression -0:21 Constant: -0:21 2 (const int) -0:? Sequence -0:22 Branch: Break -0:23 Pre-Increment (temp int) -0:23 'c' (global int) -0:24 default: -0:? Sequence -0:25 Branch: Break -0:28 Sequence -0:28 Sequence -0:28 move second child to first child (temp int) -0:28 'i' (temp int) -0:28 Constant: -0:28 0 (const int) -0:28 Loop with condition tested first -0:28 Loop Condition -0:28 Compare Less Than (temp bool) -0:28 'i' (temp int) -0:28 Constant: -0:28 0 (const int) -0:28 Loop Body -0:29 Pre-Increment (temp int) -0:29 'c' (global int) -0:28 Loop Terminal Expression -0:28 Pre-Increment (temp int) -0:28 'i' (temp int) -0:31 Sequence -0:31 Sequence -0:31 move second child to first child (temp int) -0:31 'i' (temp int) -0:31 Constant: -0:31 0 (const int) -0:31 Loop with condition tested first -0:31 Loop Condition -0:31 Compare Less Than (temp bool) -0:31 'i' (temp int) -0:31 Constant: -0:31 10 (const int) -0:31 Loop Body -0:32 Sequence -0:32 Test condition and select (temp void) -0:32 Condition -0:32 Compare Less Than (temp bool) -0:32 'c' (global int) -0:32 Constant: -0:32 3 (const int) -0:32 true case -0:33 Sequence -0:33 Branch: Break -0:34 Pre-Increment (temp int) -0:34 'c' (global int) -0:32 false case -0:36 Sequence -0:36 Branch: Continue -0:37 Pre-Increment (temp int) -0:37 'c' (global int) -0:31 Loop Terminal Expression -0:31 Pre-Increment (temp int) -0:31 'i' (temp int) -0:41 Branch: Return -0:43 Pre-Increment (temp int) -0:43 'c' (global int) -0:46 Function Definition: foo( (global int) -0:46 Function Parameters: -0:48 Sequence -0:48 Test condition and select (temp void) -0:48 Condition -0:48 Compare Greater Than (temp bool) -0:48 'c' (global int) -0:48 Constant: -0:48 4 (const int) -0:48 true case -0:49 Sequence -0:49 Branch: Return with expression -0:49 Constant: -0:49 4 (const int) -0:50 Pre-Increment (temp int) -0:50 'c' (global int) -0:53 Branch: Return with expression -0:53 Constant: -0:53 5 (const int) -0:55 Pre-Increment (temp int) -0:55 'c' (global int) 0:? Linker Objects 0:? 'flag' (const bool) 0:? false (const bool) diff --git a/Test/baseResults/functionSemantics.frag.out b/Test/baseResults/functionSemantics.frag.out index 1ea7dbd6..e0fd0767 100644 --- a/Test/baseResults/functionSemantics.frag.out +++ b/Test/baseResults/functionSemantics.frag.out @@ -397,19 +397,6 @@ ERROR: node is still EOpNull! 0:62 Construct vec4 (temp 4-component vector of float) 0:62 Convert int to float (temp float) 0:62 'color' (temp int) -0:66 Function Definition: aggCall( (global void) -0:66 Function Parameters: -0:? Sequence -0:69 Function Call: m(vf2; (global 3-component vector of float) -0:69 Convert int to float (temp 2-component vector of float) -0:69 Construct ivec2 (temp 2-component vector of int) -0:69 Convert float to int (temp int) -0:69 'F' (temp float) -0:72 Function Definition: badConv( (global 4-component vector of float) -0:72 Function Parameters: -0:74 Sequence -0:74 Branch: Return with expression -0:74 'u' (uniform float) 0:? Linker Objects 0:? 'u' (uniform float) diff --git a/Test/baseResults/hlsl.deadFunctionMissingBody.vert.out b/Test/baseResults/hlsl.deadFunctionMissingBody.vert.out new file mode 100644 index 00000000..71842afa --- /dev/null +++ b/Test/baseResults/hlsl.deadFunctionMissingBody.vert.out @@ -0,0 +1,25 @@ +hlsl.deadFunctionMissingBody.vert +// Module Version 10000 +// Generated by (magic number): 80001 +// Id's are bound by 13 + + Capability Shader + 1: ExtInstImport "GLSL.std.450" + MemoryModel Logical GLSL450 + EntryPoint Vertex 4 "main" 9 + Name 4 "main" + Name 9 "@entryPointOutput" + Decorate 9(@entryPointOutput) Location 0 + 2: TypeVoid + 3: TypeFunction 2 + 6: TypeFloat 32 + 7: TypeVector 6(float) 4 + 8: TypePointer Output 7(fvec4) +9(@entryPointOutput): 8(ptr) Variable Output + 10: 6(float) Constant 0 + 11: 7(fvec4) ConstantComposite 10 10 10 10 + 4(main): 2 Function None 3 + 5: Label + Store 9(@entryPointOutput) 11 + Return + FunctionEnd diff --git a/Test/baseResults/lineContinuation.vert.out b/Test/baseResults/lineContinuation.vert.out index 78e5c072..d91ffa31 100644 --- a/Test/baseResults/lineContinuation.vert.out +++ b/Test/baseResults/lineContinuation.vert.out @@ -176,16 +176,6 @@ ERROR: node is still EOpNull! 0:20 'gl_Position' (gl_Position highp 4-component vector of float Position) 0:20 Construct vec4 (temp highp 4-component vector of float) 0:20 'foo' (global highp float) -0:22 Function Definition: foo2(vf4; (global highp 4-component vector of float) -0:22 Function Parameters: -0:22 'a' (in highp 4-component vector of float) -0:24 Sequence -0:24 Sequence -0:24 move second child to first child (temp highp 4-component vector of float) -0:24 'b' (temp highp 4-component vector of float) -0:24 'a' (in highp 4-component vector of float) -0:25 Branch: Return with expression -0:25 'b' (temp highp 4-component vector of float) 0:47 Sequence 0:47 move second child to first child (temp highp int) 0:47 'q1' (global highp int) @@ -256,25 +246,6 @@ ERROR: node is still EOpNull! 0:123 'bar107' (global highp int) 0:128 Constant: 0:128 5 (const int) -0:131 Function Definition: foo203209409( (global void) -0:131 Function Parameters: -0:134 Sequence -0:134 add second child into first child (temp highp int) -0:133 'bar107' (global highp int) -0:134 Constant: -0:134 37 (const int) -0:135 multiply second child into first child (temp highp int) -0:135 'bar107' (global highp int) -0:136 Constant: -0:136 38 (const int) -0:137 divide second child into first child (temp highp int) -0:137 'bar107' (global highp int) -0:138 Constant: -0:138 39 (const int) -0:139 add (temp highp int) -0:139 'bar107' (global highp int) -0:140 Constant: -0:140 41 (const int) 0:? Linker Objects 0:? 'foo' (global highp float) 0:? 'goodDecl' (global highp int) diff --git a/Test/baseResults/lineContinuation100.vert.out b/Test/baseResults/lineContinuation100.vert.out index 003637d0..1fb309b3 100644 --- a/Test/baseResults/lineContinuation100.vert.out +++ b/Test/baseResults/lineContinuation100.vert.out @@ -90,16 +90,6 @@ ERROR: node is still EOpNull! 0:20 'gl_Position' (gl_Position highp 4-component vector of float Position) 0:20 Construct vec4 (temp highp 4-component vector of float) 0:20 'foo' (global highp float) -0:22 Function Definition: foo2(vf4; (global highp 4-component vector of float) -0:22 Function Parameters: -0:22 'a' (in highp 4-component vector of float) -0:24 Sequence -0:24 Sequence -0:24 move second child to first child (temp highp 4-component vector of float) -0:24 'b' (temp highp 4-component vector of float) -0:24 'a' (in highp 4-component vector of float) -0:25 Branch: Return with expression -0:25 'b' (temp highp 4-component vector of float) 0:45 Sequence 0:45 move second child to first child (temp highp int) 0:45 'q1' (global highp int) diff --git a/Test/baseResults/mains1.frag.out b/Test/baseResults/mains1.frag.out index 426a1a8d..95e98e40 100644 --- a/Test/baseResults/mains1.frag.out +++ b/Test/baseResults/mains1.frag.out @@ -58,10 +58,6 @@ max_vertices = -1 input primitive = none output primitive = points ERROR: node is still EOpNull! -0:3 Function Definition: foo( (global void) -0:3 Function Parameters: -0:3 Function Definition: bar( (global void) -0:3 Function Parameters: 0:? Linker Objects Shader version: 110 0:? Sequence diff --git a/Test/baseResults/missingBodies.vert.out b/Test/baseResults/missingBodies.vert.out index 7cf4734d..6d77e093 100755 --- a/Test/baseResults/missingBodies.vert.out +++ b/Test/baseResults/missingBodies.vert.out @@ -69,25 +69,6 @@ Shader version: 450 0:4 Function Parameters: 0:4 Sequence 0:4 Function Call: bar( (global void) -0:8 Function Definition: C(i1;i1; (global void) -0:8 Function Parameters: -0:8 '' (in int) -0:8 '' (in int) -0:10 Function Definition: A( (global void) -0:10 Function Parameters: -0:10 Sequence -0:10 Function Call: B( (global void) -0:10 Function Call: C(i1; (global void) -0:10 Constant: -0:10 1 (const int) -0:10 Function Call: C(b1; (global void) -0:10 Constant: -0:10 true (const bool) -0:10 Function Call: C(i1;i1; (global void) -0:10 Constant: -0:10 1 (const int) -0:10 Constant: -0:10 2 (const int) 0:12 Function Definition: main( (global void) 0:12 Function Parameters: 0:14 Sequence diff --git a/Test/baseResults/noMain.vert.out b/Test/baseResults/noMain.vert.out index 80a32255..60ac3a3a 100644 --- a/Test/baseResults/noMain.vert.out +++ b/Test/baseResults/noMain.vert.out @@ -30,8 +30,6 @@ Linked fragment stage: Shader version: 300 0:? Sequence -0:3 Function Definition: foo( (global void) -0:3 Function Parameters: 0:? Linker Objects 0:? 'gl_VertexID' (gl_VertexId highp int VertexId) 0:? 'gl_InstanceID' (gl_InstanceId highp int InstanceId) diff --git a/Test/baseResults/precise.tesc.out b/Test/baseResults/precise.tesc.out index 962a3c98..17c7d53f 100644 --- a/Test/baseResults/precise.tesc.out +++ b/Test/baseResults/precise.tesc.out @@ -392,376 +392,6 @@ Requested GL_EXT_shader_io_blocks Requested GL_EXT_tessellation_shader vertices = -1 0:? Sequence -0:5 Function Definition: minimal( (global float) -0:5 Function Parameters: -0:6 Sequence -0:6 Sequence -0:6 move second child to first child (temp float) -0:6 'result' (noContraction temp float) -0:6 Constant: -0:6 5.000000 -0:7 Sequence -0:7 move second child to first child (temp float) -0:7 'a' (noContraction temp float) -0:7 Constant: -0:7 10.000000 -0:8 Sequence -0:8 move second child to first child (temp float) -0:8 'b' (noContraction temp float) -0:8 Constant: -0:8 20.000000 -0:9 Sequence -0:9 move second child to first child (temp float) -0:9 'c' (noContraction temp float) -0:9 Constant: -0:9 30.000000 -0:10 Sequence -0:10 move second child to first child (temp float) -0:10 'd' (noContraction temp float) -0:10 Constant: -0:10 40.000000 -0:11 move second child to first child (temp float) -0:11 'result' (noContraction temp float) -0:11 add (noContraction temp float) -0:11 component-wise multiply (noContraction temp float) -0:11 'a' (noContraction temp float) -0:11 'b' (noContraction temp float) -0:11 component-wise multiply (noContraction temp float) -0:11 'c' (noContraction temp float) -0:11 'd' (noContraction temp float) -0:12 Branch: Return with expression -0:12 'result' (noContraction temp float) -0:15 Function Definition: continuous_assignment( (global void) -0:15 Function Parameters: -0:16 Sequence -0:16 Sequence -0:16 move second child to first child (temp float) -0:16 'result' (noContraction temp float) -0:16 Constant: -0:16 5.000000 -0:17 Sequence -0:17 move second child to first child (temp float) -0:17 'a' (noContraction temp float) -0:17 Constant: -0:17 10.000000 -0:18 Sequence -0:18 move second child to first child (temp float) -0:18 'b' (noContraction temp float) -0:18 Constant: -0:18 20.000000 -0:19 move second child to first child (temp float) -0:19 'result' (noContraction temp float) -0:19 move second child to first child (temp float) -0:19 'a' (noContraction temp float) -0:19 add (noContraction temp float) -0:19 'b' (noContraction temp float) -0:19 Constant: -0:19 4.000000 -0:22 Function Definition: convert( (global void) -0:22 Function Parameters: -0:? Sequence -0:24 Sequence -0:24 move second child to first child (temp float) -0:24 'a' (noContraction temp float) -0:24 Constant: -0:24 10.000000 -0:25 Sequence -0:25 move second child to first child (temp float) -0:25 'b' (noContraction temp float) -0:25 Constant: -0:25 20.000000 -0:26 move second child to first child (temp float) -0:26 'b' (noContraction temp float) -0:26 add (noContraction temp float) -0:26 'a' (noContraction temp float) -0:26 'b' (noContraction temp float) -0:27 move second child to first child (temp double) -0:27 'result' (noContraction temp double) -0:27 Convert float to double (temp double) -0:27 'b' (noContraction temp float) -0:30 Function Definition: loop_for( (global float) -0:30 Function Parameters: -0:31 Sequence -0:31 Sequence -0:31 move second child to first child (temp float) -0:31 'r1' (noContraction temp float) -0:31 Constant: -0:31 5.000000 -0:32 Sequence -0:32 move second child to first child (temp float) -0:32 'r2' (noContraction temp float) -0:32 Constant: -0:32 10.000000 -0:33 Sequence -0:33 move second child to first child (temp int) -0:33 'a' (temp int) -0:33 Constant: -0:33 10 (const int) -0:34 Sequence -0:34 move second child to first child (temp int) -0:34 'b' (noContraction temp int) -0:34 Constant: -0:34 20 (const int) -0:35 Sequence -0:35 move second child to first child (temp int) -0:35 'c' (noContraction temp int) -0:35 Constant: -0:35 30 (const int) -0:36 Sequence -0:36 Sequence -0:36 move second child to first child (temp int) -0:36 'i' (noContraction temp int) -0:36 Constant: -0:36 0 (const int) -0:36 Loop with condition tested first -0:36 Loop Condition -0:36 Compare Less Than (temp bool) -0:36 'i' (temp int) -0:36 'a' (temp int) -0:36 Loop Body -0:37 Sequence -0:37 add second child into first child (noContraction temp float) -0:37 'r1' (noContraction temp float) -0:37 add (noContraction temp float) -0:37 add (noContraction temp float) -0:37 Constant: -0:37 3.120000 -0:37 Convert int to float (temp float) -0:37 'b' (noContraction temp int) -0:37 Convert int to float (temp float) -0:37 'i' (noContraction temp int) -0:38 add second child into first child (noContraction temp int) -0:38 'c' (noContraction temp int) -0:38 Constant: -0:38 1 (const int) -0:36 Loop Terminal Expression -0:36 Post-Increment (noContraction temp int) -0:36 'i' (noContraction temp int) -0:40 add second child into first child (temp int) -0:40 'a' (temp int) -0:40 Constant: -0:40 1 (const int) -0:41 move second child to first child (temp float) -0:41 'r2' (noContraction temp float) -0:41 Convert int to float (temp float) -0:41 'c' (noContraction temp int) -0:42 Branch: Return with expression -0:42 Construct float (temp float) -0:42 add (temp float) -0:42 'r1' (noContraction temp float) -0:42 'r2' (noContraction temp float) -0:45 Function Definition: loop_array( (global void) -0:45 Function Parameters: -0:? Sequence -0:48 Sequence -0:48 move second child to first child (temp int) -0:48 'x' (noContraction temp int) -0:48 Constant: -0:48 22 (const int) -0:49 Sequence -0:49 move second child to first child (temp int) -0:49 'y' (noContraction temp int) -0:49 Constant: -0:49 33 (const int) -0:52 add second child into first child (noContraction temp float) -0:52 'result' (noContraction temp float) -0:52 add (noContraction temp float) -0:52 Convert int to float (temp float) -0:52 'x' (noContraction temp int) -0:52 Convert int to float (temp float) -0:52 'y' (noContraction temp int) -0:54 Sequence -0:54 Sequence -0:54 move second child to first child (temp int) -0:54 'i' (temp int) -0:54 Constant: -0:54 0 (const int) -0:54 Loop with condition tested first -0:54 Loop Condition -0:54 Compare Less Than (temp bool) -0:54 'i' (temp int) -0:54 Constant: -0:54 3 (const int) -0:54 Loop Body -0:56 Sequence -0:56 add second child into first child (noContraction temp float) -0:56 'result' (noContraction temp float) -0:56 add (noContraction temp float) -0:56 indirect index (noContraction temp float) -0:56 'a0' (temp 3-element array of float) -0:56 'i' (temp int) -0:56 Constant: -0:56 2.000000 -0:58 move second child to first child (temp float) -0:58 indirect index (noContraction temp float) -0:58 'a0' (noContraction temp 3-element array of float) -0:58 'i' (temp int) -0:58 subtract (noContraction temp float) -0:58 Constant: -0:58 3.000000 -0:58 Post-Increment (noContraction temp float) -0:58 'result' (noContraction temp float) -0:54 Loop Terminal Expression -0:54 Pre-Increment (temp int) -0:54 'i' (temp int) -0:62 Function Definition: loop_while( (global void) -0:62 Function Parameters: -0:63 Sequence -0:63 Sequence -0:63 move second child to first child (temp float) -0:63 'result' (noContraction temp float) -0:63 Constant: -0:63 5.000000 -0:64 Sequence -0:64 move second child to first child (temp int) -0:64 'a' (noContraction temp int) -0:64 Constant: -0:64 10 (const int) -0:65 Sequence -0:65 move second child to first child (temp int) -0:65 'b' (noContraction temp int) -0:65 Constant: -0:65 20 (const int) -0:66 Loop with condition tested first -0:66 Loop Condition -0:66 Compare Less Than (temp bool) -0:66 'result' (noContraction temp float) -0:66 Constant: -0:66 10.000000 -0:66 Loop Body -0:67 Sequence -0:67 add second child into first child (noContraction temp float) -0:67 'result' (noContraction temp float) -0:67 add (noContraction temp float) -0:67 Constant: -0:67 3.120000 -0:67 Convert int to float (temp float) -0:67 'b' (noContraction temp int) -0:69 move second child to first child (temp float) -0:69 'result' (noContraction temp float) -0:69 Convert int to float (temp float) -0:69 add (temp int) -0:69 add (temp int) -0:69 'a' (noContraction temp int) -0:69 'b' (noContraction temp int) -0:69 Constant: -0:69 5 (const int) -0:70 move second child to first child (temp float) -0:70 'result' (noContraction temp float) -0:70 Constant: -0:70 11.100000 -0:73 Function Definition: fma_not_decorated( (global float) -0:73 Function Parameters: -0:? Sequence -0:75 Sequence -0:75 move second child to first child (temp float) -0:75 'a' (noContraction temp float) -0:75 Constant: -0:75 1.000000 -0:76 Sequence -0:76 move second child to first child (temp float) -0:76 'b' (noContraction temp float) -0:76 Constant: -0:76 2.000000 -0:77 Sequence -0:77 move second child to first child (temp float) -0:77 'c' (noContraction temp float) -0:77 Constant: -0:77 3.000000 -0:78 move second child to first child (temp float) -0:78 'b' (noContraction temp float) -0:78 add (noContraction temp float) -0:78 'b' (noContraction temp float) -0:78 'c' (noContraction temp float) -0:79 move second child to first child (temp float) -0:79 'result' (noContraction temp float) -0:79 fma (global float) -0:79 'a' (noContraction temp float) -0:79 'b' (noContraction temp float) -0:79 'c' (noContraction temp float) -0:80 Branch: Return with expression -0:80 'result' (noContraction temp float) -0:83 Function Definition: precise_return_exp_func( (noContraction temp float) -0:83 Function Parameters: -0:84 Sequence -0:84 Sequence -0:84 move second child to first child (temp float) -0:84 'a' (noContraction temp float) -0:84 Constant: -0:84 1.000000 -0:85 Sequence -0:85 move second child to first child (temp float) -0:85 'b' (noContraction temp float) -0:85 Constant: -0:85 2.000000 -0:86 Branch: Return with expression -0:86 add (noContraction temp float) -0:86 'a' (noContraction temp float) -0:86 'b' (noContraction temp float) -0:89 Function Definition: precise_return_val_func( (noContraction temp float) -0:89 Function Parameters: -0:90 Sequence -0:90 Sequence -0:90 move second child to first child (temp float) -0:90 'a' (noContraction temp float) -0:90 Constant: -0:90 1.000000 -0:91 Sequence -0:91 move second child to first child (temp float) -0:91 'b' (noContraction temp float) -0:91 Constant: -0:91 2.000000 -0:92 Sequence -0:92 move second child to first child (temp float) -0:92 'result' (noContraction temp float) -0:92 add (noContraction temp float) -0:92 'a' (noContraction temp float) -0:92 'b' (noContraction temp float) -0:93 Branch: Return with expression -0:93 'result' (noContraction temp float) -0:96 Function Definition: precise_func_parameter(f1;f1; (global float) -0:96 Function Parameters: -0:96 'b' (in float) -0:96 'c' (noContraction out float) -0:97 Sequence -0:97 Sequence -0:97 move second child to first child (temp float) -0:97 'a' (noContraction temp float) -0:97 Constant: -0:97 0.500000 -0:98 move second child to first child (temp float) -0:98 'c' (noContraction out float) -0:98 add (noContraction temp float) -0:98 'a' (noContraction temp float) -0:98 'b' (noContraction in float) -0:99 Branch: Return with expression -0:99 subtract (temp float) -0:99 'a' (temp float) -0:99 'b' (in float) -0:102 Function Definition: matrix(mf23;mf32; (global 3X3 matrix of float) -0:102 Function Parameters: -0:102 'a' (in 2X3 matrix of float) -0:102 'b' (in 3X2 matrix of float) -0:103 Sequence -0:103 Sequence -0:103 move second child to first child (temp 2X3 matrix of float) -0:103 'c' (noContraction temp 2X3 matrix of float) -0:103 Constant: -0:103 1.000000 -0:103 2.000000 -0:103 3.000000 -0:103 4.000000 -0:103 5.000000 -0:103 6.000000 -0:105 move second child to first child (temp 3X3 matrix of float) -0:105 'result' (noContraction temp 3X3 matrix of float) -0:105 matrix-multiply (noContraction temp 3X3 matrix of float) -0:105 add (noContraction temp 2X3 matrix of float) -0:105 'a' (noContraction in 2X3 matrix of float) -0:105 'c' (noContraction temp 2X3 matrix of float) -0:105 'b' (noContraction in 3X2 matrix of float) -0:106 Branch: Return with expression -0:106 'result' (noContraction temp 3X3 matrix of float) 0:109 Function Definition: main( (global void) 0:109 Function Parameters: 0:? Linker Objects diff --git a/Test/baseResults/precise_struct_block.vert.out b/Test/baseResults/precise_struct_block.vert.out index 9d726d65..e40fd0cd 100644 --- a/Test/baseResults/precise_struct_block.vert.out +++ b/Test/baseResults/precise_struct_block.vert.out @@ -526,515 +526,6 @@ Linked vertex stage: Shader version: 450 0:? Sequence -0:11 Function Definition: struct_member( (global float) -0:11 Function Parameters: -0:12 Sequence -0:12 Sequence -0:12 move second child to first child (temp float) -0:12 'a' (noContraction temp float) -0:12 Constant: -0:12 1.000000 -0:13 Sequence -0:13 move second child to first child (temp float) -0:13 'b' (temp float) -0:13 Constant: -0:13 2.000000 -0:14 Sequence -0:14 move second child to first child (temp float) -0:14 'c' (temp float) -0:14 Constant: -0:14 3.000000 -0:15 Sequence -0:15 move second child to first child (temp float) -0:15 'd' (temp float) -0:15 Constant: -0:15 4.000000 -0:21 move second child to first child (temp float) -0:21 f1: direct index for structure (noContraction global float) -0:21 'S2' (temp structure{global float f1, global float f2}) -0:21 Constant: -0:21 0 (const int) -0:21 add (noContraction temp float) -0:21 'a' (noContraction temp float) -0:21 Constant: -0:21 0.200000 -0:22 move second child to first child (temp float) -0:22 f2: direct index for structure (global float) -0:22 'S2' (temp structure{global float f1, global float f2}) -0:22 Constant: -0:22 1 (const int) -0:22 add (temp float) -0:22 'b' (temp float) -0:22 Constant: -0:22 0.200000 -0:23 move second child to first child (temp float) -0:23 f1: direct index for structure (global float) -0:23 'S3' (temp structure{global float f1, global float f2}) -0:23 Constant: -0:23 0 (const int) -0:23 add (temp float) -0:23 'a' (temp float) -0:23 'b' (temp float) -0:24 move second child to first child (temp structure{global float f1, global float f2}) -0:24 'S' (temp structure{global float f1, global float f2}) -0:24 'S2' (temp structure{global float f1, global float f2}) -0:25 move second child to first child (temp float) -0:25 'result' (noContraction temp float) -0:25 add (noContraction temp float) -0:25 f1: direct index for structure (noContraction global float) -0:25 'S' (temp structure{global float f1, global float f2}) -0:25 Constant: -0:25 0 (const int) -0:25 Constant: -0:25 0.100000 -0:27 Branch: Return with expression -0:27 'result' (noContraction temp float) -0:30 Function Definition: complex_array_struct( (global float) -0:30 Function Parameters: -0:? Sequence -0:43 Sequence -0:43 Sequence -0:43 move second child to first child (temp int) -0:43 'i' (noContraction temp int) -0:43 Constant: -0:43 0 (const int) -0:43 Loop with condition tested first -0:43 Loop Condition -0:43 Compare Less Than (temp bool) -0:43 'i' (temp int) -0:43 Constant: -0:43 10 (const int) -0:43 Loop Body -0:44 Sequence -0:44 move second child to first child (temp float) -0:44 f: direct index for structure (temp float) -0:44 indirect index (temp structure{temp float f, temp structure{temp 5-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1a, temp 6-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1b, temp 7-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1c} t2, temp 4-component vector of float v, temp int p}) -0:44 't3' (temp 10-element array of structure{temp float f, temp structure{temp 5-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1a, temp 6-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1b, temp 7-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1c} t2, temp 4-component vector of float v, temp int p}) -0:44 'i' (temp int) -0:44 Constant: -0:44 0 (const int) -0:44 divide (temp float) -0:44 Convert int to float (temp float) -0:44 'i' (temp int) -0:44 Constant: -0:44 3.000000 -0:45 move second child to first child (temp 4-component vector of float) -0:45 v: direct index for structure (noContraction temp 4-component vector of float) -0:45 indirect index (temp structure{temp float f, temp structure{temp 5-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1a, temp 6-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1b, temp 7-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1c} t2, temp 4-component vector of float v, temp int p}) -0:45 't3' (temp 10-element array of structure{temp float f, temp structure{temp 5-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1a, temp 6-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1b, temp 7-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1c} t2, temp 4-component vector of float v, temp int p}) -0:45 'i' (temp int) -0:45 Constant: -0:45 2 (const int) -0:45 Construct vec4 (temp 4-component vector of float) -0:45 component-wise multiply (noContraction temp float) -0:45 Convert int to float (temp float) -0:45 'i' (noContraction temp int) -0:45 Constant: -0:45 1.500000 -0:46 move second child to first child (temp int) -0:46 p: direct index for structure (temp int) -0:46 indirect index (temp structure{temp float f, temp structure{temp 5-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1a, temp 6-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1b, temp 7-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1c} t2, temp 4-component vector of float v, temp int p}) -0:46 't3' (temp 10-element array of structure{temp float f, temp structure{temp 5-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1a, temp 6-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1b, temp 7-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1c} t2, temp 4-component vector of float v, temp int p}) -0:46 'i' (temp int) -0:46 Constant: -0:46 3 (const int) -0:46 add (temp int) -0:46 'i' (temp int) -0:46 Constant: -0:46 1 (const int) -0:47 Sequence -0:47 Sequence -0:47 move second child to first child (temp int) -0:47 'j' (temp int) -0:47 Constant: -0:47 0 (const int) -0:47 Loop with condition tested first -0:47 Loop Condition -0:47 Compare Less Than (temp bool) -0:47 'j' (temp int) -0:47 Constant: -0:47 5 (const int) -0:47 Loop Body -0:48 Sequence -0:48 Sequence -0:48 Sequence -0:48 move second child to first child (temp int) -0:48 'k' (temp int) -0:48 Constant: -0:48 0 (const int) -0:48 Loop with condition tested first -0:48 Loop Condition -0:48 Compare Less Than (temp bool) -0:48 'k' (temp int) -0:48 Constant: -0:48 3 (const int) -0:48 Loop Body -0:49 Sequence -0:49 move second child to first child (temp float) -0:49 indirect index (temp float) -0:49 t1_array: direct index for structure (temp 3-element array of float) -0:49 indirect index (temp structure{temp 3-element array of float t1_array, temp float t1_scalar}) -0:49 t1a: direct index for structure (temp 5-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar}) -0:49 t2: direct index for structure (temp structure{temp 5-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1a, temp 6-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1b, temp 7-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1c}) -0:49 indirect index (temp structure{temp float f, temp structure{temp 5-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1a, temp 6-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1b, temp 7-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1c} t2, temp 4-component vector of float v, temp int p}) -0:49 't3' (temp 10-element array of structure{temp float f, temp structure{temp 5-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1a, temp 6-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1b, temp 7-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1c} t2, temp 4-component vector of float v, temp int p}) -0:49 'i' (temp int) -0:49 Constant: -0:49 1 (const int) -0:49 Constant: -0:49 0 (const int) -0:49 'j' (temp int) -0:49 Constant: -0:49 0 (const int) -0:49 'k' (temp int) -0:49 Convert int to float (temp float) -0:49 add (temp int) -0:49 component-wise multiply (temp int) -0:49 'i' (temp int) -0:49 'j' (temp int) -0:49 'k' (temp int) -0:48 Loop Terminal Expression -0:48 Post-Increment (temp int) -0:48 'k' (temp int) -0:51 move second child to first child (temp float) -0:51 t1_scalar: direct index for structure (temp float) -0:51 indirect index (temp structure{temp 3-element array of float t1_array, temp float t1_scalar}) -0:51 t1a: direct index for structure (temp 5-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar}) -0:51 t2: direct index for structure (temp structure{temp 5-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1a, temp 6-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1b, temp 7-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1c}) -0:51 indirect index (temp structure{temp float f, temp structure{temp 5-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1a, temp 6-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1b, temp 7-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1c} t2, temp 4-component vector of float v, temp int p}) -0:51 't3' (temp 10-element array of structure{temp float f, temp structure{temp 5-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1a, temp 6-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1b, temp 7-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1c} t2, temp 4-component vector of float v, temp int p}) -0:51 'i' (temp int) -0:51 Constant: -0:51 1 (const int) -0:51 Constant: -0:51 0 (const int) -0:51 'j' (temp int) -0:51 Constant: -0:51 1 (const int) -0:51 divide (temp float) -0:51 component-wise multiply (temp float) -0:51 Convert int to float (temp float) -0:51 'j' (temp int) -0:51 Constant: -0:51 2.000000 -0:51 Convert int to float (temp float) -0:51 'i' (temp int) -0:47 Loop Terminal Expression -0:47 Post-Increment (temp int) -0:47 'j' (temp int) -0:54 Sequence -0:54 Sequence -0:54 move second child to first child (temp int) -0:54 'j' (noContraction temp int) -0:54 Constant: -0:54 0 (const int) -0:54 Loop with condition tested first -0:54 Loop Condition -0:54 Compare Less Than (temp bool) -0:54 'j' (temp int) -0:54 Constant: -0:54 6 (const int) -0:54 Loop Body -0:55 Sequence -0:55 Sequence -0:55 Sequence -0:55 move second child to first child (temp int) -0:55 'k' (temp int) -0:55 Constant: -0:55 0 (const int) -0:55 Loop with condition tested first -0:55 Loop Condition -0:55 Compare Less Than (temp bool) -0:55 'k' (temp int) -0:55 Constant: -0:55 3 (const int) -0:55 Loop Body -0:56 Sequence -0:56 move second child to first child (temp float) -0:56 indirect index (temp float) -0:56 t1_array: direct index for structure (temp 3-element array of float) -0:56 indirect index (temp structure{temp 3-element array of float t1_array, temp float t1_scalar}) -0:56 t1b: direct index for structure (temp 6-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar}) -0:56 t2: direct index for structure (temp structure{temp 5-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1a, temp 6-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1b, temp 7-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1c}) -0:56 indirect index (temp structure{temp float f, temp structure{temp 5-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1a, temp 6-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1b, temp 7-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1c} t2, temp 4-component vector of float v, temp int p}) -0:56 't3' (temp 10-element array of structure{temp float f, temp structure{temp 5-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1a, temp 6-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1b, temp 7-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1c} t2, temp 4-component vector of float v, temp int p}) -0:56 'i' (temp int) -0:56 Constant: -0:56 1 (const int) -0:56 Constant: -0:56 1 (const int) -0:56 'j' (temp int) -0:56 Constant: -0:56 0 (const int) -0:56 'k' (temp int) -0:56 Convert int to float (temp float) -0:56 add (temp int) -0:56 component-wise multiply (temp int) -0:56 'i' (temp int) -0:56 'j' (temp int) -0:56 'k' (temp int) -0:55 Loop Terminal Expression -0:55 Post-Increment (temp int) -0:55 'k' (temp int) -0:58 move second child to first child (temp float) -0:58 t1_scalar: direct index for structure (noContraction temp float) -0:58 indirect index (temp structure{temp 3-element array of float t1_array, temp float t1_scalar}) -0:58 t1b: direct index for structure (temp 6-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar}) -0:58 t2: direct index for structure (temp structure{temp 5-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1a, temp 6-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1b, temp 7-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1c}) -0:58 indirect index (temp structure{temp float f, temp structure{temp 5-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1a, temp 6-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1b, temp 7-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1c} t2, temp 4-component vector of float v, temp int p}) -0:58 't3' (temp 10-element array of structure{temp float f, temp structure{temp 5-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1a, temp 6-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1b, temp 7-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1c} t2, temp 4-component vector of float v, temp int p}) -0:58 'i' (temp int) -0:58 Constant: -0:58 1 (const int) -0:58 Constant: -0:58 1 (const int) -0:58 'j' (temp int) -0:58 Constant: -0:58 1 (const int) -0:58 divide (noContraction temp float) -0:58 component-wise multiply (noContraction temp float) -0:58 Convert int to float (temp float) -0:58 'j' (noContraction temp int) -0:58 Constant: -0:58 2.000000 -0:58 Convert int to float (temp float) -0:58 'i' (noContraction temp int) -0:54 Loop Terminal Expression -0:54 Post-Increment (noContraction temp int) -0:54 'j' (noContraction temp int) -0:61 Sequence -0:61 Sequence -0:61 move second child to first child (temp int) -0:61 'j' (noContraction temp int) -0:61 Constant: -0:61 0 (const int) -0:61 Loop with condition tested first -0:61 Loop Condition -0:61 Compare Less Than (temp bool) -0:61 'j' (temp int) -0:61 Constant: -0:61 6 (const int) -0:61 Loop Body -0:62 Sequence -0:62 Sequence -0:62 Sequence -0:62 move second child to first child (temp int) -0:62 'k' (noContraction temp int) -0:62 Constant: -0:62 0 (const int) -0:62 Loop with condition tested first -0:62 Loop Condition -0:62 Compare Less Than (temp bool) -0:62 'k' (temp int) -0:62 Constant: -0:62 3 (const int) -0:62 Loop Body -0:63 Sequence -0:63 move second child to first child (temp float) -0:63 indirect index (noContraction temp float) -0:63 t1_array: direct index for structure (noContraction temp 3-element array of float) -0:63 indirect index (temp structure{temp 3-element array of float t1_array, temp float t1_scalar}) -0:63 t1c: direct index for structure (temp 7-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar}) -0:63 t2: direct index for structure (temp structure{temp 5-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1a, temp 6-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1b, temp 7-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1c}) -0:63 indirect index (temp structure{temp float f, temp structure{temp 5-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1a, temp 6-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1b, temp 7-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1c} t2, temp 4-component vector of float v, temp int p}) -0:63 't3' (temp 10-element array of structure{temp float f, temp structure{temp 5-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1a, temp 6-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1b, temp 7-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1c} t2, temp 4-component vector of float v, temp int p}) -0:63 'i' (temp int) -0:63 Constant: -0:63 1 (const int) -0:63 Constant: -0:63 2 (const int) -0:63 'j' (temp int) -0:63 Constant: -0:63 0 (const int) -0:63 'k' (temp int) -0:63 Convert int to float (temp float) -0:63 add (temp int) -0:63 component-wise multiply (temp int) -0:63 'i' (noContraction temp int) -0:63 'j' (noContraction temp int) -0:63 'k' (noContraction temp int) -0:62 Loop Terminal Expression -0:62 Post-Increment (noContraction temp int) -0:62 'k' (noContraction temp int) -0:65 move second child to first child (temp float) -0:65 t1_scalar: direct index for structure (temp float) -0:65 indirect index (temp structure{temp 3-element array of float t1_array, temp float t1_scalar}) -0:65 t1c: direct index for structure (temp 7-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar}) -0:65 t2: direct index for structure (temp structure{temp 5-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1a, temp 6-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1b, temp 7-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1c}) -0:65 indirect index (temp structure{temp float f, temp structure{temp 5-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1a, temp 6-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1b, temp 7-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1c} t2, temp 4-component vector of float v, temp int p}) -0:65 't3' (temp 10-element array of structure{temp float f, temp structure{temp 5-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1a, temp 6-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1b, temp 7-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1c} t2, temp 4-component vector of float v, temp int p}) -0:65 'i' (temp int) -0:65 Constant: -0:65 1 (const int) -0:65 Constant: -0:65 2 (const int) -0:65 'j' (temp int) -0:65 Constant: -0:65 1 (const int) -0:65 divide (temp float) -0:65 component-wise multiply (temp float) -0:65 Convert int to float (temp float) -0:65 'j' (temp int) -0:65 Constant: -0:65 2.000000 -0:65 Convert int to float (temp float) -0:65 'i' (temp int) -0:61 Loop Terminal Expression -0:61 Post-Increment (noContraction temp int) -0:61 'j' (noContraction temp int) -0:43 Loop Terminal Expression -0:43 Post-Increment (noContraction temp int) -0:43 'i' (noContraction temp int) -0:68 Sequence -0:68 move second child to first child (temp int) -0:68 'i' (temp int) -0:68 Constant: -0:68 2 (const int) -0:69 move second child to first child (temp float) -0:69 'result' (noContraction temp float) -0:71 add (noContraction temp float) -0:70 add (noContraction temp float) -0:69 direct index (noContraction temp float) -0:69 t1_array: direct index for structure (temp 3-element array of float) -0:69 direct index (temp structure{temp 3-element array of float t1_array, temp float t1_scalar}) -0:69 t1c: direct index for structure (temp 7-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar}) -0:69 t2: direct index for structure (temp structure{temp 5-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1a, temp 6-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1b, temp 7-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1c}) -0:69 direct index (temp structure{temp float f, temp structure{temp 5-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1a, temp 6-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1b, temp 7-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1c} t2, temp 4-component vector of float v, temp int p}) -0:69 't3' (temp 10-element array of structure{temp float f, temp structure{temp 5-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1a, temp 6-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1b, temp 7-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1c} t2, temp 4-component vector of float v, temp int p}) -0:69 Constant: -0:69 5 (const int) -0:69 Constant: -0:69 1 (const int) -0:69 Constant: -0:69 2 (const int) -0:69 Constant: -0:69 6 (const int) -0:69 Constant: -0:69 0 (const int) -0:69 Constant: -0:69 1 (const int) -0:70 t1_scalar: direct index for structure (noContraction temp float) -0:70 direct index (temp structure{temp 3-element array of float t1_array, temp float t1_scalar}) -0:70 t1b: direct index for structure (temp 6-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar}) -0:70 t2: direct index for structure (temp structure{temp 5-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1a, temp 6-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1b, temp 7-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1c}) -0:70 direct index (temp structure{temp float f, temp structure{temp 5-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1a, temp 6-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1b, temp 7-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1c} t2, temp 4-component vector of float v, temp int p}) -0:70 't3' (temp 10-element array of structure{temp float f, temp structure{temp 5-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1a, temp 6-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1b, temp 7-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1c} t2, temp 4-component vector of float v, temp int p}) -0:70 Constant: -0:70 2 (const int) -0:70 Constant: -0:70 1 (const int) -0:70 Constant: -0:70 1 (const int) -0:70 Constant: -0:70 1 (const int) -0:70 Constant: -0:70 1 (const int) -0:71 direct index (noContraction temp float) -0:71 vector swizzle (temp 2-component vector of float) -0:71 v: direct index for structure (temp 4-component vector of float) -0:71 indirect index (temp structure{temp float f, temp structure{temp 5-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1a, temp 6-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1b, temp 7-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1c} t2, temp 4-component vector of float v, temp int p}) -0:71 't3' (temp 10-element array of structure{temp float f, temp structure{temp 5-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1a, temp 6-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1b, temp 7-element array of structure{temp 3-element array of float t1_array, temp float t1_scalar} t1c} t2, temp 4-component vector of float v, temp int p}) -0:71 subtract (temp int) -0:71 'i' (temp int) -0:71 Constant: -0:71 1 (const int) -0:71 Constant: -0:71 2 (const int) -0:71 Sequence -0:71 Constant: -0:71 0 (const int) -0:71 Constant: -0:71 1 (const int) -0:71 Constant: -0:71 0 (const int) -0:72 Branch: Return with expression -0:72 'result' (noContraction temp float) -0:75 Function Definition: out_block( (global float) -0:75 Function Parameters: -0:76 Sequence -0:76 Sequence -0:76 move second child to first child (temp float) -0:76 'a' (noContraction temp float) -0:76 Constant: -0:76 0.100000 -0:77 Sequence -0:77 move second child to first child (temp float) -0:77 'b' (noContraction temp float) -0:77 Constant: -0:77 0.200000 -0:78 move second child to first child (temp float) -0:78 f1: direct index for structure (noContraction global float) -0:78 s: direct index for structure (noContraction out structure{global float f1, global float f2}) -0:78 'partial_precise_block' (out block{noContraction out structure{global float f1, global float f2} s, out float x}) -0:78 Constant: -0:78 0 (const int) -0:78 Constant: -0:78 0 (const int) -0:78 add (noContraction temp float) -0:78 'a' (noContraction temp float) -0:78 'b' (noContraction temp float) -0:79 move second child to first child (temp float) -0:79 f2: direct index for structure (noContraction global float) -0:79 s: direct index for structure (noContraction out structure{global float f1, global float f2}) -0:79 'partial_precise_block' (out block{noContraction out structure{global float f1, global float f2} s, out float x}) -0:79 Constant: -0:79 0 (const int) -0:79 Constant: -0:79 1 (const int) -0:79 subtract (noContraction temp float) -0:79 'a' (noContraction temp float) -0:79 'b' (noContraction temp float) -0:80 move second child to first child (temp float) -0:80 x: direct index for structure (out float) -0:80 'partial_precise_block' (out block{noContraction out structure{global float f1, global float f2} s, out float x}) -0:80 Constant: -0:80 1 (const int) -0:80 component-wise multiply (temp float) -0:80 'a' (temp float) -0:80 'b' (temp float) -0:82 move second child to first child (temp float) -0:82 f1: direct index for structure (noContraction global float) -0:82 s: direct index for structure (noContraction out structure{global float f1, global float f2}) -0:82 'all_precise_block' (noContraction out block{out structure{global float f1, global float f2} s, out float x}) -0:82 Constant: -0:82 0 (const int) -0:82 Constant: -0:82 0 (const int) -0:82 add (noContraction temp float) -0:82 add (noContraction temp float) -0:82 'a' (noContraction temp float) -0:82 'b' (noContraction temp float) -0:82 Constant: -0:82 1.000000 -0:83 move second child to first child (temp float) -0:83 f2: direct index for structure (noContraction global float) -0:83 s: direct index for structure (noContraction out structure{global float f1, global float f2}) -0:83 'all_precise_block' (noContraction out block{out structure{global float f1, global float f2} s, out float x}) -0:83 Constant: -0:83 0 (const int) -0:83 Constant: -0:83 1 (const int) -0:83 subtract (noContraction temp float) -0:83 subtract (noContraction temp float) -0:83 'a' (noContraction temp float) -0:83 'b' (noContraction temp float) -0:83 Constant: -0:83 1.000000 -0:84 move second child to first child (temp float) -0:84 x: direct index for structure (noContraction out float) -0:84 'all_precise_block' (noContraction out block{out structure{global float f1, global float f2} s, out float x}) -0:84 Constant: -0:84 1 (const int) -0:84 component-wise multiply (noContraction temp float) -0:84 component-wise multiply (noContraction temp float) -0:84 'a' (noContraction temp float) -0:84 'b' (noContraction temp float) -0:84 Constant: -0:84 2.000000 -0:86 Branch: Return with expression -0:86 add (temp float) -0:86 'a' (temp float) -0:86 'b' (temp float) 0:89 Function Definition: main( (global void) 0:89 Function Parameters: 0:? Linker Objects diff --git a/Test/baseResults/precision.frag.out b/Test/baseResults/precision.frag.out index 79485b48..5ab99e99 100644 --- a/Test/baseResults/precision.frag.out +++ b/Test/baseResults/precision.frag.out @@ -130,18 +130,6 @@ Linked fragment stage: Shader version: 100 ERROR: node is still EOpNull! -0:5 Function Definition: foo(vf3; (global lowp 2-component vector of float) -0:5 Function Parameters: -0:5 'mv3' (in mediump 3-component vector of float) -0:? Sequence -0:8 Branch: Return with expression -0:8 vector swizzle (temp highp 2-component vector of float) -0:8 'hv4' (temp highp 4-component vector of float) -0:8 Sequence -0:8 Constant: -0:8 0 (const int) -0:8 Constant: -0:8 1 (const int) 0:25 Function Definition: main( (global void) 0:25 Function Parameters: 0:27 Sequence diff --git a/Test/baseResults/recurse1.vert.out b/Test/baseResults/recurse1.vert.out index c2ae0140..4274eb38 100644 --- a/Test/baseResults/recurse1.vert.out +++ b/Test/baseResults/recurse1.vert.out @@ -218,66 +218,6 @@ Shader version: 330 0:? Sequence 0:3 Function Definition: main( (global void) 0:3 Function Parameters: -0:9 Function Definition: self( (global void) -0:9 Function Parameters: -0:11 Sequence -0:11 Function Call: self( (global void) -0:16 Function Definition: foo(f1; (global void) -0:16 Function Parameters: -0:16 '' (in float) -0:18 Sequence -0:18 Function Call: bar(i1; (global float) -0:18 Constant: -0:18 2 (const int) -0:21 Function Definition: bar(i1; (global float) -0:21 Function Parameters: -0:21 '' (in int) -0:23 Sequence -0:23 Function Call: foo(f1; (global void) -0:23 Constant: -0:23 4.200000 -0:25 Branch: Return with expression -0:25 Constant: -0:25 3.200000 -0:32 Function Definition: A( (global void) -0:32 Function Parameters: -0:32 Sequence -0:32 Function Call: B( (global void) -0:33 Function Definition: C( (global void) -0:33 Function Parameters: -0:33 Sequence -0:33 Function Call: D( (global void) -0:34 Function Definition: B( (global void) -0:34 Function Parameters: -0:34 Sequence -0:34 Function Call: C( (global void) -0:35 Function Definition: D( (global void) -0:35 Function Parameters: -0:35 Sequence -0:35 Function Call: A( (global void) -0:41 Function Definition: AT( (global void) -0:41 Function Parameters: -0:41 Sequence -0:41 Function Call: BT( (global void) -0:41 Function Call: BT( (global void) -0:41 Function Call: BT( (global void) -0:42 Function Definition: CT( (global void) -0:42 Function Parameters: -0:42 Sequence -0:42 Function Call: DT( (global void) -0:42 Function Call: AT( (global void) -0:42 Function Call: DT( (global void) -0:42 Function Call: BT( (global void) -0:43 Function Definition: BT( (global void) -0:43 Function Parameters: -0:43 Sequence -0:43 Function Call: CT( (global void) -0:43 Function Call: CT( (global void) -0:43 Function Call: CT( (global void) -0:44 Function Definition: DT( (global void) -0:44 Function Parameters: -0:44 Sequence -0:44 Function Call: AT( (global void) 0:? Linker Objects 0:? 'gl_VertexID' (gl_VertexId int VertexId) 0:? 'gl_InstanceID' (gl_InstanceId int InstanceId) @@ -285,113 +225,5 @@ Shader version: 330 0:? Sequence 0:5 Function Definition: main( (global void) 0:5 Function Parameters: -0:11 Function Definition: cfoo(f1; (global void) -0:11 Function Parameters: -0:11 '' (in float) -0:13 Sequence -0:13 Function Call: cbar(i1; (global float) -0:13 Constant: -0:13 2 (const int) -0:20 Function Definition: CA( (global void) -0:20 Function Parameters: -0:20 Sequence -0:20 Function Call: CB( (global void) -0:21 Function Definition: CC( (global void) -0:21 Function Parameters: -0:21 Sequence -0:21 Function Call: CD( (global void) -0:27 Function Definition: CAT( (global void) -0:27 Function Parameters: -0:27 Sequence -0:27 Function Call: CBT( (global void) -0:27 Function Call: CBT( (global void) -0:27 Function Call: CBT( (global void) -0:28 Function Definition: CCT( (global void) -0:28 Function Parameters: -0:28 Sequence -0:28 Function Call: CDT( (global void) -0:28 Function Call: CDT( (global void) -0:28 Function Call: CBT( (global void) -0:32 Function Definition: norA( (global void) -0:32 Function Parameters: -0:33 Function Definition: norB( (global void) -0:33 Function Parameters: -0:33 Sequence -0:33 Function Call: norA( (global void) -0:34 Function Definition: norC( (global void) -0:34 Function Parameters: -0:34 Sequence -0:34 Function Call: norA( (global void) -0:35 Function Definition: norD( (global void) -0:35 Function Parameters: -0:35 Sequence -0:35 Function Call: norA( (global void) -0:36 Function Definition: norE( (global void) -0:36 Function Parameters: -0:36 Sequence -0:36 Function Call: norB( (global void) -0:37 Function Definition: norF( (global void) -0:37 Function Parameters: -0:37 Sequence -0:37 Function Call: norB( (global void) -0:38 Function Definition: norG( (global void) -0:38 Function Parameters: -0:38 Sequence -0:38 Function Call: norE( (global void) -0:39 Function Definition: norH( (global void) -0:39 Function Parameters: -0:39 Sequence -0:39 Function Call: norE( (global void) -0:40 Function Definition: norI( (global void) -0:40 Function Parameters: -0:40 Sequence -0:40 Function Call: norE( (global void) -0:44 Function Definition: norcA( (global void) -0:44 Function Parameters: -0:45 Function Definition: norcB( (global void) -0:45 Function Parameters: -0:45 Sequence -0:45 Function Call: norcA( (global void) -0:46 Function Definition: norcC( (global void) -0:46 Function Parameters: -0:46 Sequence -0:46 Function Call: norcB( (global void) -0:47 Function Definition: norcD( (global void) -0:47 Function Parameters: -0:47 Sequence -0:47 Function Call: norcC( (global void) -0:47 Function Call: norcB( (global void) -0:48 Function Definition: norcE( (global void) -0:48 Function Parameters: -0:48 Sequence -0:48 Function Call: norcD( (global void) -0:9 Function Definition: cbar(i1; (global float) -0:9 Function Parameters: -0:9 '' (in int) -0:11 Sequence -0:11 Function Call: cfoo(f1; (global void) -0:11 Constant: -0:11 4.200000 -0:13 Branch: Return with expression -0:13 Constant: -0:13 3.200000 -0:20 Function Definition: CB( (global void) -0:20 Function Parameters: -0:20 Sequence -0:20 Function Call: CC( (global void) -0:21 Function Definition: CD( (global void) -0:21 Function Parameters: -0:21 Sequence -0:21 Function Call: CA( (global void) -0:27 Function Definition: CBT( (global void) -0:27 Function Parameters: -0:27 Sequence -0:27 Function Call: CCT( (global void) -0:27 Function Call: CCT( (global void) -0:27 Function Call: CCT( (global void) -0:28 Function Definition: CDT( (global void) -0:28 Function Parameters: -0:28 Sequence -0:28 Function Call: CAT( (global void) 0:? Linker Objects diff --git a/Test/baseResults/specExamples.frag.out b/Test/baseResults/specExamples.frag.out index 711c529d..a66144a7 100644 --- a/Test/baseResults/specExamples.frag.out +++ b/Test/baseResults/specExamples.frag.out @@ -399,17 +399,6 @@ ERROR: node is still EOpNull! 0:26 'fd' (global double) 0:26 Constant: 0:26 2.000000 -0:127 Function Definition: foo(f1[5]; (global 5-element array of float) -0:127 Function Parameters: -0:127 '' (in 5-element array of float) -0:129 Sequence -0:129 Branch: Return with expression -0:129 Constant: -0:129 3.400000 -0:129 4.200000 -0:129 5.000000 -0:129 5.200000 -0:129 1.100000 0:137 Function Definition: main( (global void) 0:137 Function Parameters: 0:140 Sequence diff --git a/Test/hlsl.deadFunctionMissingBody.vert b/Test/hlsl.deadFunctionMissingBody.vert new file mode 100644 index 00000000..a5f965ab --- /dev/null +++ b/Test/hlsl.deadFunctionMissingBody.vert @@ -0,0 +1,8 @@ +float4 main(): SV_Target0 { return 0; } +struct Surface { float3 albedo; }; +Surface surfaceShader(float fade); +Surface surfaceShaderExec() +{ + float fade = 0; + return surfaceShader(0); +} diff --git a/Test/runtests b/Test/runtests index fe16f37b..a17848b7 100755 --- a/Test/runtests +++ b/Test/runtests @@ -45,13 +45,20 @@ $EXE -i -C *.vert *.geom *.frag *.tes* *.comp > singleThread.out $EXE -i -C *.vert *.geom *.frag *.tes* *.comp -t > multiThread.out diff singleThread.out multiThread.out || HASERROR=1 - # # entry point renaming tests # -$EXE -i -H -V -D -e main_in_spv --source-entrypoint main hlsl.entry.rename.frag > $TARGETDIR/hlsl.entry.rename.frag.out +echo Running entry-point renaming tests +$EXE -i -H -V -D -e main_in_spv --ku --source-entrypoint main hlsl.entry.rename.frag > $TARGETDIR/hlsl.entry.rename.frag.out diff -b $BASEDIR/hlsl.entry.rename.frag.out $TARGETDIR/hlsl.entry.rename.frag.out || HASERROR=1 +# +# Testing ill-defined uncalled function +# +echo Running ill-defined uncalled function +$EXE -D -e main -H hlsl.deadFunctionMissingBody.vert > $TARGETDIR/hlsl.deadFunctionMissingBody.vert.out +diff -b $BASEDIR/hlsl.deadFunctionMissingBody.vert.out $TARGETDIR/hlsl.deadFunctionMissingBody.vert.out || HASERROR=1 + if [ $HASERROR -eq 0 ] then echo Tests Succeeded. diff --git a/glslang/Include/revision.h b/glslang/Include/revision.h index d1b31239..2f391b69 100644 --- a/glslang/Include/revision.h +++ b/glslang/Include/revision.h @@ -2,5 +2,5 @@ // For the version, it uses the latest git tag followed by the number of commits. // For the date, it uses the current date (when then script is run). -#define GLSLANG_REVISION "Overload400-PrecQual.1687" +#define GLSLANG_REVISION "Overload400-PrecQual.1688" #define GLSLANG_DATE "09-Dec-2016" diff --git a/glslang/MachineIndependent/ShaderLang.cpp b/glslang/MachineIndependent/ShaderLang.cpp index 59c9a01c..e50b12f2 100644 --- a/glslang/MachineIndependent/ShaderLang.cpp +++ b/glslang/MachineIndependent/ShaderLang.cpp @@ -1696,7 +1696,7 @@ bool TProgram::linkStage(EShLanguage stage, EShMessages messages) intermediate[stage]->merge(*infoSink, *(*it)->intermediate); } - intermediate[stage]->finalCheck(*infoSink); + intermediate[stage]->finalCheck(*infoSink, (messages & EShMsgKeepUncalled) != 0); if (messages & EShMsgAST) intermediate[stage]->output(*infoSink, true); diff --git a/glslang/MachineIndependent/linkValidate.cpp b/glslang/MachineIndependent/linkValidate.cpp index 820b53a5..3834fde3 100644 --- a/glslang/MachineIndependent/linkValidate.cpp +++ b/glslang/MachineIndependent/linkValidate.cpp @@ -377,7 +377,7 @@ void TIntermediate::mergeErrorCheck(TInfoSink& infoSink, const TIntermSymbol& sy // // Also, lock in defaults of things not set, including array sizes. // -void TIntermediate::finalCheck(TInfoSink& infoSink) +void TIntermediate::finalCheck(TInfoSink& infoSink, bool keepUncalled) { if (getTreeRoot() == nullptr) return; @@ -394,7 +394,7 @@ void TIntermediate::finalCheck(TInfoSink& infoSink) // recursion and missing body checking checkCallGraphCycles(infoSink); - checkCallGraphBodies(infoSink); + checkCallGraphBodies(infoSink, keepUncalled); // overlap/alias/missing I/O, etc. inOutLocationCheck(infoSink); @@ -583,23 +583,27 @@ void TIntermediate::checkCallGraphCycles(TInfoSink& infoSink) // // See which functions are reachable from the entry point and which have bodies. // Reachable ones with missing bodies are errors. +// Unreachable bodies are dead code. // -void TIntermediate::checkCallGraphBodies(TInfoSink& infoSink) +void TIntermediate::checkCallGraphBodies(TInfoSink& infoSink, bool keepUncalled) { // Clear fields we'll use for this. for (TGraph::iterator call = callGraph.begin(); call != callGraph.end(); ++call) { call->visited = false; call->calleeBodyPosition = -1; } - + // The top level of the AST includes function definitions (bodies). // Compare these to function calls in the call graph. // We'll end up knowing which have bodies, and if so, // how to map the call-graph node to the location in the AST. TIntermSequence &functionSequence = getTreeRoot()->getAsAggregate()->getSequence(); + std::vector reachable(functionSequence.size(), true); // so that non-functions are reachable for (int f = 0; f < (int)functionSequence.size(); ++f) { glslang::TIntermAggregate* node = functionSequence[f]->getAsAggregate(); if (node && (node->getOp() == glslang::EOpFunction)) { + if (node->getName().compare(getEntryPointMangledName().c_str()) != 0) + reachable[f] = false; // so that function bodies are unreachable, until proven otherwise for (TGraph::iterator call = callGraph.begin(); call != callGraph.end(); ++call) { if (call->callee == node->getName()) call->calleeBodyPosition = f; @@ -638,9 +642,21 @@ void TIntermediate::checkCallGraphBodies(TInfoSink& infoSink) if (call->calleeBodyPosition == -1) { error(infoSink, "No function definition (body) found: "); infoSink.info << " " << call->callee << "\n"; - } + } else + reachable[call->calleeBodyPosition] = true; } } + + // Bodies in the AST not reached by the call graph are dead; + // clear them out, since they can't be reached and also can't + // be translated further due to possibility of being ill defined. + if (! keepUncalled) { + for (int f = 0; f < (int)functionSequence.size(); ++f) { + if (! reachable[f]) + functionSequence[f] = nullptr; + } + functionSequence.erase(std::remove(functionSequence.begin(), functionSequence.end(), nullptr), functionSequence.end()); + } } // diff --git a/glslang/MachineIndependent/localintermediate.h b/glslang/MachineIndependent/localintermediate.h index a16383ff..6f6db92d 100644 --- a/glslang/MachineIndependent/localintermediate.h +++ b/glslang/MachineIndependent/localintermediate.h @@ -364,7 +364,7 @@ public: void addToCallGraph(TInfoSink&, const TString& caller, const TString& callee); void merge(TInfoSink&, TIntermediate&); - void finalCheck(TInfoSink&); + void finalCheck(TInfoSink&, bool keepUncalled); void addIoAccessed(const TString& name) { ioAccessed.insert(name); } bool inIoAccessed(const TString& name) const { return ioAccessed.find(name) != ioAccessed.end(); } @@ -396,7 +396,7 @@ protected: void mergeImplicitArraySizes(TType&, const TType&); void mergeErrorCheck(TInfoSink&, const TIntermSymbol&, const TIntermSymbol&, bool crossStage); void checkCallGraphCycles(TInfoSink&); - void checkCallGraphBodies(TInfoSink&); + void checkCallGraphBodies(TInfoSink&, bool keepUncalled); void inOutLocationCheck(TInfoSink&); TIntermSequence& findLinkerObjects() const; bool userOutputUsed() const; diff --git a/glslang/Public/ShaderLang.h b/glslang/Public/ShaderLang.h index 323a4d75..afdc7d1e 100644 --- a/glslang/Public/ShaderLang.h +++ b/glslang/Public/ShaderLang.h @@ -146,6 +146,7 @@ enum EShMessages { EShMsgOnlyPreprocessor = (1 << 5), // only print out errors produced by the preprocessor EShMsgReadHlsl = (1 << 6), // use HLSL parsing rules and semantics EShMsgCascadingErrors = (1 << 7), // get cascading errors; risks error-recovery issues, instead of an early exit + EShMsgKeepUncalled = (1 << 8), // for testing, don't eliminate uncalled functions }; // diff --git a/gtests/TestFixture.cpp b/gtests/TestFixture.cpp index 7d27b3b1..db2b81d1 100644 --- a/gtests/TestFixture.cpp +++ b/gtests/TestFixture.cpp @@ -84,9 +84,11 @@ EShMessages DeriveOptions(Source source, Semantics semantics, Target target) break; case Target::Spv: result = static_cast(result | EShMsgSpvRules); + result = static_cast(result | EShMsgKeepUncalled); break; case Target::BothASTAndSpv: result = static_cast(result | EShMsgSpvRules | EShMsgAST); + result = static_cast(result | EShMsgKeepUncalled); break; };