Add full support for uniforms with initializers, including intra-stage link validation of aggregate constant initializers.

This included 
 - encapsulating aggregate constants
 - removal of constant-aggregate comparison algorithms, instead using a flattened and direct std::vector comparison
 - adding structure type comparison for independently declared structures that still might match types



git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@23274 e7fa87d3-cd2b-0410-9028-fcbf551c1848
This commit is contained in:
John Kessenich
2013-09-28 04:02:08 +00:00
parent b3345c422d
commit f2ee3dd46a
98 changed files with 3007 additions and 1715 deletions

View File

@@ -5,17 +5,19 @@
0:6 Sequence
0:6 move second child to first child (4-component vector of float)
0:6 'white' (4-component vector of float)
0:6 1.000000
0:6 1.000000
0:6 1.000000
0:6 1.000000
0:6 Constant:
0:6 1.000000
0:6 1.000000
0:6 1.000000
0:6 1.000000
0:7 Sequence
0:7 move second child to first child (4-component vector of float)
0:7 'black' (4-component vector of float)
0:7 0.200000
0:7 0.200000
0:7 0.200000
0:7 0.200000
0:7 Constant:
0:7 0.200000
0:7 0.200000
0:7 0.200000
0:7 0.200000
0:8 Sequence
0:8 move second child to first child (4-component vector of float)
0:8 'color' (4-component vector of float)
@@ -27,9 +29,12 @@
0:11 component-wise multiply (float)
0:11 direct index (float)
0:11 'tex_coord' (smooth in 2-component vector of float)
0:11 0 (const int)
0:11 2.000000
0:11 1.000000
0:11 Constant:
0:11 0 (const int)
0:11 Constant:
0:11 2.000000
0:11 Constant:
0:11 1.000000
0:12 Sequence
0:12 move second child to first child (float)
0:12 'y' (float)
@@ -37,9 +42,12 @@
0:12 component-wise multiply (float)
0:12 direct index (float)
0:12 'tex_coord' (smooth in 2-component vector of float)
0:12 1 (const int)
0:12 2.000000
0:12 1.000000
0:12 Constant:
0:12 1 (const int)
0:12 Constant:
0:12 2.000000
0:12 Constant:
0:12 1.000000
0:14 Sequence
0:14 move second child to first child (float)
0:14 'radius' (float)
@@ -55,14 +63,16 @@
0:15 Condition
0:15 Compare Greater Than (bool)
0:15 'radius' (float)
0:15 1.000000
0:15 Constant:
0:15 1.000000
0:15 true case
0:16 Sequence
0:16 Test condition and select (void)
0:16 Condition
0:16 Compare Greater Than (bool)
0:16 'radius' (float)
0:16 1.100000
0:16 Constant:
0:16 1.100000
0:16 true case
0:17 Sequence
0:17 Pre-Increment (4-component vector of float)
@@ -74,7 +84,8 @@
0:22 Condition
0:22 Compare Greater Than (bool)
0:22 'radius' (float)
0:22 1.200000
0:22 Constant:
0:22 1.200000
0:22 true case
0:23 Sequence
0:23 Pre-Increment (4-component vector of float)
@@ -84,7 +95,8 @@
0:30 Condition
0:30 Compare Greater Than or Equal (bool)
0:30 'radius' (float)
0:30 0.750000
0:30 Constant:
0:30 0.750000
0:30 true case
0:31 subtract second child into first child (4-component vector of float)
0:31 'color' (4-component vector of float)
@@ -92,8 +104,10 @@
0:31 divide (float)
0:31 pow (float)
0:31 'radius' (float)
0:31 16.000000
0:31 2.000000
0:31 Constant:
0:31 16.000000
0:31 Constant:
0:31 2.000000
0:33 move second child to first child (4-component vector of float)
0:33 'gl_FragColor' (fragColor 4-component vector of float)
0:33 'color' (4-component vector of float)