glslang/Test/baseResults/spv.310.comp.out
John Kessenich c9a808319a SPV arrays: Add support for runtime-sized array types and arrays of arrays.
This includes run-time block.member.length() (OpArrayLength).
2015-09-13 10:18:19 -06:00

126 lines
6.1 KiB
Plaintext

spv.310.comp
Warning, version 310 is not yet complete; most version-specific features are present, but some are missing.
Linked compute stage:
// Module Version 99
// Generated by (magic number): 51a00bb
// Id's are bound by 72
Source ESSL 310
Capability Shader
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint GLCompute 4 "main"
Name 4 "main"
Name 14 "outb"
MemberName 14(outb) 0 "f"
MemberName 14(outb) 1 "g"
MemberName 14(outb) 2 "h"
MemberName 14(outb) 3 "uns"
Name 16 "outbname"
Name 20 "s"
Name 25 "outbna"
MemberName 25(outbna) 0 "k"
MemberName 25(outbna) 1 "na"
Name 27 "outbnamena"
Name 47 "i"
Name 53 "outs"
MemberName 53(outs) 0 "s"
MemberName 53(outs) 1 "va"
Name 55 "outnames"
Name 59 "gl_LocalInvocationID"
Decorate 14(outb) GLSLShared
Decorate 14(outb) BufferBlock
Decorate 25(outbna) GLSLShared
Decorate 25(outbna) BufferBlock
Decorate 53(outs) GLSLShared
Decorate 53(outs) BufferBlock
Decorate 59(gl_LocalInvocationID) BuiltIn LocalInvocationId
Decorate 71 BuiltIn WorkgroupSize
Decorate 71 NoStaticUse
2: TypeVoid
3: TypeFunction 2
7: TypeInt 32 0
8: 7(int) Constant 1
9: 7(int) Constant 1023
10: 7(int) Constant 0
11: TypeFloat 32
12: TypeVector 11(float) 3
13: TypeRuntimeArray 12(fvec3)
14(outb): TypeStruct 11(float) 11(float) 11(float) 13
15: TypePointer Uniform 14(outb)
16(outbname): 15(ptr) Variable Uniform
17: TypeInt 32 1
18: 17(int) Constant 0
19: TypePointer WorkgroupLocal 11(float)
20(s): 19(ptr) Variable WorkgroupLocal
22: TypePointer Uniform 11(float)
24: TypeVector 11(float) 4
25(outbna): TypeStruct 17(int) 24(fvec4)
26: TypePointer Uniform 25(outbna)
27(outbnamena): 26(ptr) Variable Uniform
28: 17(int) Constant 1
31: TypePointer Uniform 24(fvec4)
33: TypeRuntimeArray 12(fvec3)
34: 17(int) Constant 3
35: 17(int) Constant 18
36: TypePointer Uniform 12(fvec3)
40: TypeRuntimeArray 12(fvec3)
41: 17(int) Constant 17
42: 11(float) Constant 1077936128
43: 12(fvec3) ConstantComposite 42 42 42
45: TypeRuntimeArray 12(fvec3)
46: TypePointer WorkgroupLocal 17(int)
47(i): 46(ptr) Variable WorkgroupLocal
52: TypeRuntimeArray 24(fvec4)
53(outs): TypeStruct 17(int) 52
54: TypePointer Uniform 53(outs)
55(outnames): 54(ptr) Variable Uniform
56: TypeRuntimeArray 24(fvec4)
57: TypeVector 7(int) 3
58: TypePointer Input 57(ivec3)
59(gl_LocalInvocationID): 58(ptr) Variable Input
66: TypePointer Uniform 17(int)
68: 7(int) Constant 16
69: 7(int) Constant 32
70: 7(int) Constant 4
71: 57(ivec3) ConstantComposite 68 69 70
4(main): 2 Function None 3
5: Label
MemoryBarrier 8 9
ControlBarrier 8 8 10
21: 11(float) Load 20(s)
23: 22(ptr) AccessChain 16(outbname) 18
Store 23 21
29: 11(float) Load 20(s)
30: 24(fvec4) CompositeConstruct 29 29 29 29
32: 31(ptr) AccessChain 27(outbnamena) 28
Store 32 30
37: 36(ptr) AccessChain 16(outbname) 34 35
38: 12(fvec3) Load 37
39: 11(float) CompositeExtract 38 0
Store 20(s) 39
44: 36(ptr) AccessChain 16(outbname) 34 41
Store 44 43
48: 17(int) Load 47(i)
49: 11(float) Load 20(s)
50: 12(fvec3) CompositeConstruct 49 49 49
51: 36(ptr) AccessChain 16(outbname) 34 48
Store 51 50
60: 57(ivec3) Load 59(gl_LocalInvocationID)
61: 7(int) CompositeExtract 60 0
62: 11(float) Load 20(s)
63: 24(fvec4) CompositeConstruct 62 62 62 62
64: 31(ptr) AccessChain 55(outnames) 28 61
Store 64 63
65: 17(int) ArrayLength 16(outbname)
67: 66(ptr) AccessChain 55(outnames) 18
Store 67 65
Branch 6
6: Label
Return
FunctionEnd