After construction, the Loop is effectively const. This perturbs the IDs in SPIR-V tests because the body block is created before generating any of the loop code, rather than only when the body is first referenced.
219 lines
10 KiB
Plaintext
219 lines
10 KiB
Plaintext
spv.localAggregates.frag
|
|
WARNING: 0:4: varying deprecated in version 130; may be removed in future release
|
|
WARNING: 0:5: varying deprecated in version 130; may be removed in future release
|
|
|
|
|
|
Linked fragment stage:
|
|
|
|
|
|
// Module Version 99
|
|
// Generated by (magic number): 51a00bb
|
|
// Id's are bound by 134
|
|
|
|
Source GLSL 130
|
|
1: ExtInstImport "GLSL.std.450"
|
|
MemoryModel Logical GLSL450
|
|
EntryPoint Fragment 4
|
|
Name 4 "main"
|
|
Name 9 "s1"
|
|
MemberName 9(s1) 0 "i"
|
|
MemberName 9(s1) 1 "f"
|
|
Name 11 "s2"
|
|
MemberName 11(s2) 0 "i"
|
|
MemberName 11(s2) 1 "f"
|
|
MemberName 11(s2) 2 "s1_1"
|
|
MemberName 11(s2) 3 "bleh"
|
|
Name 13 "locals2"
|
|
Name 14 "s3"
|
|
MemberName 14(s3) 0 "s2_1"
|
|
MemberName 14(s3) 1 "i"
|
|
MemberName 14(s3) 2 "f"
|
|
MemberName 14(s3) 3 "s1_1"
|
|
Name 16 "foo3"
|
|
Name 37 "localFArray"
|
|
Name 41 "coord"
|
|
Name 48 "localIArray"
|
|
Name 67 "x"
|
|
Name 69 "localArray"
|
|
Name 74 "i"
|
|
Name 81 "a"
|
|
Name 87 "condition"
|
|
Name 95 "color"
|
|
Name 105 "gl_FragColor"
|
|
Name 124 "sampler"
|
|
Name 130 "foo"
|
|
Name 131 "foo2"
|
|
Name 133 "uFloatArray"
|
|
Decorate 41(coord) Smooth
|
|
Decorate 95(color) Smooth
|
|
Decorate 105(gl_FragColor) BuiltIn FragColor
|
|
Decorate 130(foo) NoStaticUse
|
|
Decorate 131(foo2) NoStaticUse
|
|
Decorate 133(uFloatArray) NoStaticUse
|
|
2: TypeVoid
|
|
3: TypeFunction 2
|
|
7: TypeInt 32 1
|
|
8: TypeFloat 32
|
|
9(s1): TypeStruct 7(int) 8(float)
|
|
10: TypeVector 8(float) 4
|
|
11(s2): TypeStruct 7(int) 8(float) 9(s1) 10(fvec4)
|
|
12: TypePointer Function 11(s2)
|
|
14(s3): TypeStruct 11(s2) 7(int) 8(float) 9(s1)
|
|
15: TypePointer UniformConstant 14(s3)
|
|
16(foo3): 15(ptr) Variable UniformConstant
|
|
17: 7(int) Constant 0
|
|
18: TypePointer UniformConstant 11(s2)
|
|
21: TypePointer UniformConstant 7(int)
|
|
24: TypeBool
|
|
28: 7(int) Constant 2
|
|
29: 7(int) Constant 1
|
|
30: 8(float) Constant 1065353216
|
|
31: TypePointer Function 8(float)
|
|
33: TypeInt 32 0
|
|
34: 33(int) Constant 16
|
|
35: TypeArray 8(float) 34
|
|
36: TypePointer Function 35
|
|
38: 7(int) Constant 4
|
|
39: TypeVector 8(float) 2
|
|
40: TypePointer Input 39(fvec2)
|
|
41(coord): 40(ptr) Variable Input
|
|
45: 33(int) Constant 8
|
|
46: TypeArray 7(int) 45
|
|
47: TypePointer Function 46
|
|
51: TypePointer Function 7(int)
|
|
68: 7(int) Constant 5
|
|
79: 7(int) Constant 16
|
|
83: 8(float) Constant 0
|
|
87(condition): 21(ptr) Variable UniformConstant
|
|
93: 7(int) Constant 3
|
|
94: TypePointer Input 10(fvec4)
|
|
95(color): 94(ptr) Variable Input
|
|
97: TypePointer Function 10(fvec4)
|
|
104: TypePointer Output 10(fvec4)
|
|
105(gl_FragColor): 104(ptr) Variable Output
|
|
122: TypeSampler8(float) 2D filter+texture
|
|
123: TypePointer UniformConstant 122
|
|
124(sampler): 123(ptr) Variable UniformConstant
|
|
129: TypePointer UniformConstant 9(s1)
|
|
130(foo): 129(ptr) Variable UniformConstant
|
|
131(foo2): 18(ptr) Variable UniformConstant
|
|
132: TypePointer UniformConstant 35
|
|
133(uFloatArray): 132(ptr) Variable UniformConstant
|
|
4(main): 2 Function None 3
|
|
5: Label
|
|
13(locals2): 12(ptr) Variable Function
|
|
37(localFArray): 36(ptr) Variable Function
|
|
48(localIArray): 47(ptr) Variable Function
|
|
67(x): 51(ptr) Variable Function
|
|
69(localArray): 36(ptr) Variable Function
|
|
74(i): 51(ptr) Variable Function
|
|
81(a): 36(ptr) Variable Function
|
|
19: 18(ptr) AccessChain 16(foo3) 17
|
|
20: 11(s2) Load 19
|
|
Store 13(locals2) 20
|
|
22: 21(ptr) AccessChain 16(foo3) 17 17
|
|
23: 7(int) Load 22
|
|
25: 24(bool) SGreaterThan 23 17
|
|
SelectionMerge 27 None
|
|
BranchConditional 25 26 53
|
|
26: Label
|
|
32: 31(ptr) AccessChain 13(locals2) 28 29
|
|
Store 32 30
|
|
42: 39(fvec2) Load 41(coord)
|
|
43: 8(float) CompositeExtract 42 0
|
|
44: 31(ptr) AccessChain 37(localFArray) 38
|
|
Store 44 43
|
|
49: 21(ptr) AccessChain 16(foo3) 17 17
|
|
50: 7(int) Load 49
|
|
52: 51(ptr) AccessChain 48(localIArray) 28
|
|
Store 52 50
|
|
Branch 27
|
|
53: Label
|
|
54: 39(fvec2) Load 41(coord)
|
|
55: 8(float) CompositeExtract 54 0
|
|
56: 31(ptr) AccessChain 13(locals2) 28 29
|
|
Store 56 55
|
|
57: 31(ptr) AccessChain 37(localFArray) 38
|
|
Store 57 30
|
|
58: 51(ptr) AccessChain 48(localIArray) 28
|
|
Store 58 17
|
|
Branch 27
|
|
27: Label
|
|
59: 51(ptr) AccessChain 48(localIArray) 28
|
|
60: 7(int) Load 59
|
|
61: 24(bool) IEqual 60 17
|
|
SelectionMerge 63 None
|
|
BranchConditional 61 62 63
|
|
62: Label
|
|
64: 31(ptr) AccessChain 37(localFArray) 38
|
|
65: 8(float) Load 64
|
|
66: 8(float) FAdd 65 30
|
|
Store 64 66
|
|
Branch 63
|
|
63: Label
|
|
Store 67(x) 68
|
|
70: 7(int) Load 67(x)
|
|
71: 39(fvec2) Load 41(coord)
|
|
72: 8(float) CompositeExtract 71 0
|
|
73: 31(ptr) AccessChain 69(localArray) 70
|
|
Store 73 72
|
|
Store 74(i) 17
|
|
Branch 75
|
|
75: Label
|
|
78: 7(int) Load 74(i)
|
|
80: 24(bool) SLessThan 78 79
|
|
LoopMerge 76 None
|
|
BranchConditional 80 77 76
|
|
77: Label
|
|
82: 7(int) Load 74(i)
|
|
84: 31(ptr) AccessChain 81(a) 82
|
|
Store 84 83
|
|
85: 7(int) Load 74(i)
|
|
86: 7(int) IAdd 85 29
|
|
Store 74(i) 86
|
|
Branch 75
|
|
76: Label
|
|
88: 7(int) Load 87(condition)
|
|
89: 24(bool) IEqual 88 29
|
|
SelectionMerge 91 None
|
|
BranchConditional 89 90 91
|
|
90: Label
|
|
92: 35 Load 69(localArray)
|
|
Store 81(a) 92
|
|
Branch 91
|
|
91: Label
|
|
96: 10(fvec4) Load 95(color)
|
|
98: 97(ptr) AccessChain 13(locals2) 93
|
|
Store 98 96
|
|
99: 39(fvec2) Load 41(coord)
|
|
100: 8(float) CompositeExtract 99 1
|
|
101: 97(ptr) AccessChain 13(locals2) 93
|
|
102: 10(fvec4) Load 101
|
|
103: 10(fvec4) CompositeInsert 100 102 2
|
|
Store 101 103
|
|
106: 97(ptr) AccessChain 13(locals2) 93
|
|
107: 10(fvec4) Load 106
|
|
108: 31(ptr) AccessChain 37(localFArray) 38
|
|
109: 8(float) Load 108
|
|
110: 31(ptr) AccessChain 13(locals2) 28 29
|
|
111: 8(float) Load 110
|
|
112: 8(float) FAdd 109 111
|
|
113: 7(int) Load 67(x)
|
|
114: 31(ptr) AccessChain 69(localArray) 113
|
|
115: 8(float) Load 114
|
|
116: 8(float) FAdd 112 115
|
|
117: 7(int) Load 67(x)
|
|
118: 31(ptr) AccessChain 81(a) 117
|
|
119: 8(float) Load 118
|
|
120: 8(float) FAdd 116 119
|
|
121: 10(fvec4) VectorTimesScalar 107 120
|
|
125: 122 Load 124(sampler)
|
|
126: 39(fvec2) Load 41(coord)
|
|
127: 10(fvec4) TextureSample 125 126
|
|
128: 10(fvec4) FMul 121 127
|
|
Store 105(gl_FragColor) 128
|
|
Branch 6
|
|
6: Label
|
|
Return
|
|
FunctionEnd
|