Whole stack: Fix stale types in the AST linker object nodes, fixing #557.
Rationalizes the entire tracking of the linker object nodes, effecting GLSL, HLSL, and SPIR-V, to allow tracked objects to be fully edited before their type snapshot for linker objects. Should only effect things when the rest of the AST contained no reference to the symbol, because normal AST nodes were not stale. Also will only effect such objects when their types were edited.
This commit is contained in:
@@ -10,7 +10,7 @@ gl_FragCoord origin is upper left
|
||||
0:10 Branch: Return with expression
|
||||
0:10 'inFloat1' (in 1-component vector of float)
|
||||
0:? Linker Objects
|
||||
0:? 'anon@0' (uniform block{layout(offset=0 ) uniform 1-component vector of float f1, layout(offset=16 ) uniform 1X1 matrix of float fmat11, layout(offset=32 ) uniform 4X1 matrix of float fmat41, layout(offset=48 ) uniform 1X2 matrix of float fmat12, layout(offset=80 ) uniform 2X3 matrix of double dmat23, layout(offset=128 ) uniform 4X4 matrix of int int44})
|
||||
0:? 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform 1-component vector of float f1, layout(offset=16 ) uniform 1X1 matrix of float fmat11, layout(offset=32 ) uniform 4X1 matrix of float fmat41, layout(offset=48 ) uniform 1X2 matrix of float fmat12, layout(offset=80 ) uniform 2X3 matrix of double dmat23, layout(offset=128 ) uniform 4X4 matrix of int int44})
|
||||
|
||||
|
||||
Linked fragment stage:
|
||||
@@ -27,7 +27,7 @@ gl_FragCoord origin is upper left
|
||||
0:10 Branch: Return with expression
|
||||
0:10 'inFloat1' (in 1-component vector of float)
|
||||
0:? Linker Objects
|
||||
0:? 'anon@0' (uniform block{layout(offset=0 ) uniform 1-component vector of float f1, layout(offset=16 ) uniform 1X1 matrix of float fmat11, layout(offset=32 ) uniform 4X1 matrix of float fmat41, layout(offset=48 ) uniform 1X2 matrix of float fmat12, layout(offset=80 ) uniform 2X3 matrix of double dmat23, layout(offset=128 ) uniform 4X4 matrix of int int44})
|
||||
0:? 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform 1-component vector of float f1, layout(offset=16 ) uniform 1X1 matrix of float fmat11, layout(offset=32 ) uniform 4X1 matrix of float fmat41, layout(offset=48 ) uniform 1X2 matrix of float fmat12, layout(offset=80 ) uniform 2X3 matrix of double dmat23, layout(offset=128 ) uniform 4X4 matrix of int int44})
|
||||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80001
|
||||
@@ -51,6 +51,22 @@ gl_FragCoord origin is upper left
|
||||
MemberName 27($Global) 4 "dmat23"
|
||||
MemberName 27($Global) 5 "int44"
|
||||
Name 29 ""
|
||||
MemberDecorate 27($Global) 0 Offset 0
|
||||
MemberDecorate 27($Global) 1 RowMajor
|
||||
MemberDecorate 27($Global) 1 Offset 16
|
||||
MemberDecorate 27($Global) 1 MatrixStride 16
|
||||
MemberDecorate 27($Global) 2 RowMajor
|
||||
MemberDecorate 27($Global) 2 Offset 32
|
||||
MemberDecorate 27($Global) 2 MatrixStride 16
|
||||
MemberDecorate 27($Global) 3 RowMajor
|
||||
MemberDecorate 27($Global) 3 Offset 48
|
||||
MemberDecorate 27($Global) 3 MatrixStride 16
|
||||
MemberDecorate 27($Global) 4 RowMajor
|
||||
MemberDecorate 27($Global) 4 Offset 80
|
||||
MemberDecorate 27($Global) 4 MatrixStride 16
|
||||
MemberDecorate 27($Global) 5 RowMajor
|
||||
MemberDecorate 27($Global) 5 Offset 128
|
||||
MemberDecorate 27($Global) 5 MatrixStride 16
|
||||
Decorate 27($Global) Block
|
||||
Decorate 29 DescriptorSet 0
|
||||
2: TypeVoid
|
||||
|
||||
Reference in New Issue
Block a user