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

@@ -2,13 +2,15 @@
0:5 Sequence
0:5 move second child to first child (int)
0:5 'c' (int)
0:5 0 (const int)
0:5 Constant:
0:5 0 (const int)
0:7 Function Definition: bar( (void)
0:7 Function Parameters:
0:9 Sequence
0:9 Test condition and select (void)
0:9 Condition
0:9 false (const bool)
0:9 Constant:
0:9 false (const bool)
0:9 true case
0:10 Pre-Increment (int)
0:10 'c' (int)
@@ -17,7 +19,8 @@
0:12 'c' (int)
0:14 Test condition and select (int)
0:14 Condition
0:14 false (const bool)
0:14 Constant:
0:14 false (const bool)
0:14 true case
0:14 Pre-Increment (int)
0:14 'c' (int)
@@ -30,7 +33,8 @@
0:16 body
0:16 Sequence
0:17 case: with expression
0:17 1 (const int)
0:17 Constant:
0:17 1 (const int)
0:? Sequence
0:18 Pre-Increment (int)
0:18 'c' (int)
@@ -38,7 +42,8 @@
0:20 Pre-Increment (int)
0:20 'c' (int)
0:21 case: with expression
0:21 2 (const int)
0:21 Constant:
0:21 2 (const int)
0:? Sequence
0:22 Branch: Break
0:23 Pre-Increment (int)
@@ -50,12 +55,14 @@
0:28 Sequence
0:28 move second child to first child (int)
0:28 'i' (int)
0:28 0 (const 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 (bool)
0:28 'i' (int)
0:28 0 (const int)
0:28 Constant:
0:28 0 (const int)
0:28 Loop Body
0:29 Pre-Increment (int)
0:29 'c' (int)
@@ -66,19 +73,22 @@
0:31 Sequence
0:31 move second child to first child (int)
0:31 'i' (int)
0:31 0 (const 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 (bool)
0:31 'i' (int)
0:31 10 (const int)
0:31 Constant:
0:31 10 (const int)
0:31 Loop Body
0:32 Sequence
0:32 Test condition and select (void)
0:32 Condition
0:32 Compare Less Than (bool)
0:32 'c' (int)
0:32 3 (const int)
0:32 Constant:
0:32 3 (const int)
0:32 true case
0:33 Sequence
0:33 Branch: Break
@@ -102,18 +112,22 @@
0:48 Condition
0:48 Compare Greater Than (bool)
0:48 'c' (int)
0:48 4 (const int)
0:48 Constant:
0:48 4 (const int)
0:48 true case
0:49 Sequence
0:49 Branch: Return with expression
0:49 4 (const int)
0:49 Constant:
0:49 4 (const int)
0:50 Pre-Increment (int)
0:50 'c' (int)
0:53 Branch: Return with expression
0:53 5 (const int)
0:53 Constant:
0:53 5 (const int)
0:55 Pre-Increment (int)
0:55 'c' (int)
0:? Linker Objects
0:? 'flag' (const bool)
0:? false (const bool)
0:? 'c' (int)