Updated glslang.

This commit is contained in:
Branimir Karadžić 2018-02-28 20:05:41 -08:00
parent 1462079d39
commit f10aad5bc8
5 changed files with 816 additions and 0 deletions

View File

@ -0,0 +1,142 @@
hlsl.imagefetch-subvec4.comp
Shader version: 500
local_size = (8, 8, 8)
0:? Sequence
0:6 Function Definition: @main(vu3; ( temp void)
0:6 Function Parameters:
0:6 'tid' ( in 3-component vector of uint)
0:? Sequence
0:7 Sequence
0:7 move second child to first child ( temp uint)
0:7 'storeTemp' ( temp uint)
0:7 Convert int to uint ( temp uint)
0:7 textureFetch ( temp int)
0:7 'IN' (layout( binding=0) uniform itexture3D)
0:7 'tid' ( in 3-component vector of uint)
0:7 Constant:
0:7 0 (const int)
0:7 imageStore ( temp void)
0:7 'OUT' (layout( binding=1 r32ui) uniform uimage3D)
0:7 'tid' ( in 3-component vector of uint)
0:7 'storeTemp' ( temp uint)
0:7 'storeTemp' ( temp uint)
0:6 Function Definition: main( ( temp void)
0:6 Function Parameters:
0:? Sequence
0:6 move second child to first child ( temp 3-component vector of uint)
0:? 'tid' ( temp 3-component vector of uint)
0:? 'tid' ( in 3-component vector of uint GlobalInvocationID)
0:6 Function Call: @main(vu3; ( temp void)
0:? 'tid' ( temp 3-component vector of uint)
0:? Linker Objects
0:? 'IN' (layout( binding=0) uniform itexture3D)
0:? 'OUT' (layout( binding=1 r32ui) uniform uimage3D)
0:? 'tid' ( in 3-component vector of uint GlobalInvocationID)
Linked compute stage:
Shader version: 500
local_size = (8, 8, 8)
0:? Sequence
0:6 Function Definition: @main(vu3; ( temp void)
0:6 Function Parameters:
0:6 'tid' ( in 3-component vector of uint)
0:? Sequence
0:7 Sequence
0:7 move second child to first child ( temp uint)
0:7 'storeTemp' ( temp uint)
0:7 Convert int to uint ( temp uint)
0:7 textureFetch ( temp int)
0:7 'IN' (layout( binding=0) uniform itexture3D)
0:7 'tid' ( in 3-component vector of uint)
0:7 Constant:
0:7 0 (const int)
0:7 imageStore ( temp void)
0:7 'OUT' (layout( binding=1 r32ui) uniform uimage3D)
0:7 'tid' ( in 3-component vector of uint)
0:7 'storeTemp' ( temp uint)
0:7 'storeTemp' ( temp uint)
0:6 Function Definition: main( ( temp void)
0:6 Function Parameters:
0:? Sequence
0:6 move second child to first child ( temp 3-component vector of uint)
0:? 'tid' ( temp 3-component vector of uint)
0:? 'tid' ( in 3-component vector of uint GlobalInvocationID)
0:6 Function Call: @main(vu3; ( temp void)
0:? 'tid' ( temp 3-component vector of uint)
0:? Linker Objects
0:? 'IN' (layout( binding=0) uniform itexture3D)
0:? 'OUT' (layout( binding=1 r32ui) uniform uimage3D)
0:? 'tid' ( in 3-component vector of uint GlobalInvocationID)
// Module Version 10000
// Generated by (magic number): 80004
// Id's are bound by 39
Capability Shader
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint GLCompute 4 "main" 34
ExecutionMode 4 LocalSize 8 8 8
Source HLSL 500
Name 4 "main"
Name 11 "@main(vu3;"
Name 10 "tid"
Name 14 "storeTemp"
Name 18 "IN"
Name 28 "OUT"
Name 32 "tid"
Name 34 "tid"
Name 36 "param"
Decorate 18(IN) DescriptorSet 0
Decorate 18(IN) Binding 0
Decorate 28(OUT) DescriptorSet 0
Decorate 28(OUT) Binding 1
Decorate 34(tid) BuiltIn GlobalInvocationId
2: TypeVoid
3: TypeFunction 2
6: TypeInt 32 0
7: TypeVector 6(int) 3
8: TypePointer Function 7(ivec3)
9: TypeFunction 2 8(ptr)
13: TypePointer Function 6(int)
15: TypeInt 32 1
16: TypeImage 15(int) 3D sampled format:Unknown
17: TypePointer UniformConstant 16
18(IN): 17(ptr) Variable UniformConstant
21: 15(int) Constant 0
22: TypeVector 15(int) 4
26: TypeImage 6(int) 3D nonsampled format:R32ui
27: TypePointer UniformConstant 26
28(OUT): 27(ptr) Variable UniformConstant
33: TypePointer Input 7(ivec3)
34(tid): 33(ptr) Variable Input
4(main): 2 Function None 3
5: Label
32(tid): 8(ptr) Variable Function
36(param): 8(ptr) Variable Function
35: 7(ivec3) Load 34(tid)
Store 32(tid) 35
37: 7(ivec3) Load 32(tid)
Store 36(param) 37
38: 2 FunctionCall 11(@main(vu3;) 36(param)
Return
FunctionEnd
11(@main(vu3;): 2 Function None 9
10(tid): 8(ptr) FunctionParameter
12: Label
14(storeTemp): 13(ptr) Variable Function
19: 16 Load 18(IN)
20: 7(ivec3) Load 10(tid)
23: 22(ivec4) ImageFetch 19 20 Lod 21
24: 15(int) CompositeExtract 23 0
25: 6(int) Bitcast 24
Store 14(storeTemp) 25
29: 26 Load 28(OUT)
30: 7(ivec3) Load 10(tid)
31: 6(int) Load 14(storeTemp)
ImageWrite 29 30 31
Return
FunctionEnd

View File

@ -0,0 +1,599 @@
specExamples.vert
ERROR: 0:29: 'location' : can only apply to uniform, buffer, in, or out storage qualifiers
ERROR: 0:31: 'triangles' : unrecognized layout identifier, or qualifier requires assignment (e.g., binding = 4)
ERROR: 0:31: 'invocations' : there is no such layout identifier for this stage taking an assigned value
ERROR: 0:33: 'lines' : unrecognized layout identifier, or qualifier requires assignment (e.g., binding = 4)
ERROR: 0:35: 'triangle_strip' : unrecognized layout identifier, or qualifier requires assignment (e.g., binding = 4)
ERROR: 0:35: 'max_vertices' : there is no such layout identifier for this stage taking an assigned value
ERROR: 0:36: 'max_vertices' : there is no such layout identifier for this stage taking an assigned value
ERROR: 0:37: 'triangle_strip' : unrecognized layout identifier, or qualifier requires assignment (e.g., binding = 4)
ERROR: 0:41: 'stream' : there is no such layout identifier for this stage taking an assigned value
ERROR: 0:43: 'stream' : there is no such layout identifier for this stage taking an assigned value
ERROR: 0:45: 'stream' : there is no such layout identifier for this stage taking an assigned value
ERROR: 0:46: 'stream' : there is no such layout identifier for this stage taking an assigned value
ERROR: 0:47: 'stream' : there is no such layout identifier for this stage taking an assigned value
ERROR: 0:50: 'stream' : there is no such layout identifier for this stage taking an assigned value
ERROR: 0:55: 'stream' : there is no such layout identifier for this stage taking an assigned value
ERROR: 0:80: 's17' : redefinition
ERROR: 0:85: 'binding' : atomic_uint binding is too large; see gl_MaxAtomicCounterBindings
ERROR: 0:87: 'binding' : atomic_uint binding is too large; see gl_MaxAtomicCounterBindings
ERROR: 0:89: 'binding' : atomic_uint binding is too large
ERROR: 0:91: 'bar' : redefinition
ERROR: 0:92: 'atomic_uint' : layout(binding=X) is required
ERROR: 0:94: 'a2' : redefinition
ERROR: 0:95: 'binding' : atomic_uint binding is too large; see gl_MaxAtomicCounterBindings
ERROR: 0:96: 'binding' : atomic_uint binding is too large; see gl_MaxAtomicCounterBindings
ERROR: 0:97: 'binding' : atomic_uint binding is too large; see gl_MaxAtomicCounterBindings
ERROR: 0:106: '' : vertex input cannot be further qualified
ERROR: 0:106: 'redeclaration' : cannot change storage, memory, or auxiliary qualification of gl_FrontColor
ERROR: 0:112: 'ColorIvn' : identifier not previously declared
ERROR: 0:132: 'shared' : not supported in this stage: vertex
ERROR: 0:134: '' : function does not return a value: funcA
ERROR: 0:136: '' : function does not return a value: funcB
ERROR: 0:153: '' : function does not return a value: func3
ERROR: 0:170: 'coherent' : argument cannot drop memory qualifier when passed to formal parameter
ERROR: 33 compilation errors. No code generated.
Shader version: 430
Requested GL_3DL_array_objects
ERROR: node is still EOpNull!
0:134 Function Definition: funcA(I21; ( global 4-component vector of float)
0:134 Function Parameters:
0:134 'a' ( restrict in image2D)
0:136 Function Definition: funcB(I21; ( global 4-component vector of float)
0:136 Function Parameters:
0:136 'a' ( in image2D)
0:140 Function Definition: func(f1;f1;f1;f1; ( global float)
0:140 Function Parameters:
0:140 'e' ( in float)
0:140 'f' ( in float)
0:140 'g' ( in float)
0:140 'h' ( in float)
0:142 Sequence
0:142 Branch: Return with expression
0:142 add ( temp float)
0:142 component-wise multiply ( temp float)
0:142 'e' ( in float)
0:142 'f' ( in float)
0:142 component-wise multiply ( temp float)
0:142 'g' ( in float)
0:142 'h' ( in float)
0:146 Function Definition: func2(f1;f1;f1;f1; ( global float)
0:146 Function Parameters:
0:146 'e' ( in float)
0:146 'f' ( in float)
0:146 'g' ( in float)
0:146 'h' ( in float)
0:148 Sequence
0:148 Sequence
0:148 move second child to first child ( temp float)
0:148 'result' ( noContraction temp float)
0:148 add ( temp float)
0:148 component-wise multiply ( temp float)
0:148 'e' ( in float)
0:148 'f' ( in float)
0:148 component-wise multiply ( temp float)
0:148 'g' ( in float)
0:148 'h' ( in float)
0:150 Branch: Return with expression
0:150 'result' ( noContraction temp float)
0:153 Function Definition: func3(f1;f1;f1; ( global float)
0:153 Function Parameters:
0:153 'i' ( in float)
0:153 'j' ( in float)
0:153 'k' ( noContraction out float)
0:155 Sequence
0:155 move second child to first child ( temp float)
0:155 'k' ( noContraction out float)
0:155 add ( temp float)
0:155 component-wise multiply ( temp float)
0:155 'i' ( in float)
0:155 'i' ( in float)
0:155 'j' ( in float)
0:158 Function Definition: main( ( global void)
0:158 Function Parameters:
0:160 Sequence
0:160 Sequence
0:160 move second child to first child ( temp 3-component vector of float)
0:160 'r' ( temp 3-component vector of float)
0:160 Construct vec3 ( temp 3-component vector of float)
0:160 component-wise multiply ( temp 4-component vector of float)
0:160 'a' ( in 4-component vector of float)
0:160 'b' ( in 4-component vector of float)
0:161 Sequence
0:161 move second child to first child ( temp 3-component vector of float)
0:161 's' ( temp 3-component vector of float)
0:161 Construct vec3 ( temp 3-component vector of float)
0:161 component-wise multiply ( temp 4-component vector of float)
0:161 'c' ( in 4-component vector of float)
0:161 'd' ( in 4-component vector of float)
0:162 move second child to first child ( temp 3-component vector of float)
0:162 vector swizzle ( noContraction temp 3-component vector of float)
0:162 'v' ( noContraction smooth out 4-component vector of float)
0:162 Sequence
0:162 Constant:
0:162 0 (const int)
0:162 Constant:
0:162 1 (const int)
0:162 Constant:
0:162 2 (const int)
0:162 add ( temp 3-component vector of float)
0:162 'r' ( temp 3-component vector of float)
0:162 's' ( temp 3-component vector of float)
0:163 move second child to first child ( temp float)
0:163 direct index ( noContraction temp float)
0:163 'v' ( noContraction smooth out 4-component vector of float)
0:163 Constant:
0:163 3 (const int)
0:163 add ( temp float)
0:163 component-wise multiply ( temp float)
0:163 direct index ( temp float)
0:163 'a' ( in 4-component vector of float)
0:163 Constant:
0:163 3 (const int)
0:163 direct index ( temp float)
0:163 'b' ( in 4-component vector of float)
0:163 Constant:
0:163 3 (const int)
0:163 component-wise multiply ( temp float)
0:163 direct index ( temp float)
0:163 'c' ( in 4-component vector of float)
0:163 Constant:
0:163 3 (const int)
0:163 direct index ( temp float)
0:163 'd' ( in 4-component vector of float)
0:163 Constant:
0:163 3 (const int)
0:164 move second child to first child ( temp float)
0:164 direct index ( noContraction temp float)
0:164 'v' ( noContraction smooth out 4-component vector of float)
0:164 Constant:
0:164 0 (const int)
0:164 Function Call: func(f1;f1;f1;f1; ( global float)
0:164 direct index ( temp float)
0:164 'a' ( in 4-component vector of float)
0:164 Constant:
0:164 0 (const int)
0:164 direct index ( temp float)
0:164 'b' ( in 4-component vector of float)
0:164 Constant:
0:164 0 (const int)
0:164 direct index ( temp float)
0:164 'c' ( in 4-component vector of float)
0:164 Constant:
0:164 0 (const int)
0:164 direct index ( temp float)
0:164 'd' ( in 4-component vector of float)
0:164 Constant:
0:164 0 (const int)
0:166 move second child to first child ( temp float)
0:166 direct index ( noContraction temp float)
0:166 'v' ( noContraction smooth out 4-component vector of float)
0:166 Constant:
0:166 0 (const int)
0:166 Function Call: func2(f1;f1;f1;f1; ( global float)
0:166 direct index ( temp float)
0:166 'a' ( in 4-component vector of float)
0:166 Constant:
0:166 0 (const int)
0:166 direct index ( temp float)
0:166 'b' ( in 4-component vector of float)
0:166 Constant:
0:166 0 (const int)
0:166 direct index ( temp float)
0:166 'c' ( in 4-component vector of float)
0:166 Constant:
0:166 0 (const int)
0:166 direct index ( temp float)
0:166 'd' ( in 4-component vector of float)
0:166 Constant:
0:166 0 (const int)
0:167 Function Call: func3(f1;f1;f1; ( global float)
0:167 component-wise multiply ( temp float)
0:167 direct index ( temp float)
0:167 'a' ( in 4-component vector of float)
0:167 Constant:
0:167 0 (const int)
0:167 direct index ( temp float)
0:167 'b' ( in 4-component vector of float)
0:167 Constant:
0:167 0 (const int)
0:167 component-wise multiply ( temp float)
0:167 direct index ( temp float)
0:167 'c' ( in 4-component vector of float)
0:167 Constant:
0:167 0 (const int)
0:167 direct index ( temp float)
0:167 'd' ( in 4-component vector of float)
0:167 Constant:
0:167 0 (const int)
0:167 direct index ( noContraction temp float)
0:167 'v' ( noContraction smooth out 4-component vector of float)
0:167 Constant:
0:167 0 (const int)
0:169 Function Call: funcA(I21; ( global 4-component vector of float)
0:169 'img1' (layout( rgba32f) uniform image2D)
0:170 Function Call: funcB(I21; ( global 4-component vector of float)
0:170 'img2' (layout( rgba32f) coherent uniform image2D)
0:? Sequence
0:178 Sequence
0:178 move second child to first child ( temp structure{ temp float intensity, temp 3-component vector of float position})
0:178 'lightVar' ( temp structure{ temp float intensity, temp 3-component vector of float position})
0:178 Constant:
0:178 3.000000
0:178 1.000000
0:178 2.000000
0:178 3.000000
0:? Sequence
0:185 Sequence
0:185 move second child to first child ( temp 5-element array of float)
0:185 'a' ( temp 5-element array of float)
0:185 Construct float ( temp 5-element array of float)
0:185 'g' ( temp float)
0:185 Constant:
0:185 1.000000
0:185 'g' ( temp float)
0:185 Constant:
0:185 2.300000
0:185 'g' ( temp float)
0:188 move second child to first child ( temp 3-element array of float)
0:188 'b' ( temp 3-element array of float)
0:188 Construct float ( temp 3-element array of float)
0:188 'g' ( temp float)
0:188 add ( temp float)
0:188 'g' ( temp float)
0:188 Constant:
0:188 1.000000
0:188 add ( temp float)
0:188 'g' ( temp float)
0:188 Constant:
0:188 2.000000
0:191 Sequence
0:191 Sequence
0:191 move second child to first child ( temp 2-element array of 4-component vector of float)
0:191 'b' ( temp 2-element array of 4-component vector of float)
0:191 Constant:
0:191 1.000000
0:191 1.000000
0:191 1.000000
0:191 1.000000
0:191 1.000000
0:191 1.000000
0:191 1.000000
0:191 1.000000
0:192 Construct vec4 ( temp 3-element array of 2-element array of 4-component vector of float)
0:192 'b' ( temp 2-element array of 4-component vector of float)
0:192 'b' ( temp 2-element array of 4-component vector of float)
0:192 'b' ( temp 2-element array of 4-component vector of float)
0:193 Construct vec4 ( temp 3-element array of 2-element array of 4-component vector of float)
0:193 'b' ( temp 2-element array of 4-component vector of float)
0:193 'b' ( temp 2-element array of 4-component vector of float)
0:193 'b' ( temp 2-element array of 4-component vector of float)
0:194 Construct vec4 ( temp 3-element array of 2-element array of 4-component vector of float)
0:194 'b' ( temp 2-element array of 4-component vector of float)
0:194 'b' ( temp 2-element array of 4-component vector of float)
0:194 'b' ( temp 2-element array of 4-component vector of float)
0:? Linker Objects
0:? 'Coords' ( out block{ out 4-component vector of float Position, out 2-component vector of float Texture})
0:? 'anon@0' ( out block{ out 4-component vector of float Color})
0:? 'transforms' (layout( column_major shared) uniform 4-element array of block{layout( column_major shared) uniform 4X4 matrix of float ModelViewMatrix, layout( column_major shared) uniform 4X4 matrix of float ModelViewProjectionMatrix, layout( column_major shared) uniform implicitly-sized array of 4-component vector of float a, layout( column_major shared) uniform float Deformation})
0:? 'normal' (layout( location=3) in 4-component vector of float)
0:? 'colors' (layout( location=6) in 3-element array of 4-component vector of float)
0:? 'transforms2' (layout( location=9) in 2-element array of 4X4 matrix of float)
0:? 's' (layout( location=3) temp structure{ global 3-component vector of float a1, global 2X2 matrix of float b, global 2-element array of 4-component vector of float c})
0:? 'var1' ( smooth out 4-component vector of float)
0:? 'anon@1' ( out block{ out 4-component vector of float var2, out 2-component vector of float var3, out 3-component vector of float var4})
0:? 'var5' ( smooth out 4-component vector of float)
0:? 'anon@2' ( out block{ out 4-component vector of float var6})
0:? 'var7' ( smooth out 4-component vector of float)
0:? 'anon@3' (layout( row_major std140) uniform block{layout( row_major std140 offset=0) uniform 4X4 matrix of float M1, layout( column_major std140 offset=64) uniform 4X4 matrix of float M2, layout( row_major std140 offset=128) uniform 3X3 matrix of float N1})
0:? 'anon@4' (layout( column_major shared) uniform block{layout( column_major shared) uniform 4X4 matrix of float M13, layout( row_major shared) uniform 4X4 matrix of float m14, layout( column_major shared) uniform 3X3 matrix of float N12})
0:? 's17' (layout( binding=3) uniform sampler2D)
0:? 'a2' (layout( binding=2 offset=4) uniform atomic_uint)
0:? 'bar' (layout( binding=2) uniform atomic_uint)
0:? 'bar23' (layout( offset=8) uniform atomic_uint)
0:? 'b2' (layout( binding=2) uniform atomic_uint)
0:? 'c2' (layout( binding=3) uniform atomic_uint)
0:? 'd2' (layout( binding=2) uniform atomic_uint)
0:? 'anon@5' ( out block{ invariant gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out implicitly-sized array of float ClipDistance gl_ClipDistance, gl_ClipVertex 4-component vector of float ClipVertex gl_ClipVertex, flat 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 implicitly-sized array of 4-component vector of float TexCoord gl_TexCoord, out float FogFragCoord gl_FogFragCoord})
0:? 'ColorInv' ( smooth out 3-component vector of float)
0:? 'Color4' ( invariant centroid smooth out 3-component vector of float)
0:? 'position' ( noContraction smooth out 4-component vector of float)
0:? 'Color5' ( noContraction smooth out 3-component vector of float)
0:? 'a' ( in 4-component vector of float)
0:? 'b' ( in 4-component vector of float)
0:? 'c' ( in 4-component vector of float)
0:? 'd' ( in 4-component vector of float)
0:? 'v' ( noContraction smooth out 4-component vector of float)
0:? 'anon@6' (layout( column_major shared) coherent buffer block{layout( column_major shared) readonly buffer 4-component vector of float member1, layout( column_major shared) buffer 4-component vector of float member2})
0:? 'anon@7' (layout( column_major shared) buffer block{layout( column_major shared) coherent readonly buffer 4-component vector of float member1A, layout( column_major shared) coherent buffer 4-component vector of float member2A})
0:? 'shv' ( shared 4-component vector of float)
0:? 'img1' (layout( rgba32f) uniform image2D)
0:? 'img2' (layout( rgba32f) coherent uniform image2D)
0:? 'gl_VertexID' ( gl_VertexId int VertexId)
0:? 'gl_InstanceID' ( gl_InstanceId int InstanceId)
Linked vertex stage:
Shader version: 430
Requested GL_3DL_array_objects
ERROR: node is still EOpNull!
0:134 Function Definition: funcA(I21; ( global 4-component vector of float)
0:134 Function Parameters:
0:134 'a' ( restrict in image2D)
0:136 Function Definition: funcB(I21; ( global 4-component vector of float)
0:136 Function Parameters:
0:136 'a' ( in image2D)
0:140 Function Definition: func(f1;f1;f1;f1; ( global float)
0:140 Function Parameters:
0:140 'e' ( in float)
0:140 'f' ( in float)
0:140 'g' ( in float)
0:140 'h' ( in float)
0:142 Sequence
0:142 Branch: Return with expression
0:142 add ( temp float)
0:142 component-wise multiply ( temp float)
0:142 'e' ( in float)
0:142 'f' ( in float)
0:142 component-wise multiply ( temp float)
0:142 'g' ( in float)
0:142 'h' ( in float)
0:146 Function Definition: func2(f1;f1;f1;f1; ( global float)
0:146 Function Parameters:
0:146 'e' ( in float)
0:146 'f' ( in float)
0:146 'g' ( in float)
0:146 'h' ( in float)
0:148 Sequence
0:148 Sequence
0:148 move second child to first child ( temp float)
0:148 'result' ( noContraction temp float)
0:148 add ( temp float)
0:148 component-wise multiply ( temp float)
0:148 'e' ( in float)
0:148 'f' ( in float)
0:148 component-wise multiply ( temp float)
0:148 'g' ( in float)
0:148 'h' ( in float)
0:150 Branch: Return with expression
0:150 'result' ( noContraction temp float)
0:153 Function Definition: func3(f1;f1;f1; ( global float)
0:153 Function Parameters:
0:153 'i' ( in float)
0:153 'j' ( in float)
0:153 'k' ( noContraction out float)
0:155 Sequence
0:155 move second child to first child ( temp float)
0:155 'k' ( noContraction out float)
0:155 add ( temp float)
0:155 component-wise multiply ( temp float)
0:155 'i' ( in float)
0:155 'i' ( in float)
0:155 'j' ( in float)
0:158 Function Definition: main( ( global void)
0:158 Function Parameters:
0:160 Sequence
0:160 Sequence
0:160 move second child to first child ( temp 3-component vector of float)
0:160 'r' ( temp 3-component vector of float)
0:160 Construct vec3 ( temp 3-component vector of float)
0:160 component-wise multiply ( temp 4-component vector of float)
0:160 'a' ( in 4-component vector of float)
0:160 'b' ( in 4-component vector of float)
0:161 Sequence
0:161 move second child to first child ( temp 3-component vector of float)
0:161 's' ( temp 3-component vector of float)
0:161 Construct vec3 ( temp 3-component vector of float)
0:161 component-wise multiply ( temp 4-component vector of float)
0:161 'c' ( in 4-component vector of float)
0:161 'd' ( in 4-component vector of float)
0:162 move second child to first child ( temp 3-component vector of float)
0:162 vector swizzle ( noContraction temp 3-component vector of float)
0:162 'v' ( noContraction smooth out 4-component vector of float)
0:162 Sequence
0:162 Constant:
0:162 0 (const int)
0:162 Constant:
0:162 1 (const int)
0:162 Constant:
0:162 2 (const int)
0:162 add ( temp 3-component vector of float)
0:162 'r' ( temp 3-component vector of float)
0:162 's' ( temp 3-component vector of float)
0:163 move second child to first child ( temp float)
0:163 direct index ( noContraction temp float)
0:163 'v' ( noContraction smooth out 4-component vector of float)
0:163 Constant:
0:163 3 (const int)
0:163 add ( temp float)
0:163 component-wise multiply ( temp float)
0:163 direct index ( temp float)
0:163 'a' ( in 4-component vector of float)
0:163 Constant:
0:163 3 (const int)
0:163 direct index ( temp float)
0:163 'b' ( in 4-component vector of float)
0:163 Constant:
0:163 3 (const int)
0:163 component-wise multiply ( temp float)
0:163 direct index ( temp float)
0:163 'c' ( in 4-component vector of float)
0:163 Constant:
0:163 3 (const int)
0:163 direct index ( temp float)
0:163 'd' ( in 4-component vector of float)
0:163 Constant:
0:163 3 (const int)
0:164 move second child to first child ( temp float)
0:164 direct index ( noContraction temp float)
0:164 'v' ( noContraction smooth out 4-component vector of float)
0:164 Constant:
0:164 0 (const int)
0:164 Function Call: func(f1;f1;f1;f1; ( global float)
0:164 direct index ( temp float)
0:164 'a' ( in 4-component vector of float)
0:164 Constant:
0:164 0 (const int)
0:164 direct index ( temp float)
0:164 'b' ( in 4-component vector of float)
0:164 Constant:
0:164 0 (const int)
0:164 direct index ( temp float)
0:164 'c' ( in 4-component vector of float)
0:164 Constant:
0:164 0 (const int)
0:164 direct index ( temp float)
0:164 'd' ( in 4-component vector of float)
0:164 Constant:
0:164 0 (const int)
0:166 move second child to first child ( temp float)
0:166 direct index ( noContraction temp float)
0:166 'v' ( noContraction smooth out 4-component vector of float)
0:166 Constant:
0:166 0 (const int)
0:166 Function Call: func2(f1;f1;f1;f1; ( global float)
0:166 direct index ( temp float)
0:166 'a' ( in 4-component vector of float)
0:166 Constant:
0:166 0 (const int)
0:166 direct index ( temp float)
0:166 'b' ( in 4-component vector of float)
0:166 Constant:
0:166 0 (const int)
0:166 direct index ( temp float)
0:166 'c' ( in 4-component vector of float)
0:166 Constant:
0:166 0 (const int)
0:166 direct index ( temp float)
0:166 'd' ( in 4-component vector of float)
0:166 Constant:
0:166 0 (const int)
0:167 Function Call: func3(f1;f1;f1; ( global float)
0:167 component-wise multiply ( temp float)
0:167 direct index ( temp float)
0:167 'a' ( in 4-component vector of float)
0:167 Constant:
0:167 0 (const int)
0:167 direct index ( temp float)
0:167 'b' ( in 4-component vector of float)
0:167 Constant:
0:167 0 (const int)
0:167 component-wise multiply ( temp float)
0:167 direct index ( temp float)
0:167 'c' ( in 4-component vector of float)
0:167 Constant:
0:167 0 (const int)
0:167 direct index ( temp float)
0:167 'd' ( in 4-component vector of float)
0:167 Constant:
0:167 0 (const int)
0:167 direct index ( noContraction temp float)
0:167 'v' ( noContraction smooth out 4-component vector of float)
0:167 Constant:
0:167 0 (const int)
0:169 Function Call: funcA(I21; ( global 4-component vector of float)
0:169 'img1' (layout( rgba32f) uniform image2D)
0:170 Function Call: funcB(I21; ( global 4-component vector of float)
0:170 'img2' (layout( rgba32f) coherent uniform image2D)
0:? Sequence
0:178 Sequence
0:178 move second child to first child ( temp structure{ temp float intensity, temp 3-component vector of float position})
0:178 'lightVar' ( temp structure{ temp float intensity, temp 3-component vector of float position})
0:178 Constant:
0:178 3.000000
0:178 1.000000
0:178 2.000000
0:178 3.000000
0:? Sequence
0:185 Sequence
0:185 move second child to first child ( temp 5-element array of float)
0:185 'a' ( temp 5-element array of float)
0:185 Construct float ( temp 5-element array of float)
0:185 'g' ( temp float)
0:185 Constant:
0:185 1.000000
0:185 'g' ( temp float)
0:185 Constant:
0:185 2.300000
0:185 'g' ( temp float)
0:188 move second child to first child ( temp 3-element array of float)
0:188 'b' ( temp 3-element array of float)
0:188 Construct float ( temp 3-element array of float)
0:188 'g' ( temp float)
0:188 add ( temp float)
0:188 'g' ( temp float)
0:188 Constant:
0:188 1.000000
0:188 add ( temp float)
0:188 'g' ( temp float)
0:188 Constant:
0:188 2.000000
0:191 Sequence
0:191 Sequence
0:191 move second child to first child ( temp 2-element array of 4-component vector of float)
0:191 'b' ( temp 2-element array of 4-component vector of float)
0:191 Constant:
0:191 1.000000
0:191 1.000000
0:191 1.000000
0:191 1.000000
0:191 1.000000
0:191 1.000000
0:191 1.000000
0:191 1.000000
0:192 Construct vec4 ( temp 3-element array of 2-element array of 4-component vector of float)
0:192 'b' ( temp 2-element array of 4-component vector of float)
0:192 'b' ( temp 2-element array of 4-component vector of float)
0:192 'b' ( temp 2-element array of 4-component vector of float)
0:193 Construct vec4 ( temp 3-element array of 2-element array of 4-component vector of float)
0:193 'b' ( temp 2-element array of 4-component vector of float)
0:193 'b' ( temp 2-element array of 4-component vector of float)
0:193 'b' ( temp 2-element array of 4-component vector of float)
0:194 Construct vec4 ( temp 3-element array of 2-element array of 4-component vector of float)
0:194 'b' ( temp 2-element array of 4-component vector of float)
0:194 'b' ( temp 2-element array of 4-component vector of float)
0:194 'b' ( temp 2-element array of 4-component vector of float)
0:? Linker Objects
0:? 'Coords' ( out block{ out 4-component vector of float Position, out 2-component vector of float Texture})
0:? 'anon@0' ( out block{ out 4-component vector of float Color})
0:? 'transforms' (layout( column_major shared) uniform 4-element array of block{layout( column_major shared) uniform 4X4 matrix of float ModelViewMatrix, layout( column_major shared) uniform 4X4 matrix of float ModelViewProjectionMatrix, layout( column_major shared) uniform 1-element array of 4-component vector of float a, layout( column_major shared) uniform float Deformation})
0:? 'normal' (layout( location=3) in 4-component vector of float)
0:? 'colors' (layout( location=6) in 3-element array of 4-component vector of float)
0:? 'transforms2' (layout( location=9) in 2-element array of 4X4 matrix of float)
0:? 's' (layout( location=3) temp structure{ global 3-component vector of float a1, global 2X2 matrix of float b, global 2-element array of 4-component vector of float c})
0:? 'var1' ( smooth out 4-component vector of float)
0:? 'anon@1' ( out block{ out 4-component vector of float var2, out 2-component vector of float var3, out 3-component vector of float var4})
0:? 'var5' ( smooth out 4-component vector of float)
0:? 'anon@2' ( out block{ out 4-component vector of float var6})
0:? 'var7' ( smooth out 4-component vector of float)
0:? 'anon@3' (layout( row_major std140) uniform block{layout( row_major std140 offset=0) uniform 4X4 matrix of float M1, layout( column_major std140 offset=64) uniform 4X4 matrix of float M2, layout( row_major std140 offset=128) uniform 3X3 matrix of float N1})
0:? 'anon@4' (layout( column_major shared) uniform block{layout( column_major shared) uniform 4X4 matrix of float M13, layout( row_major shared) uniform 4X4 matrix of float m14, layout( column_major shared) uniform 3X3 matrix of float N12})
0:? 's17' (layout( binding=3) uniform sampler2D)
0:? 'a2' (layout( binding=2 offset=4) uniform atomic_uint)
0:? 'bar' (layout( binding=2) uniform atomic_uint)
0:? 'bar23' (layout( offset=8) uniform atomic_uint)
0:? 'b2' (layout( binding=2) uniform atomic_uint)
0:? 'c2' (layout( binding=3) uniform atomic_uint)
0:? 'd2' (layout( binding=2) uniform atomic_uint)
0:? 'anon@5' ( out block{ invariant 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, flat 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})
0:? 'ColorInv' ( smooth out 3-component vector of float)
0:? 'Color4' ( invariant centroid smooth out 3-component vector of float)
0:? 'position' ( noContraction smooth out 4-component vector of float)
0:? 'Color5' ( noContraction smooth out 3-component vector of float)
0:? 'a' ( in 4-component vector of float)
0:? 'b' ( in 4-component vector of float)
0:? 'c' ( in 4-component vector of float)
0:? 'd' ( in 4-component vector of float)
0:? 'v' ( noContraction smooth out 4-component vector of float)
0:? 'anon@6' (layout( column_major shared) coherent buffer block{layout( column_major shared) readonly buffer 4-component vector of float member1, layout( column_major shared) buffer 4-component vector of float member2})
0:? 'anon@7' (layout( column_major shared) buffer block{layout( column_major shared) coherent readonly buffer 4-component vector of float member1A, layout( column_major shared) coherent buffer 4-component vector of float member2A})
0:? 'shv' ( shared 4-component vector of float)
0:? 'img1' (layout( rgba32f) uniform image2D)
0:? 'img2' (layout( rgba32f) coherent uniform image2D)
0:? 'gl_VertexID' ( gl_VertexId int VertexId)
0:? 'gl_InstanceID' ( gl_InstanceId int InstanceId)

View File

@ -0,0 +1,45 @@
spv.constStruct.vert
// Module Version 10000
// Generated by (magic number): 80004
// Id's are bound by 23
Capability Shader
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint Vertex 4 "main"
Source GLSL 450
Name 4 "main"
Name 9 "T"
MemberName 9(T) 0 "m"
Name 10 "U"
MemberName 10(U) 0 "m"
Name 11 "S"
MemberName 11(S) 0 "t"
MemberName 11(S) 1 "u"
Name 13 "s1"
Name 22 "s2"
2: TypeVoid
3: TypeFunction 2
6: TypeFloat 32
7: TypeVector 6(float) 2
8: TypeMatrix 7(fvec2) 2
9(T): TypeStruct 8
10(U): TypeStruct 8
11(S): TypeStruct 9(T) 10(U)
12: TypePointer Function 11(S)
14: 6(float) Constant 1065353216
15: 6(float) Constant 0
16: 7(fvec2) ConstantComposite 14 15
17: 7(fvec2) ConstantComposite 15 14
18: 8 ConstantComposite 16 17
19: 9(T) ConstantComposite 18
20: 10(U) ConstantComposite 18
21: 11(S) ConstantComposite 19 20
4(main): 2 Function None 3
5: Label
13(s1): 12(ptr) Variable Function
22(s2): 12(ptr) Variable Function
Store 13(s1) 21
Store 22(s2) 21
Return
FunctionEnd

View File

@ -0,0 +1,8 @@
Texture3D<int> IN: register(t0);
RWTexture3D<uint> OUT: register(u1);
[numthreads(8,8,8)]
void main(uint3 tid: SV_DispatchThreadID)
{
OUT[tid] = IN[tid];
}

View File

@ -0,0 +1,22 @@
#version 450
precision highp float;
struct U {
mat2 m;
};
struct T {
mat2 m;
};
struct S {
T t;
U u;
};
void main()
{
S s1 = S(T(mat2(1.0)), U(mat2(1.0)));
S s2 = S(T(mat2(1.0)), U(mat2(1.0)));
}