xref: /aosp_15_r20/external/skia/tests/sksl/intrinsics/ClampUInt.asm.frag (revision c8dee2aa9b3f27cf6c858bd81872bdeb2c07ed17)
1*c8dee2aaSAndroid Build Coastguard Worker               OpCapability Shader
2*c8dee2aaSAndroid Build Coastguard Worker          %1 = OpExtInstImport "GLSL.std.450"
3*c8dee2aaSAndroid Build Coastguard Worker               OpMemoryModel Logical GLSL450
4*c8dee2aaSAndroid Build Coastguard Worker               OpEntryPoint Fragment %_entrypoint_v "_entrypoint" %sk_FragColor
5*c8dee2aaSAndroid Build Coastguard Worker               OpExecutionMode %_entrypoint_v OriginUpperLeft
6*c8dee2aaSAndroid Build Coastguard Worker               OpName %sk_FragColor "sk_FragColor"
7*c8dee2aaSAndroid Build Coastguard Worker               OpName %_UniformBuffer "_UniformBuffer"
8*c8dee2aaSAndroid Build Coastguard Worker               OpMemberName %_UniformBuffer 0 "testInputs"
9*c8dee2aaSAndroid Build Coastguard Worker               OpMemberName %_UniformBuffer 1 "colorGreen"
10*c8dee2aaSAndroid Build Coastguard Worker               OpMemberName %_UniformBuffer 2 "colorRed"
11*c8dee2aaSAndroid Build Coastguard Worker               OpName %_entrypoint_v "_entrypoint_v"
12*c8dee2aaSAndroid Build Coastguard Worker               OpName %main "main"
13*c8dee2aaSAndroid Build Coastguard Worker               OpName %uintValues "uintValues"
14*c8dee2aaSAndroid Build Coastguard Worker               OpName %expectedA "expectedA"
15*c8dee2aaSAndroid Build Coastguard Worker               OpName %expectedB "expectedB"
16*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %sk_FragColor RelaxedPrecision
17*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %sk_FragColor Location 0
18*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %sk_FragColor Index 0
19*c8dee2aaSAndroid Build Coastguard Worker               OpMemberDecorate %_UniformBuffer 0 Offset 0
20*c8dee2aaSAndroid Build Coastguard Worker               OpMemberDecorate %_UniformBuffer 0 RelaxedPrecision
21*c8dee2aaSAndroid Build Coastguard Worker               OpMemberDecorate %_UniformBuffer 1 Offset 16
22*c8dee2aaSAndroid Build Coastguard Worker               OpMemberDecorate %_UniformBuffer 1 RelaxedPrecision
23*c8dee2aaSAndroid Build Coastguard Worker               OpMemberDecorate %_UniformBuffer 2 Offset 32
24*c8dee2aaSAndroid Build Coastguard Worker               OpMemberDecorate %_UniformBuffer 2 RelaxedPrecision
25*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %_UniformBuffer Block
26*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %7 Binding 0
27*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %7 DescriptorSet 0
28*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %31 RelaxedPrecision
29*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %33 RelaxedPrecision
30*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %36 RelaxedPrecision
31*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %37 RelaxedPrecision
32*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %39 RelaxedPrecision
33*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %41 RelaxedPrecision
34*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %43 RelaxedPrecision
35*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %177 RelaxedPrecision
36*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %180 RelaxedPrecision
37*c8dee2aaSAndroid Build Coastguard Worker               OpDecorate %181 RelaxedPrecision
38*c8dee2aaSAndroid Build Coastguard Worker      %float = OpTypeFloat 32
39*c8dee2aaSAndroid Build Coastguard Worker    %v4float = OpTypeVector %float 4
40*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Output_v4float = OpTypePointer Output %v4float
41*c8dee2aaSAndroid Build Coastguard Worker%sk_FragColor = OpVariable %_ptr_Output_v4float Output
42*c8dee2aaSAndroid Build Coastguard Worker%_UniformBuffer = OpTypeStruct %v4float %v4float %v4float
43*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Uniform__UniformBuffer = OpTypePointer Uniform %_UniformBuffer
44*c8dee2aaSAndroid Build Coastguard Worker          %7 = OpVariable %_ptr_Uniform__UniformBuffer Uniform
45*c8dee2aaSAndroid Build Coastguard Worker       %void = OpTypeVoid
46*c8dee2aaSAndroid Build Coastguard Worker         %12 = OpTypeFunction %void
47*c8dee2aaSAndroid Build Coastguard Worker    %float_0 = OpConstant %float 0
48*c8dee2aaSAndroid Build Coastguard Worker    %v2float = OpTypeVector %float 2
49*c8dee2aaSAndroid Build Coastguard Worker         %16 = OpConstantComposite %v2float %float_0 %float_0
50*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Function_v2float = OpTypePointer Function %v2float
51*c8dee2aaSAndroid Build Coastguard Worker         %20 = OpTypeFunction %v4float %_ptr_Function_v2float
52*c8dee2aaSAndroid Build Coastguard Worker       %uint = OpTypeInt 32 0
53*c8dee2aaSAndroid Build Coastguard Worker     %v4uint = OpTypeVector %uint 4
54*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Function_v4uint = OpTypePointer Function %v4uint
55*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Uniform_v4float = OpTypePointer Uniform %v4float
56*c8dee2aaSAndroid Build Coastguard Worker        %int = OpTypeInt 32 1
57*c8dee2aaSAndroid Build Coastguard Worker      %int_0 = OpConstant %int 0
58*c8dee2aaSAndroid Build Coastguard Worker  %float_100 = OpConstant %float 100
59*c8dee2aaSAndroid Build Coastguard Worker  %float_200 = OpConstant %float 200
60*c8dee2aaSAndroid Build Coastguard Worker         %35 = OpConstantComposite %v4float %float_200 %float_200 %float_200 %float_200
61*c8dee2aaSAndroid Build Coastguard Worker   %uint_100 = OpConstant %uint 100
62*c8dee2aaSAndroid Build Coastguard Worker   %uint_200 = OpConstant %uint 200
63*c8dee2aaSAndroid Build Coastguard Worker   %uint_275 = OpConstant %uint 275
64*c8dee2aaSAndroid Build Coastguard Worker   %uint_300 = OpConstant %uint 300
65*c8dee2aaSAndroid Build Coastguard Worker         %51 = OpConstantComposite %v4uint %uint_100 %uint_200 %uint_275 %uint_300
66*c8dee2aaSAndroid Build Coastguard Worker   %uint_250 = OpConstant %uint 250
67*c8dee2aaSAndroid Build Coastguard Worker   %uint_425 = OpConstant %uint 425
68*c8dee2aaSAndroid Build Coastguard Worker         %55 = OpConstantComposite %v4uint %uint_100 %uint_200 %uint_250 %uint_425
69*c8dee2aaSAndroid Build Coastguard Worker       %bool = OpTypeBool
70*c8dee2aaSAndroid Build Coastguard Worker      %false = OpConstantFalse %bool
71*c8dee2aaSAndroid Build Coastguard Worker     %v2uint = OpTypeVector %uint 2
72*c8dee2aaSAndroid Build Coastguard Worker         %66 = OpConstantComposite %v2uint %uint_100 %uint_100
73*c8dee2aaSAndroid Build Coastguard Worker         %67 = OpConstantComposite %v2uint %uint_300 %uint_300
74*c8dee2aaSAndroid Build Coastguard Worker     %v2bool = OpTypeVector %bool 2
75*c8dee2aaSAndroid Build Coastguard Worker     %v3uint = OpTypeVector %uint 3
76*c8dee2aaSAndroid Build Coastguard Worker         %78 = OpConstantComposite %v3uint %uint_100 %uint_100 %uint_100
77*c8dee2aaSAndroid Build Coastguard Worker         %79 = OpConstantComposite %v3uint %uint_300 %uint_300 %uint_300
78*c8dee2aaSAndroid Build Coastguard Worker     %v3bool = OpTypeVector %bool 3
79*c8dee2aaSAndroid Build Coastguard Worker         %88 = OpConstantComposite %v4uint %uint_100 %uint_100 %uint_100 %uint_100
80*c8dee2aaSAndroid Build Coastguard Worker         %89 = OpConstantComposite %v4uint %uint_300 %uint_300 %uint_300 %uint_300
81*c8dee2aaSAndroid Build Coastguard Worker     %v4bool = OpTypeVector %bool 4
82*c8dee2aaSAndroid Build Coastguard Worker       %true = OpConstantTrue %bool
83*c8dee2aaSAndroid Build Coastguard Worker        %100 = OpConstantComposite %v2uint %uint_100 %uint_200
84*c8dee2aaSAndroid Build Coastguard Worker        %107 = OpConstantComposite %v3uint %uint_100 %uint_200 %uint_275
85*c8dee2aaSAndroid Build Coastguard Worker     %uint_0 = OpConstant %uint 0
86*c8dee2aaSAndroid Build Coastguard Worker        %125 = OpConstantComposite %v2uint %uint_100 %uint_0
87*c8dee2aaSAndroid Build Coastguard Worker   %uint_400 = OpConstant %uint 400
88*c8dee2aaSAndroid Build Coastguard Worker        %127 = OpConstantComposite %v2uint %uint_300 %uint_400
89*c8dee2aaSAndroid Build Coastguard Worker        %136 = OpConstantComposite %v3uint %uint_100 %uint_0 %uint_0
90*c8dee2aaSAndroid Build Coastguard Worker        %137 = OpConstantComposite %v3uint %uint_300 %uint_400 %uint_250
91*c8dee2aaSAndroid Build Coastguard Worker        %145 = OpConstantComposite %v4uint %uint_100 %uint_0 %uint_0 %uint_300
92*c8dee2aaSAndroid Build Coastguard Worker   %uint_500 = OpConstant %uint 500
93*c8dee2aaSAndroid Build Coastguard Worker        %147 = OpConstantComposite %v4uint %uint_300 %uint_400 %uint_250 %uint_500
94*c8dee2aaSAndroid Build Coastguard Worker        %162 = OpConstantComposite %v3uint %uint_100 %uint_200 %uint_250
95*c8dee2aaSAndroid Build Coastguard Worker%_ptr_Function_v4float = OpTypePointer Function %v4float
96*c8dee2aaSAndroid Build Coastguard Worker      %int_1 = OpConstant %int 1
97*c8dee2aaSAndroid Build Coastguard Worker      %int_2 = OpConstant %int 2
98*c8dee2aaSAndroid Build Coastguard Worker%_entrypoint_v = OpFunction %void None %12
99*c8dee2aaSAndroid Build Coastguard Worker         %13 = OpLabel
100*c8dee2aaSAndroid Build Coastguard Worker         %17 = OpVariable %_ptr_Function_v2float Function
101*c8dee2aaSAndroid Build Coastguard Worker               OpStore %17 %16
102*c8dee2aaSAndroid Build Coastguard Worker         %19 = OpFunctionCall %v4float %main %17
103*c8dee2aaSAndroid Build Coastguard Worker               OpStore %sk_FragColor %19
104*c8dee2aaSAndroid Build Coastguard Worker               OpReturn
105*c8dee2aaSAndroid Build Coastguard Worker               OpFunctionEnd
106*c8dee2aaSAndroid Build Coastguard Worker       %main = OpFunction %v4float None %20
107*c8dee2aaSAndroid Build Coastguard Worker         %21 = OpFunctionParameter %_ptr_Function_v2float
108*c8dee2aaSAndroid Build Coastguard Worker         %22 = OpLabel
109*c8dee2aaSAndroid Build Coastguard Worker %uintValues = OpVariable %_ptr_Function_v4uint Function
110*c8dee2aaSAndroid Build Coastguard Worker  %expectedA = OpVariable %_ptr_Function_v4uint Function
111*c8dee2aaSAndroid Build Coastguard Worker  %expectedB = OpVariable %_ptr_Function_v4uint Function
112*c8dee2aaSAndroid Build Coastguard Worker        %170 = OpVariable %_ptr_Function_v4float Function
113*c8dee2aaSAndroid Build Coastguard Worker         %27 = OpAccessChain %_ptr_Uniform_v4float %7 %int_0
114*c8dee2aaSAndroid Build Coastguard Worker         %31 = OpLoad %v4float %27
115*c8dee2aaSAndroid Build Coastguard Worker         %33 = OpVectorTimesScalar %v4float %31 %float_100
116*c8dee2aaSAndroid Build Coastguard Worker         %36 = OpFAdd %v4float %33 %35
117*c8dee2aaSAndroid Build Coastguard Worker         %37 = OpCompositeExtract %float %36 0
118*c8dee2aaSAndroid Build Coastguard Worker         %38 = OpConvertFToU %uint %37
119*c8dee2aaSAndroid Build Coastguard Worker         %39 = OpCompositeExtract %float %36 1
120*c8dee2aaSAndroid Build Coastguard Worker         %40 = OpConvertFToU %uint %39
121*c8dee2aaSAndroid Build Coastguard Worker         %41 = OpCompositeExtract %float %36 2
122*c8dee2aaSAndroid Build Coastguard Worker         %42 = OpConvertFToU %uint %41
123*c8dee2aaSAndroid Build Coastguard Worker         %43 = OpCompositeExtract %float %36 3
124*c8dee2aaSAndroid Build Coastguard Worker         %44 = OpConvertFToU %uint %43
125*c8dee2aaSAndroid Build Coastguard Worker         %45 = OpCompositeConstruct %v4uint %38 %40 %42 %44
126*c8dee2aaSAndroid Build Coastguard Worker               OpStore %uintValues %45
127*c8dee2aaSAndroid Build Coastguard Worker               OpStore %expectedA %51
128*c8dee2aaSAndroid Build Coastguard Worker               OpStore %expectedB %55
129*c8dee2aaSAndroid Build Coastguard Worker         %59 = OpCompositeExtract %uint %45 0
130*c8dee2aaSAndroid Build Coastguard Worker         %58 = OpExtInst %uint %1 UClamp %59 %uint_100 %uint_300
131*c8dee2aaSAndroid Build Coastguard Worker         %60 = OpIEqual %bool %58 %uint_100
132*c8dee2aaSAndroid Build Coastguard Worker               OpSelectionMerge %62 None
133*c8dee2aaSAndroid Build Coastguard Worker               OpBranchConditional %60 %61 %62
134*c8dee2aaSAndroid Build Coastguard Worker         %61 = OpLabel
135*c8dee2aaSAndroid Build Coastguard Worker         %64 = OpVectorShuffle %v2uint %45 %45 0 1
136*c8dee2aaSAndroid Build Coastguard Worker         %63 = OpExtInst %v2uint %1 UClamp %64 %66 %67
137*c8dee2aaSAndroid Build Coastguard Worker         %68 = OpVectorShuffle %v2uint %51 %51 0 1
138*c8dee2aaSAndroid Build Coastguard Worker         %69 = OpIEqual %v2bool %63 %68
139*c8dee2aaSAndroid Build Coastguard Worker         %71 = OpAll %bool %69
140*c8dee2aaSAndroid Build Coastguard Worker               OpBranch %62
141*c8dee2aaSAndroid Build Coastguard Worker         %62 = OpLabel
142*c8dee2aaSAndroid Build Coastguard Worker         %72 = OpPhi %bool %false %22 %71 %61
143*c8dee2aaSAndroid Build Coastguard Worker               OpSelectionMerge %74 None
144*c8dee2aaSAndroid Build Coastguard Worker               OpBranchConditional %72 %73 %74
145*c8dee2aaSAndroid Build Coastguard Worker         %73 = OpLabel
146*c8dee2aaSAndroid Build Coastguard Worker         %76 = OpVectorShuffle %v3uint %45 %45 0 1 2
147*c8dee2aaSAndroid Build Coastguard Worker         %75 = OpExtInst %v3uint %1 UClamp %76 %78 %79
148*c8dee2aaSAndroid Build Coastguard Worker         %80 = OpVectorShuffle %v3uint %51 %51 0 1 2
149*c8dee2aaSAndroid Build Coastguard Worker         %81 = OpIEqual %v3bool %75 %80
150*c8dee2aaSAndroid Build Coastguard Worker         %83 = OpAll %bool %81
151*c8dee2aaSAndroid Build Coastguard Worker               OpBranch %74
152*c8dee2aaSAndroid Build Coastguard Worker         %74 = OpLabel
153*c8dee2aaSAndroid Build Coastguard Worker         %84 = OpPhi %bool %false %62 %83 %73
154*c8dee2aaSAndroid Build Coastguard Worker               OpSelectionMerge %86 None
155*c8dee2aaSAndroid Build Coastguard Worker               OpBranchConditional %84 %85 %86
156*c8dee2aaSAndroid Build Coastguard Worker         %85 = OpLabel
157*c8dee2aaSAndroid Build Coastguard Worker         %87 = OpExtInst %v4uint %1 UClamp %45 %88 %89
158*c8dee2aaSAndroid Build Coastguard Worker         %90 = OpIEqual %v4bool %87 %51
159*c8dee2aaSAndroid Build Coastguard Worker         %92 = OpAll %bool %90
160*c8dee2aaSAndroid Build Coastguard Worker               OpBranch %86
161*c8dee2aaSAndroid Build Coastguard Worker         %86 = OpLabel
162*c8dee2aaSAndroid Build Coastguard Worker         %93 = OpPhi %bool %false %74 %92 %85
163*c8dee2aaSAndroid Build Coastguard Worker               OpSelectionMerge %95 None
164*c8dee2aaSAndroid Build Coastguard Worker               OpBranchConditional %93 %94 %95
165*c8dee2aaSAndroid Build Coastguard Worker         %94 = OpLabel
166*c8dee2aaSAndroid Build Coastguard Worker               OpBranch %95
167*c8dee2aaSAndroid Build Coastguard Worker         %95 = OpLabel
168*c8dee2aaSAndroid Build Coastguard Worker         %97 = OpPhi %bool %false %86 %true %94
169*c8dee2aaSAndroid Build Coastguard Worker               OpSelectionMerge %99 None
170*c8dee2aaSAndroid Build Coastguard Worker               OpBranchConditional %97 %98 %99
171*c8dee2aaSAndroid Build Coastguard Worker         %98 = OpLabel
172*c8dee2aaSAndroid Build Coastguard Worker        %101 = OpVectorShuffle %v2uint %51 %51 0 1
173*c8dee2aaSAndroid Build Coastguard Worker        %102 = OpIEqual %v2bool %100 %101
174*c8dee2aaSAndroid Build Coastguard Worker        %103 = OpAll %bool %102
175*c8dee2aaSAndroid Build Coastguard Worker               OpBranch %99
176*c8dee2aaSAndroid Build Coastguard Worker         %99 = OpLabel
177*c8dee2aaSAndroid Build Coastguard Worker        %104 = OpPhi %bool %false %95 %103 %98
178*c8dee2aaSAndroid Build Coastguard Worker               OpSelectionMerge %106 None
179*c8dee2aaSAndroid Build Coastguard Worker               OpBranchConditional %104 %105 %106
180*c8dee2aaSAndroid Build Coastguard Worker        %105 = OpLabel
181*c8dee2aaSAndroid Build Coastguard Worker        %108 = OpVectorShuffle %v3uint %51 %51 0 1 2
182*c8dee2aaSAndroid Build Coastguard Worker        %109 = OpIEqual %v3bool %107 %108
183*c8dee2aaSAndroid Build Coastguard Worker        %110 = OpAll %bool %109
184*c8dee2aaSAndroid Build Coastguard Worker               OpBranch %106
185*c8dee2aaSAndroid Build Coastguard Worker        %106 = OpLabel
186*c8dee2aaSAndroid Build Coastguard Worker        %111 = OpPhi %bool %false %99 %110 %105
187*c8dee2aaSAndroid Build Coastguard Worker               OpSelectionMerge %113 None
188*c8dee2aaSAndroid Build Coastguard Worker               OpBranchConditional %111 %112 %113
189*c8dee2aaSAndroid Build Coastguard Worker        %112 = OpLabel
190*c8dee2aaSAndroid Build Coastguard Worker               OpBranch %113
191*c8dee2aaSAndroid Build Coastguard Worker        %113 = OpLabel
192*c8dee2aaSAndroid Build Coastguard Worker        %114 = OpPhi %bool %false %106 %true %112
193*c8dee2aaSAndroid Build Coastguard Worker               OpSelectionMerge %116 None
194*c8dee2aaSAndroid Build Coastguard Worker               OpBranchConditional %114 %115 %116
195*c8dee2aaSAndroid Build Coastguard Worker        %115 = OpLabel
196*c8dee2aaSAndroid Build Coastguard Worker        %117 = OpExtInst %uint %1 UClamp %59 %uint_100 %uint_300
197*c8dee2aaSAndroid Build Coastguard Worker        %118 = OpIEqual %bool %117 %uint_100
198*c8dee2aaSAndroid Build Coastguard Worker               OpBranch %116
199*c8dee2aaSAndroid Build Coastguard Worker        %116 = OpLabel
200*c8dee2aaSAndroid Build Coastguard Worker        %119 = OpPhi %bool %false %113 %118 %115
201*c8dee2aaSAndroid Build Coastguard Worker               OpSelectionMerge %121 None
202*c8dee2aaSAndroid Build Coastguard Worker               OpBranchConditional %119 %120 %121
203*c8dee2aaSAndroid Build Coastguard Worker        %120 = OpLabel
204*c8dee2aaSAndroid Build Coastguard Worker        %123 = OpVectorShuffle %v2uint %45 %45 0 1
205*c8dee2aaSAndroid Build Coastguard Worker        %122 = OpExtInst %v2uint %1 UClamp %123 %125 %127
206*c8dee2aaSAndroid Build Coastguard Worker        %128 = OpVectorShuffle %v2uint %55 %55 0 1
207*c8dee2aaSAndroid Build Coastguard Worker        %129 = OpIEqual %v2bool %122 %128
208*c8dee2aaSAndroid Build Coastguard Worker        %130 = OpAll %bool %129
209*c8dee2aaSAndroid Build Coastguard Worker               OpBranch %121
210*c8dee2aaSAndroid Build Coastguard Worker        %121 = OpLabel
211*c8dee2aaSAndroid Build Coastguard Worker        %131 = OpPhi %bool %false %116 %130 %120
212*c8dee2aaSAndroid Build Coastguard Worker               OpSelectionMerge %133 None
213*c8dee2aaSAndroid Build Coastguard Worker               OpBranchConditional %131 %132 %133
214*c8dee2aaSAndroid Build Coastguard Worker        %132 = OpLabel
215*c8dee2aaSAndroid Build Coastguard Worker        %135 = OpVectorShuffle %v3uint %45 %45 0 1 2
216*c8dee2aaSAndroid Build Coastguard Worker        %134 = OpExtInst %v3uint %1 UClamp %135 %136 %137
217*c8dee2aaSAndroid Build Coastguard Worker        %138 = OpVectorShuffle %v3uint %55 %55 0 1 2
218*c8dee2aaSAndroid Build Coastguard Worker        %139 = OpIEqual %v3bool %134 %138
219*c8dee2aaSAndroid Build Coastguard Worker        %140 = OpAll %bool %139
220*c8dee2aaSAndroid Build Coastguard Worker               OpBranch %133
221*c8dee2aaSAndroid Build Coastguard Worker        %133 = OpLabel
222*c8dee2aaSAndroid Build Coastguard Worker        %141 = OpPhi %bool %false %121 %140 %132
223*c8dee2aaSAndroid Build Coastguard Worker               OpSelectionMerge %143 None
224*c8dee2aaSAndroid Build Coastguard Worker               OpBranchConditional %141 %142 %143
225*c8dee2aaSAndroid Build Coastguard Worker        %142 = OpLabel
226*c8dee2aaSAndroid Build Coastguard Worker        %144 = OpExtInst %v4uint %1 UClamp %45 %145 %147
227*c8dee2aaSAndroid Build Coastguard Worker        %148 = OpIEqual %v4bool %144 %55
228*c8dee2aaSAndroid Build Coastguard Worker        %149 = OpAll %bool %148
229*c8dee2aaSAndroid Build Coastguard Worker               OpBranch %143
230*c8dee2aaSAndroid Build Coastguard Worker        %143 = OpLabel
231*c8dee2aaSAndroid Build Coastguard Worker        %150 = OpPhi %bool %false %133 %149 %142
232*c8dee2aaSAndroid Build Coastguard Worker               OpSelectionMerge %152 None
233*c8dee2aaSAndroid Build Coastguard Worker               OpBranchConditional %150 %151 %152
234*c8dee2aaSAndroid Build Coastguard Worker        %151 = OpLabel
235*c8dee2aaSAndroid Build Coastguard Worker               OpBranch %152
236*c8dee2aaSAndroid Build Coastguard Worker        %152 = OpLabel
237*c8dee2aaSAndroid Build Coastguard Worker        %153 = OpPhi %bool %false %143 %true %151
238*c8dee2aaSAndroid Build Coastguard Worker               OpSelectionMerge %155 None
239*c8dee2aaSAndroid Build Coastguard Worker               OpBranchConditional %153 %154 %155
240*c8dee2aaSAndroid Build Coastguard Worker        %154 = OpLabel
241*c8dee2aaSAndroid Build Coastguard Worker        %156 = OpVectorShuffle %v2uint %55 %55 0 1
242*c8dee2aaSAndroid Build Coastguard Worker        %157 = OpIEqual %v2bool %100 %156
243*c8dee2aaSAndroid Build Coastguard Worker        %158 = OpAll %bool %157
244*c8dee2aaSAndroid Build Coastguard Worker               OpBranch %155
245*c8dee2aaSAndroid Build Coastguard Worker        %155 = OpLabel
246*c8dee2aaSAndroid Build Coastguard Worker        %159 = OpPhi %bool %false %152 %158 %154
247*c8dee2aaSAndroid Build Coastguard Worker               OpSelectionMerge %161 None
248*c8dee2aaSAndroid Build Coastguard Worker               OpBranchConditional %159 %160 %161
249*c8dee2aaSAndroid Build Coastguard Worker        %160 = OpLabel
250*c8dee2aaSAndroid Build Coastguard Worker        %163 = OpVectorShuffle %v3uint %55 %55 0 1 2
251*c8dee2aaSAndroid Build Coastguard Worker        %164 = OpIEqual %v3bool %162 %163
252*c8dee2aaSAndroid Build Coastguard Worker        %165 = OpAll %bool %164
253*c8dee2aaSAndroid Build Coastguard Worker               OpBranch %161
254*c8dee2aaSAndroid Build Coastguard Worker        %161 = OpLabel
255*c8dee2aaSAndroid Build Coastguard Worker        %166 = OpPhi %bool %false %155 %165 %160
256*c8dee2aaSAndroid Build Coastguard Worker               OpSelectionMerge %168 None
257*c8dee2aaSAndroid Build Coastguard Worker               OpBranchConditional %166 %167 %168
258*c8dee2aaSAndroid Build Coastguard Worker        %167 = OpLabel
259*c8dee2aaSAndroid Build Coastguard Worker               OpBranch %168
260*c8dee2aaSAndroid Build Coastguard Worker        %168 = OpLabel
261*c8dee2aaSAndroid Build Coastguard Worker        %169 = OpPhi %bool %false %161 %true %167
262*c8dee2aaSAndroid Build Coastguard Worker               OpSelectionMerge %174 None
263*c8dee2aaSAndroid Build Coastguard Worker               OpBranchConditional %169 %172 %173
264*c8dee2aaSAndroid Build Coastguard Worker        %172 = OpLabel
265*c8dee2aaSAndroid Build Coastguard Worker        %175 = OpAccessChain %_ptr_Uniform_v4float %7 %int_1
266*c8dee2aaSAndroid Build Coastguard Worker        %177 = OpLoad %v4float %175
267*c8dee2aaSAndroid Build Coastguard Worker               OpStore %170 %177
268*c8dee2aaSAndroid Build Coastguard Worker               OpBranch %174
269*c8dee2aaSAndroid Build Coastguard Worker        %173 = OpLabel
270*c8dee2aaSAndroid Build Coastguard Worker        %178 = OpAccessChain %_ptr_Uniform_v4float %7 %int_2
271*c8dee2aaSAndroid Build Coastguard Worker        %180 = OpLoad %v4float %178
272*c8dee2aaSAndroid Build Coastguard Worker               OpStore %170 %180
273*c8dee2aaSAndroid Build Coastguard Worker               OpBranch %174
274*c8dee2aaSAndroid Build Coastguard Worker        %174 = OpLabel
275*c8dee2aaSAndroid Build Coastguard Worker        %181 = OpLoad %v4float %170
276*c8dee2aaSAndroid Build Coastguard Worker               OpReturnValue %181
277*c8dee2aaSAndroid Build Coastguard Worker               OpFunctionEnd
278