Fix slight inconsistencies in which qualifiers are inherited into block members:
- don't inherit 'binding' - always set the member storage qualifier, not just when the shader explicitly set it - don't include in/out members as objects that are resized by geometry/primitive layout specifiers As a side effect, this makes built-in redeclarations (like gl_ClipDistance) require in/out. git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@24674 e7fa87d3-cd2b-0410-9028-fcbf551c1848
This commit is contained in:
parent
7cbfdf4394
commit
5053a39578
30 changed files with 343 additions and 339 deletions
|
|
@ -47,29 +47,29 @@ ERROR: node is still EOpNull!
|
|||
0:30 Constant:
|
||||
0:30 0.000000
|
||||
0:32 move second child to first child (3-component vector of float)
|
||||
0:32 color: direct index for structure (layout(stream=0 ) 3-component vector of float)
|
||||
0:32 '__anon__0' (layout(stream=0 ) out block{layout(stream=0 ) 3-component vector of float color})
|
||||
0:32 color: direct index for structure (layout(stream=0 ) out 3-component vector of float)
|
||||
0:32 '__anon__0' (layout(stream=0 ) out block{layout(stream=0 ) out 3-component vector of float color})
|
||||
0:32 Constant:
|
||||
0:32 0 (const uint)
|
||||
0:32 color: direct index for structure (3-component vector of float)
|
||||
0:32 direct index (block{3-component vector of float color})
|
||||
0:32 'fromV' (in 4-element array of block{3-component vector of float color})
|
||||
0:32 color: direct index for structure (in 3-component vector of float)
|
||||
0:32 direct index (block{in 3-component vector of float color})
|
||||
0:32 'fromV' (in 4-element array of block{in 3-component vector of float color})
|
||||
0:32 Constant:
|
||||
0:32 0 (const int)
|
||||
0:32 Constant:
|
||||
0:32 0 (const int)
|
||||
0:33 move second child to first child (float)
|
||||
0:33 direct index (layout(stream=0 ) float)
|
||||
0:33 gl_ClipDistance: direct index for structure (layout(stream=0 ) unsized array of float)
|
||||
0:33 '__anon__1' (layout(stream=0 ) out block{layout(stream=0 ) gl_Position 4-component vector of float gl_Position, layout(stream=0 ) gl_PointSize float gl_PointSize, layout(stream=0 ) unsized array of float gl_ClipDistance})
|
||||
0:33 gl_ClipDistance: direct index for structure (layout(stream=0 ) out unsized array of float)
|
||||
0:33 '__anon__1' (layout(stream=0 ) out block{layout(stream=0 ) gl_Position 4-component vector of float gl_Position, layout(stream=0 ) gl_PointSize float gl_PointSize, layout(stream=0 ) out unsized array of float gl_ClipDistance})
|
||||
0:33 Constant:
|
||||
0:33 2 (const uint)
|
||||
0:33 Constant:
|
||||
0:33 3 (const int)
|
||||
0:33 direct index (float)
|
||||
0:33 gl_ClipDistance: direct index for structure (unsized array of float)
|
||||
0:33 direct index (block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance})
|
||||
0:33 'gl_in' (in 4-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance})
|
||||
0:33 gl_ClipDistance: direct index for structure (in unsized array of float)
|
||||
0:33 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})
|
||||
0:33 'gl_in' (in 4-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})
|
||||
0:33 Constant:
|
||||
0:33 1 (const int)
|
||||
0:33 Constant:
|
||||
|
|
@ -78,24 +78,24 @@ ERROR: node is still EOpNull!
|
|||
0:33 2 (const int)
|
||||
0:34 move second child to first child (4-component vector of float)
|
||||
0:34 gl_Position: direct index for structure (layout(stream=0 ) gl_Position 4-component vector of float)
|
||||
0:34 '__anon__1' (layout(stream=0 ) out block{layout(stream=0 ) gl_Position 4-component vector of float gl_Position, layout(stream=0 ) gl_PointSize float gl_PointSize, layout(stream=0 ) unsized array of float gl_ClipDistance})
|
||||
0:34 '__anon__1' (layout(stream=0 ) out block{layout(stream=0 ) gl_Position 4-component vector of float gl_Position, layout(stream=0 ) gl_PointSize float gl_PointSize, layout(stream=0 ) out unsized array of float gl_ClipDistance})
|
||||
0:34 Constant:
|
||||
0:34 0 (const uint)
|
||||
0:34 gl_Position: direct index for structure (4-component vector of float)
|
||||
0:34 direct index (block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance})
|
||||
0:34 'gl_in' (in 4-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance})
|
||||
0:34 gl_Position: direct index for structure (in 4-component vector of float)
|
||||
0:34 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})
|
||||
0:34 'gl_in' (in 4-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})
|
||||
0:34 Constant:
|
||||
0:34 0 (const int)
|
||||
0:34 Constant:
|
||||
0:34 0 (const int)
|
||||
0:35 move second child to first child (float)
|
||||
0:35 gl_PointSize: direct index for structure (layout(stream=0 ) gl_PointSize float)
|
||||
0:35 '__anon__1' (layout(stream=0 ) out block{layout(stream=0 ) gl_Position 4-component vector of float gl_Position, layout(stream=0 ) gl_PointSize float gl_PointSize, layout(stream=0 ) unsized array of float gl_ClipDistance})
|
||||
0:35 '__anon__1' (layout(stream=0 ) out block{layout(stream=0 ) gl_Position 4-component vector of float gl_Position, layout(stream=0 ) gl_PointSize float gl_PointSize, layout(stream=0 ) out unsized array of float gl_ClipDistance})
|
||||
0:35 Constant:
|
||||
0:35 1 (const uint)
|
||||
0:35 gl_PointSize: direct index for structure (float)
|
||||
0:35 direct index (block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance})
|
||||
0:35 'gl_in' (in 4-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance})
|
||||
0:35 gl_PointSize: direct index for structure (in float)
|
||||
0:35 direct index (block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})
|
||||
0:35 'gl_in' (in 4-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})
|
||||
0:35 Constant:
|
||||
0:35 3 (const int)
|
||||
0:35 Constant:
|
||||
|
|
@ -112,8 +112,8 @@ ERROR: node is still EOpNull!
|
|||
0:65 'a' (in int)
|
||||
0:67 Sequence
|
||||
0:67 move second child to first child (4-component vector of float)
|
||||
0:67 a: direct index for structure (layout(stream=6 ) 4-component vector of float)
|
||||
0:67 'ouuaa6' (layout(stream=6 ) out block{layout(stream=6 ) 4-component vector of float a})
|
||||
0:67 a: direct index for structure (layout(stream=6 ) out 4-component vector of float)
|
||||
0:67 'ouuaa6' (layout(stream=6 ) out block{layout(stream=6 ) out 4-component vector of float a})
|
||||
0:67 Constant:
|
||||
0:67 0 (const int)
|
||||
0:67 Constant:
|
||||
|
|
@ -122,28 +122,28 @@ ERROR: node is still EOpNull!
|
|||
0:67 1.000000
|
||||
0:67 1.000000
|
||||
0:? Linker Objects
|
||||
0:? 'fromV' (in 4-element array of block{3-component vector of float color})
|
||||
0:? 'toF' (layout(stream=0 ) out block{layout(stream=0 ) 3-component vector of float color})
|
||||
0:? '__anon__0' (layout(stream=0 ) out block{layout(stream=0 ) 3-component vector of float color})
|
||||
0:? 'gl_in' (in 4-element array of block{4-component vector of float gl_Position, float gl_PointSize, unsized array of float gl_ClipDistance})
|
||||
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})
|
||||
0:? '__anon__0' (layout(stream=0 ) out block{layout(stream=0 ) out 3-component vector of float color})
|
||||
0:? 'gl_in' (in 4-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in unsized array of float gl_ClipDistance})
|
||||
0:? 'ov0' (layout(stream=0 ) out 4-component vector of float)
|
||||
0:? 'ov4' (layout(stream=4 ) out 4-component vector of float)
|
||||
0:? 'o1v0' (layout(stream=0 ) out 4-component vector of float)
|
||||
0:? 'ua' (layout(stream=3 ) uniform int)
|
||||
0:? 'ibb' (layout(stream=3 column_major shared ) uniform block{layout(stream=3 column_major shared ) int ua})
|
||||
0:? 'ibb' (layout(stream=3 column_major shared ) uniform block{layout(stream=3 column_major shared ) uniform int ua})
|
||||
0:? 'ov3' (layout(stream=3 ) out 4-component vector of float)
|
||||
0:? 'ouuaa6' (layout(stream=6 ) out block{layout(stream=6 ) 4-component vector of float a})
|
||||
0:? 'ouua6' (layout(stream=6 ) out block{layout(stream=6 ) 4-component vector of float a})
|
||||
0:? 'ouua7' (layout(stream=7 ) out block{layout(stream=6 ) 4-component vector of float a})
|
||||
0:? 'ouuaa6' (layout(stream=6 ) out block{layout(stream=6 ) out 4-component vector of float a})
|
||||
0:? 'ouua6' (layout(stream=6 ) out block{layout(stream=6 ) out 4-component vector of float a})
|
||||
0:? 'ouua7' (layout(stream=7 ) out block{layout(stream=6 ) out 4-component vector of float a})
|
||||
0:? 'ov2s3' (layout(stream=3 ) out 4-component vector of float)
|
||||
0:? 'badv4' (layout(stream=3 ) out 4-component vector of float)
|
||||
0:? 'bad2v4' (in 4-element array of 4-component vector of float)
|
||||
0:? '__anon__1' (layout(stream=3 ) out block{layout(stream=3 ) int a})
|
||||
0:? 'outbi' (layout(stream=3 ) out block{layout(stream=3 ) int a, layout(stream=3 ) int b, layout(stream=3 ) int c})
|
||||
0:? 'inbi' (in 4-element array of block{layout(stream=2 ) int a})
|
||||
0:? 'insn' (in 4-element array of block{int a15})
|
||||
0:? '__anon__2' (layout(stream=3 ) out block{layout(stream=3 ) float f15})
|
||||
0:? '__anon__3' (layout(column_major shared ) uniform block{layout(column_major shared ) bool b15})
|
||||
0:? '__anon__1' (layout(stream=3 ) out block{layout(stream=3 ) out int a})
|
||||
0:? 'outbi' (layout(stream=3 ) out block{layout(stream=3 ) out int a, layout(stream=3 ) out int b, layout(stream=3 ) out int c})
|
||||
0:? 'inbi' (in 4-element array of block{layout(stream=2 ) in int a})
|
||||
0:? 'insn' (in 4-element array of block{in int a15})
|
||||
0:? '__anon__2' (layout(stream=3 ) out block{layout(stream=3 ) out float f15})
|
||||
0:? '__anon__3' (layout(column_major shared ) uniform block{layout(column_major shared ) uniform bool b15})
|
||||
|
||||
|
||||
Linked geometry stage:
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue