blob: 1d31230fa5bb5928aeff2abbc75a29079e4b29bb [file] [log] [blame]
spv.precision.frag
// Module Version 10000
// Generated by (magic number): 8000a
// Id's are bound by 165
Capability Shader
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint Fragment 4 "main" 23 62 64 76 119 149
ExecutionMode 4 OriginUpperLeft
Source ESSL 310
SourceExtension "GL_OES_sample_variables"
Name 4 "main"
Name 12 "foo(vf3;"
Name 11 "mv3"
Name 19 "boolfun(vb2;"
Name 18 "bv2"
Name 23 "highfin"
Name 41 "sum"
Name 43 "uniform_medium"
Name 45 "uniform_high"
Name 51 "uniform_low"
Name 56 "arg1"
Name 58 "arg2"
Name 60 "d"
Name 62 "lowfin"
Name 64 "mediumfin"
Name 68 "global_highp"
Name 72 "local_highp"
Name 76 "mediumfout"
Name 107 "ub2"
Name 108 "param"
Name 117 "S"
MemberName 117(S) 0 "a"
MemberName 117(S) 1 "b"
Name 119 "s"
Name 149 "gl_SampleMaskIn"
Decorate 12(foo(vf3;) RelaxedPrecision
Decorate 11(mv3) RelaxedPrecision
Decorate 23(highfin) Location 2
Decorate 27 RelaxedPrecision
Decorate 28 RelaxedPrecision
Decorate 41(sum) RelaxedPrecision
Decorate 43(uniform_medium) RelaxedPrecision
Decorate 44 RelaxedPrecision
Decorate 49 RelaxedPrecision
Decorate 51(uniform_low) RelaxedPrecision
Decorate 52 RelaxedPrecision
Decorate 53 RelaxedPrecision
Decorate 54 RelaxedPrecision
Decorate 56(arg1) RelaxedPrecision
Decorate 58(arg2) RelaxedPrecision
Decorate 60(d) RelaxedPrecision
Decorate 62(lowfin) RelaxedPrecision
Decorate 62(lowfin) Location 0
Decorate 63 RelaxedPrecision
Decorate 64(mediumfin) RelaxedPrecision
Decorate 64(mediumfin) Location 1
Decorate 65 RelaxedPrecision
Decorate 66 RelaxedPrecision
Decorate 76(mediumfout) RelaxedPrecision
Decorate 76(mediumfout) Location 0
Decorate 77 RelaxedPrecision
Decorate 78 RelaxedPrecision
Decorate 79 RelaxedPrecision
Decorate 80 RelaxedPrecision
Decorate 81 RelaxedPrecision
Decorate 82 RelaxedPrecision
Decorate 86 RelaxedPrecision
Decorate 88 RelaxedPrecision
Decorate 90 RelaxedPrecision
Decorate 91 RelaxedPrecision
Decorate 93 RelaxedPrecision
Decorate 94 RelaxedPrecision
Decorate 97 RelaxedPrecision
Decorate 98 RelaxedPrecision
Decorate 99 RelaxedPrecision
Decorate 100 RelaxedPrecision
Decorate 101 RelaxedPrecision
Decorate 102 RelaxedPrecision
Decorate 103 RelaxedPrecision
Decorate 104 RelaxedPrecision
Decorate 105 RelaxedPrecision
Decorate 113 RelaxedPrecision
Decorate 115 RelaxedPrecision
Decorate 116 RelaxedPrecision
MemberDecorate 117(S) 1 RelaxedPrecision
Decorate 119(s) Location 3
Decorate 123 RelaxedPrecision
Decorate 127 RelaxedPrecision
Decorate 128 RelaxedPrecision
Decorate 129 RelaxedPrecision
Decorate 130 RelaxedPrecision
Decorate 131 RelaxedPrecision
Decorate 132 RelaxedPrecision
Decorate 135 RelaxedPrecision
Decorate 139 RelaxedPrecision
Decorate 140 RelaxedPrecision
Decorate 143 RelaxedPrecision
Decorate 144 RelaxedPrecision
Decorate 145 RelaxedPrecision
Decorate 149(gl_SampleMaskIn) Flat
Decorate 149(gl_SampleMaskIn) BuiltIn SampleMask
Decorate 153 RelaxedPrecision
Decorate 156 RelaxedPrecision
Decorate 159 RelaxedPrecision
Decorate 160 RelaxedPrecision
Decorate 162 RelaxedPrecision
Decorate 163 RelaxedPrecision
Decorate 164 RelaxedPrecision
2: TypeVoid
3: TypeFunction 2
6: TypeFloat 32
7: TypeVector 6(float) 3
8: TypePointer Function 7(fvec3)
9: TypeVector 6(float) 2
10: TypeFunction 9(fvec2) 8(ptr)
14: TypeBool
15: TypeVector 14(bool) 2
16: TypePointer Function 15(bvec2)
17: TypeFunction 14(bool) 16(ptr)
21: TypeVector 6(float) 4
22: TypePointer Input 21(fvec4)
23(highfin): 22(ptr) Variable Input
26: TypePointer Function 9(fvec2)
32: 14(bool) ConstantFalse
33: 14(bool) ConstantTrue
34: 15(bvec2) ConstantComposite 32 33
39: TypeInt 32 1
40: TypePointer Function 39(int)
42: TypePointer Private 39(int)
43(uniform_medium): 42(ptr) Variable Private
45(uniform_high): 42(ptr) Variable Private
51(uniform_low): 42(ptr) Variable Private
55: TypePointer Function 6(float)
57: 6(float) Constant 1078774989
59: 6(float) Constant 1232730691
61: TypePointer Input 6(float)
62(lowfin): 61(ptr) Variable Input
64(mediumfin): 61(ptr) Variable Input
67: TypePointer Private 6(float)
68(global_highp): 67(ptr) Variable Private
71: TypePointer Function 21(fvec4)
75: TypePointer Output 21(fvec4)
76(mediumfout): 75(ptr) Variable Output
85: 39(int) Constant 4
87: TypeVector 39(int) 2
95: TypeInt 32 0
96: 95(int) Constant 0
106: TypePointer Private 15(bvec2)
107(ub2): 106(ptr) Variable Private
114: 6(float) Constant 1065353216
117(S): TypeStruct 6(float) 6(float)
118: TypePointer Input 117(S)
119(s): 118(ptr) Variable Input
120: 39(int) Constant 0
125: 39(int) Constant 1
133: 6(float) Constant 1082549862
138: 6(float) Constant 1073741824
142: 6(float) Constant 1077936128
146: 95(int) Constant 1
147: TypeArray 39(int) 146
148: TypePointer Input 147
149(gl_SampleMaskIn): 148(ptr) Variable Input
150: TypePointer Input 39(int)
4(main): 2 Function None 3
5: Label
41(sum): 40(ptr) Variable Function
56(arg1): 55(ptr) Variable Function
58(arg2): 55(ptr) Variable Function
60(d): 55(ptr) Variable Function
72(local_highp): 71(ptr) Variable Function
108(param): 16(ptr) Variable Function
135: 71(ptr) Variable Function
156: 71(ptr) Variable Function
44: 39(int) Load 43(uniform_medium)
46: 39(int) Load 45(uniform_high)
47: 39(int) IAdd 44 46
Store 41(sum) 47
48: 39(int) Load 45(uniform_high)
49: 39(int) Load 41(sum)
50: 39(int) IAdd 49 48
Store 41(sum) 50
52: 39(int) Load 51(uniform_low)
53: 39(int) Load 41(sum)
54: 39(int) IAdd 53 52
Store 41(sum) 54
Store 56(arg1) 57
Store 58(arg2) 59
63: 6(float) Load 62(lowfin)
65: 6(float) Load 64(mediumfin)
66: 6(float) ExtInst 1(GLSL.std.450) 67(Distance) 63 65
Store 60(d) 66
69: 21(fvec4) Load 23(highfin)
70: 6(float) ExtInst 1(GLSL.std.450) 66(Length) 69
Store 68(global_highp) 70
73: 6(float) Load 68(global_highp)
74: 21(fvec4) CompositeConstruct 73 73 73 73
Store 72(local_highp) 74
77: 6(float) Load 60(d)
78: 6(float) ExtInst 1(GLSL.std.450) 13(Sin) 77
79: 21(fvec4) CompositeConstruct 78 78 78 78
80: 6(float) Load 58(arg2)
81: 21(fvec4) CompositeConstruct 80 80 80 80
82: 21(fvec4) FAdd 79 81
83: 21(fvec4) Load 72(local_highp)
84: 21(fvec4) FAdd 82 83
Store 76(mediumfout) 84
86: 39(int) Load 51(uniform_low)
88: 87(ivec2) CompositeConstruct 86 86
89: 39(int) Load 45(uniform_high)
90: 87(ivec2) CompositeConstruct 89 89
91: 87(ivec2) IMul 88 90
92: 39(int) Load 45(uniform_high)
93: 87(ivec2) CompositeConstruct 92 92
94: 87(ivec2) IAdd 91 93
97: 39(int) CompositeExtract 94 0
98: 39(int) IAdd 85 97
99: 39(int) Load 41(sum)
100: 39(int) IAdd 99 98
Store 41(sum) 100
101: 39(int) Load 41(sum)
102: 6(float) ConvertSToF 101
103: 21(fvec4) CompositeConstruct 102 102 102 102
104: 21(fvec4) Load 76(mediumfout)
105: 21(fvec4) FAdd 104 103
Store 76(mediumfout) 105
109: 15(bvec2) Load 107(ub2)
Store 108(param) 109
110: 14(bool) FunctionCall 19(boolfun(vb2;) 108(param)
SelectionMerge 112 None
BranchConditional 110 111 112
111: Label
113: 21(fvec4) Load 76(mediumfout)
115: 21(fvec4) CompositeConstruct 114 114 114 114
116: 21(fvec4) FAdd 113 115
Store 76(mediumfout) 116
Branch 112
112: Label
121: 61(ptr) AccessChain 119(s) 120
122: 6(float) Load 121
123: 21(fvec4) Load 76(mediumfout)
124: 21(fvec4) VectorTimesScalar 123 122
Store 76(mediumfout) 124
126: 61(ptr) AccessChain 119(s) 125
127: 6(float) Load 126
128: 21(fvec4) Load 76(mediumfout)
129: 21(fvec4) VectorTimesScalar 128 127
Store 76(mediumfout) 129
130: 6(float) Load 64(mediumfin)
131: 6(float) Load 64(mediumfin)
132: 6(float) FMul 130 131
134: 14(bool) FOrdGreaterThan 132 133
SelectionMerge 137 None
BranchConditional 134 136 141
136: Label
139: 21(fvec4) Load 76(mediumfout)
140: 21(fvec4) VectorTimesScalar 139 138
Store 135 140
Branch 137
141: Label
143: 21(fvec4) Load 76(mediumfout)
144: 21(fvec4) VectorTimesScalar 143 142
Store 135 144
Branch 137
137: Label
145: 21(fvec4) Load 135
Store 76(mediumfout) 145
151: 150(ptr) AccessChain 149(gl_SampleMaskIn) 120
152: 39(int) Load 151
153: 39(int) Load 43(uniform_medium)
154: 39(int) ShiftRightArithmetic 152 153
155: 14(bool) SGreaterThan 154 120
SelectionMerge 158 None
BranchConditional 155 157 161
157: Label
159: 21(fvec4) Load 76(mediumfout)
160: 21(fvec4) VectorTimesScalar 159 138
Store 156 160
Branch 158
161: Label
162: 21(fvec4) Load 76(mediumfout)
163: 21(fvec4) VectorTimesScalar 162 142
Store 156 163
Branch 158
158: Label
164: 21(fvec4) Load 156
Store 76(mediumfout) 164
Return
FunctionEnd
12(foo(vf3;): 9(fvec2) Function None 10
11(mv3): 8(ptr) FunctionParameter
13: Label
27: 26(ptr) Variable Function
24: 21(fvec4) Load 23(highfin)
25: 9(fvec2) VectorShuffle 24 24 0 1
Store 27 25
28: 9(fvec2) Load 27
ReturnValue 28
FunctionEnd
19(boolfun(vb2;): 14(bool) Function None 17
18(bv2): 16(ptr) FunctionParameter
20: Label
31: 15(bvec2) Load 18(bv2)
35: 15(bvec2) LogicalEqual 31 34
36: 14(bool) All 35
ReturnValue 36
FunctionEnd