blob: 1aac9a6d35f80dfb45a85b588d4f54b09f62fc94 [file] [log] [blame]
spv.forLoop.frag
// Module Version 10000
// Generated by (magic number): 8000a
// Id's are bound by 131
Capability Shader
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint Fragment 4 "main" 11 24 28 36 53 104
ExecutionMode 4 OriginUpperLeft
Source GLSL 140
Name 4 "main"
Name 9 "color"
Name 11 "BaseColor"
Name 15 "i"
Name 24 "Count"
Name 28 "bigColor"
Name 36 "gl_FragColor"
Name 39 "sum"
Name 41 "i"
Name 53 "v4"
Name 63 "i"
Name 71 "tv4"
Name 88 "r"
Name 94 "i"
Name 104 "f"
Name 117 "i"
Decorate 11(BaseColor) Location 1
Decorate 24(Count) Flat
Decorate 24(Count) Location 3
Decorate 28(bigColor) Location 0
Decorate 36(gl_FragColor) Location 0
Decorate 53(v4) Flat
Decorate 53(v4) Location 4
Decorate 104(f) Location 2
2: TypeVoid
3: TypeFunction 2
6: TypeFloat 32
7: TypeVector 6(float) 4
8: TypePointer Function 7(fvec4)
10: TypePointer Input 7(fvec4)
11(BaseColor): 10(ptr) Variable Input
13: TypeInt 32 1
14: TypePointer Function 13(int)
16: 13(int) Constant 0
23: TypePointer Input 13(int)
24(Count): 23(ptr) Variable Input
26: TypeBool
28(bigColor): 10(ptr) Variable Input
33: 13(int) Constant 1
35: TypePointer Output 7(fvec4)
36(gl_FragColor): 35(ptr) Variable Output
38: TypePointer Function 6(float)
40: 6(float) Constant 0
48: 13(int) Constant 4
50: TypeInt 32 0
51: TypeVector 50(int) 4
52: TypePointer Input 51(ivec4)
53(v4): 52(ptr) Variable Input
55: TypePointer Input 50(int)
76: 50(int) Constant 4
89: TypeVector 6(float) 3
103: TypePointer Input 6(float)
104(f): 103(ptr) Variable Input
106: 50(int) Constant 3
124: 13(int) Constant 16
4(main): 2 Function None 3
5: Label
9(color): 8(ptr) Variable Function
15(i): 14(ptr) Variable Function
39(sum): 38(ptr) Variable Function
41(i): 14(ptr) Variable Function
63(i): 14(ptr) Variable Function
71(tv4): 8(ptr) Variable Function
88(r): 8(ptr) Variable Function
94(i): 14(ptr) Variable Function
117(i): 14(ptr) Variable Function
12: 7(fvec4) Load 11(BaseColor)
Store 9(color) 12
Store 15(i) 16
Branch 17
17: Label
LoopMerge 19 20 None
Branch 21
21: Label
22: 13(int) Load 15(i)
25: 13(int) Load 24(Count)
27: 26(bool) SLessThan 22 25
BranchConditional 27 18 19
18: Label
29: 7(fvec4) Load 28(bigColor)
30: 7(fvec4) Load 9(color)
31: 7(fvec4) FAdd 30 29
Store 9(color) 31
Branch 20
20: Label
32: 13(int) Load 15(i)
34: 13(int) IAdd 32 33
Store 15(i) 34
Branch 17
19: Label
37: 7(fvec4) Load 9(color)
Store 36(gl_FragColor) 37
Store 39(sum) 40
Store 41(i) 16
Branch 42
42: Label
LoopMerge 44 45 None
Branch 46
46: Label
47: 13(int) Load 41(i)
49: 26(bool) SLessThan 47 48
BranchConditional 49 43 44
43: Label
54: 13(int) Load 41(i)
56: 55(ptr) AccessChain 53(v4) 54
57: 50(int) Load 56
58: 6(float) ConvertUToF 57
59: 6(float) Load 39(sum)
60: 6(float) FAdd 59 58
Store 39(sum) 60
Branch 45
45: Label
61: 13(int) Load 41(i)
62: 13(int) IAdd 61 33
Store 41(i) 62
Branch 42
44: Label
Store 63(i) 16
Branch 64
64: Label
LoopMerge 66 67 None
Branch 68
68: Label
69: 13(int) Load 63(i)
70: 26(bool) SLessThan 69 48
BranchConditional 70 65 66
65: Label
72: 13(int) Load 63(i)
73: 13(int) Load 63(i)
74: 55(ptr) AccessChain 53(v4) 73
75: 50(int) Load 74
77: 50(int) IMul 75 76
78: 6(float) ConvertUToF 77
79: 38(ptr) AccessChain 71(tv4) 72
Store 79 78
Branch 67
67: Label
80: 13(int) Load 63(i)
81: 13(int) IAdd 80 33
Store 63(i) 81
Branch 64
66: Label
82: 6(float) Load 39(sum)
83: 7(fvec4) CompositeConstruct 82 82 82 82
84: 7(fvec4) Load 71(tv4)
85: 7(fvec4) FAdd 83 84
86: 7(fvec4) Load 36(gl_FragColor)
87: 7(fvec4) FAdd 86 85
Store 36(gl_FragColor) 87
90: 7(fvec4) Load 11(BaseColor)
91: 89(fvec3) VectorShuffle 90 90 0 1 2
92: 7(fvec4) Load 88(r)
93: 7(fvec4) VectorShuffle 92 91 4 5 6 3
Store 88(r) 93
Store 94(i) 16
Branch 95
95: Label
LoopMerge 97 98 None
Branch 99
99: Label
100: 13(int) Load 94(i)
101: 13(int) Load 24(Count)
102: 26(bool) SLessThan 100 101
BranchConditional 102 96 97
96: Label
105: 6(float) Load 104(f)
107: 38(ptr) AccessChain 88(r) 106
Store 107 105
Branch 98
98: Label
108: 13(int) Load 94(i)
109: 13(int) IAdd 108 33
Store 94(i) 109
Branch 95
97: Label
110: 7(fvec4) Load 88(r)
111: 89(fvec3) VectorShuffle 110 110 0 1 2
112: 7(fvec4) Load 36(gl_FragColor)
113: 89(fvec3) VectorShuffle 112 112 0 1 2
114: 89(fvec3) FAdd 113 111
115: 7(fvec4) Load 36(gl_FragColor)
116: 7(fvec4) VectorShuffle 115 114 4 5 6 3
Store 36(gl_FragColor) 116
Store 117(i) 16
Branch 118
118: Label
LoopMerge 120 121 None
Branch 122
122: Label
123: 13(int) Load 117(i)
125: 26(bool) SLessThan 123 124
BranchConditional 125 119 120
119: Label
126: 6(float) Load 104(f)
127: 7(fvec4) Load 36(gl_FragColor)
128: 7(fvec4) VectorTimesScalar 127 126
Store 36(gl_FragColor) 128
Branch 121
121: Label
129: 13(int) Load 117(i)
130: 13(int) IAdd 129 48
Store 117(i) 130
Branch 118
120: Label
Return
FunctionEnd