mirror of
https://github.com/RPCS3/glslang.git
synced 2025-01-01 16:08:23 +00:00
e770b3e6cf
Structured control-flow rules allow leaving the middle of a construct through a return, but not through a jump to a block that does a return. Addresses issue #58.
220 lines
10 KiB
Plaintext
Executable File
220 lines
10 KiB
Plaintext
Executable File
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
|
|
Capability Shader
|
|
1: ExtInstImport "GLSL.std.450"
|
|
MemoryModel Logical GLSL450
|
|
EntryPoint Fragment 4 "main"
|
|
ExecutionMode 4 OriginLowerLeft
|
|
Name 4 "main"
|
|
Name 8 "s1"
|
|
MemberName 8(s1) 0 "i"
|
|
MemberName 8(s1) 1 "f"
|
|
Name 10 "s2"
|
|
MemberName 10(s2) 0 "i"
|
|
MemberName 10(s2) 1 "f"
|
|
MemberName 10(s2) 2 "s1_1"
|
|
MemberName 10(s2) 3 "bleh"
|
|
Name 12 "locals2"
|
|
Name 13 "s3"
|
|
MemberName 13(s3) 0 "s2_1"
|
|
MemberName 13(s3) 1 "i"
|
|
MemberName 13(s3) 2 "f"
|
|
MemberName 13(s3) 3 "s1_1"
|
|
Name 15 "foo3"
|
|
Name 36 "localFArray"
|
|
Name 40 "coord"
|
|
Name 47 "localIArray"
|
|
Name 66 "x"
|
|
Name 68 "localArray"
|
|
Name 73 "i"
|
|
Name 80 "a"
|
|
Name 86 "condition"
|
|
Name 94 "color"
|
|
Name 104 "gl_FragColor"
|
|
Name 124 "sampler"
|
|
Name 130 "foo"
|
|
Name 131 "foo2"
|
|
Name 133 "uFloatArray"
|
|
Decorate 40(coord) Smooth
|
|
Decorate 94(color) Smooth
|
|
Decorate 104(gl_FragColor) BuiltIn FragColor
|
|
Decorate 130(foo) NoStaticUse
|
|
Decorate 131(foo2) NoStaticUse
|
|
Decorate 133(uFloatArray) NoStaticUse
|
|
2: TypeVoid
|
|
3: TypeFunction 2
|
|
6: TypeInt 32 1
|
|
7: TypeFloat 32
|
|
8(s1): TypeStruct 6(int) 7(float)
|
|
9: TypeVector 7(float) 4
|
|
10(s2): TypeStruct 6(int) 7(float) 8(s1) 9(fvec4)
|
|
11: TypePointer Function 10(s2)
|
|
13(s3): TypeStruct 10(s2) 6(int) 7(float) 8(s1)
|
|
14: TypePointer UniformConstant 13(s3)
|
|
15(foo3): 14(ptr) Variable UniformConstant
|
|
16: 6(int) Constant 0
|
|
17: TypePointer UniformConstant 10(s2)
|
|
20: TypePointer UniformConstant 6(int)
|
|
23: TypeBool
|
|
27: 6(int) Constant 2
|
|
28: 6(int) Constant 1
|
|
29: 7(float) Constant 1065353216
|
|
30: TypePointer Function 7(float)
|
|
32: TypeInt 32 0
|
|
33: 32(int) Constant 16
|
|
34: TypeArray 7(float) 33
|
|
35: TypePointer Function 34
|
|
37: 6(int) Constant 4
|
|
38: TypeVector 7(float) 2
|
|
39: TypePointer Input 38(fvec2)
|
|
40(coord): 39(ptr) Variable Input
|
|
44: 32(int) Constant 8
|
|
45: TypeArray 6(int) 44
|
|
46: TypePointer Function 45
|
|
50: TypePointer Function 6(int)
|
|
67: 6(int) Constant 5
|
|
78: 6(int) Constant 16
|
|
82: 7(float) Constant 0
|
|
86(condition): 20(ptr) Variable UniformConstant
|
|
92: 6(int) Constant 3
|
|
93: TypePointer Input 9(fvec4)
|
|
94(color): 93(ptr) Variable Input
|
|
96: TypePointer Function 9(fvec4)
|
|
103: TypePointer Output 9(fvec4)
|
|
104(gl_FragColor): 103(ptr) Variable Output
|
|
121: TypeImage 7(float) 2D sampled format:Unknown
|
|
122: TypeSampledImage 121
|
|
123: TypePointer UniformConstant 122
|
|
124(sampler): 123(ptr) Variable UniformConstant
|
|
129: TypePointer UniformConstant 8(s1)
|
|
130(foo): 129(ptr) Variable UniformConstant
|
|
131(foo2): 17(ptr) Variable UniformConstant
|
|
132: TypePointer UniformConstant 34
|
|
133(uFloatArray): 132(ptr) Variable UniformConstant
|
|
4(main): 2 Function None 3
|
|
5: Label
|
|
12(locals2): 11(ptr) Variable Function
|
|
36(localFArray): 35(ptr) Variable Function
|
|
47(localIArray): 46(ptr) Variable Function
|
|
66(x): 50(ptr) Variable Function
|
|
68(localArray): 35(ptr) Variable Function
|
|
73(i): 50(ptr) Variable Function
|
|
80(a): 35(ptr) Variable Function
|
|
18: 17(ptr) AccessChain 15(foo3) 16
|
|
19: 10(s2) Load 18
|
|
Store 12(locals2) 19
|
|
21: 20(ptr) AccessChain 15(foo3) 16 16
|
|
22: 6(int) Load 21
|
|
24: 23(bool) SGreaterThan 22 16
|
|
SelectionMerge 26 None
|
|
BranchConditional 24 25 52
|
|
25: Label
|
|
31: 30(ptr) AccessChain 12(locals2) 27 28
|
|
Store 31 29
|
|
41: 38(fvec2) Load 40(coord)
|
|
42: 7(float) CompositeExtract 41 0
|
|
43: 30(ptr) AccessChain 36(localFArray) 37
|
|
Store 43 42
|
|
48: 20(ptr) AccessChain 15(foo3) 16 16
|
|
49: 6(int) Load 48
|
|
51: 50(ptr) AccessChain 47(localIArray) 27
|
|
Store 51 49
|
|
Branch 26
|
|
52: Label
|
|
53: 38(fvec2) Load 40(coord)
|
|
54: 7(float) CompositeExtract 53 0
|
|
55: 30(ptr) AccessChain 12(locals2) 27 28
|
|
Store 55 54
|
|
56: 30(ptr) AccessChain 36(localFArray) 37
|
|
Store 56 29
|
|
57: 50(ptr) AccessChain 47(localIArray) 27
|
|
Store 57 16
|
|
Branch 26
|
|
26: Label
|
|
58: 50(ptr) AccessChain 47(localIArray) 27
|
|
59: 6(int) Load 58
|
|
60: 23(bool) IEqual 59 16
|
|
SelectionMerge 62 None
|
|
BranchConditional 60 61 62
|
|
61: Label
|
|
63: 30(ptr) AccessChain 36(localFArray) 37
|
|
64: 7(float) Load 63
|
|
65: 7(float) FAdd 64 29
|
|
Store 63 65
|
|
Branch 62
|
|
62: Label
|
|
Store 66(x) 67
|
|
69: 6(int) Load 66(x)
|
|
70: 38(fvec2) Load 40(coord)
|
|
71: 7(float) CompositeExtract 70 0
|
|
72: 30(ptr) AccessChain 68(localArray) 69
|
|
Store 72 71
|
|
Store 73(i) 16
|
|
Branch 74
|
|
74: Label
|
|
77: 6(int) Load 73(i)
|
|
79: 23(bool) SLessThan 77 78
|
|
LoopMerge 75 None
|
|
BranchConditional 79 76 75
|
|
76: Label
|
|
81: 6(int) Load 73(i)
|
|
83: 30(ptr) AccessChain 80(a) 81
|
|
Store 83 82
|
|
84: 6(int) Load 73(i)
|
|
85: 6(int) IAdd 84 28
|
|
Store 73(i) 85
|
|
Branch 74
|
|
75: Label
|
|
87: 6(int) Load 86(condition)
|
|
88: 23(bool) IEqual 87 28
|
|
SelectionMerge 90 None
|
|
BranchConditional 88 89 90
|
|
89: Label
|
|
91: 34 Load 68(localArray)
|
|
Store 80(a) 91
|
|
Branch 90
|
|
90: Label
|
|
95: 9(fvec4) Load 94(color)
|
|
97: 96(ptr) AccessChain 12(locals2) 92
|
|
Store 97 95
|
|
98: 38(fvec2) Load 40(coord)
|
|
99: 7(float) CompositeExtract 98 1
|
|
100: 96(ptr) AccessChain 12(locals2) 92
|
|
101: 9(fvec4) Load 100
|
|
102: 9(fvec4) CompositeInsert 99 101 2
|
|
Store 100 102
|
|
105: 96(ptr) AccessChain 12(locals2) 92
|
|
106: 9(fvec4) Load 105
|
|
107: 30(ptr) AccessChain 36(localFArray) 37
|
|
108: 7(float) Load 107
|
|
109: 30(ptr) AccessChain 12(locals2) 27 28
|
|
110: 7(float) Load 109
|
|
111: 7(float) FAdd 108 110
|
|
112: 6(int) Load 66(x)
|
|
113: 30(ptr) AccessChain 68(localArray) 112
|
|
114: 7(float) Load 113
|
|
115: 7(float) FAdd 111 114
|
|
116: 6(int) Load 66(x)
|
|
117: 30(ptr) AccessChain 80(a) 116
|
|
118: 7(float) Load 117
|
|
119: 7(float) FAdd 115 118
|
|
120: 9(fvec4) VectorTimesScalar 106 119
|
|
125: 122 Load 124(sampler)
|
|
126: 38(fvec2) Load 40(coord)
|
|
127: 9(fvec4) ImageSampleImplicitLod 125 126
|
|
128: 9(fvec4) FMul 120 127
|
|
Store 104(gl_FragColor) 128
|
|
Return
|
|
FunctionEnd
|