1OpCapability Shader
2%1 = OpExtInstImport "GLSL.std.450"
3OpMemoryModel Logical GLSL450
4OpEntryPoint Fragment %_entrypoint_v "_entrypoint" %sk_FragColor %sk_Clockwise
5OpExecutionMode %_entrypoint_v OriginUpperLeft
6OpName %sk_FragColor "sk_FragColor"
7OpName %sk_Clockwise "sk_Clockwise"
8OpName %_UniformBuffer "_UniformBuffer"
9OpMemberName %_UniformBuffer 0 "colorWhite"
10OpName %_entrypoint_v "_entrypoint_v"
11OpName %main "main"
12OpName %x "x"
13OpName %r "r"
14OpName %b "b"
15OpDecorate %sk_FragColor RelaxedPrecision
16OpDecorate %sk_FragColor Location 0
17OpDecorate %sk_FragColor Index 0
18OpDecorate %sk_Clockwise BuiltIn FrontFacing
19OpMemberDecorate %_UniformBuffer 0 Offset 0
20OpMemberDecorate %_UniformBuffer 0 RelaxedPrecision
21OpDecorate %_UniformBuffer Block
22OpDecorate %10 Binding 0
23OpDecorate %10 DescriptorSet 0
24OpDecorate %x RelaxedPrecision
25OpDecorate %32 RelaxedPrecision
26OpDecorate %r RelaxedPrecision
27OpDecorate %41 RelaxedPrecision
28OpDecorate %45 RelaxedPrecision
29OpDecorate %48 RelaxedPrecision
30OpDecorate %49 RelaxedPrecision
31OpDecorate %53 RelaxedPrecision
32OpDecorate %54 RelaxedPrecision
33OpDecorate %b RelaxedPrecision
34OpDecorate %61 RelaxedPrecision
35OpDecorate %63 RelaxedPrecision
36OpDecorate %66 RelaxedPrecision
37OpDecorate %67 RelaxedPrecision
38OpDecorate %73 RelaxedPrecision
39OpDecorate %74 RelaxedPrecision
40OpDecorate %75 RelaxedPrecision
41%float = OpTypeFloat 32
42%v4float = OpTypeVector %float 4
43%_ptr_Output_v4float = OpTypePointer Output %v4float
44%sk_FragColor = OpVariable %_ptr_Output_v4float Output
45%bool = OpTypeBool
46%_ptr_Input_bool = OpTypePointer Input %bool
47%sk_Clockwise = OpVariable %_ptr_Input_bool Input
48%_UniformBuffer = OpTypeStruct %v4float
49%_ptr_Uniform__UniformBuffer = OpTypePointer Uniform %_UniformBuffer
50%10 = OpVariable %_ptr_Uniform__UniformBuffer Uniform
51%void = OpTypeVoid
52%15 = OpTypeFunction %void
53%v2float = OpTypeVector %float 2
54%float_0 = OpConstant %float 0
55%19 = OpConstantComposite %v2float %float_0 %float_0
56%_ptr_Function_v2float = OpTypePointer Function %v2float
57%23 = OpTypeFunction %v4float %_ptr_Function_v2float
58%_ptr_Function_v4float = OpTypePointer Function %v4float
59%_ptr_Uniform_v4float = OpTypePointer Uniform %v4float
60%int = OpTypeInt 32 1
61%int_0 = OpConstant %int 0
62%_ptr_Function_float = OpTypePointer Function %float
63%float_n5 = OpConstant %float -5
64%float_5 = OpConstant %float 5
65%float_1 = OpConstant %float 1
66%int_2 = OpConstant %int 2
67%int_1 = OpConstant %int 1
68%_entrypoint_v = OpFunction %void None %15
69%16 = OpLabel
70%20 = OpVariable %_ptr_Function_v2float Function
71OpStore %20 %19
72%22 = OpFunctionCall %v4float %main %20
73OpStore %sk_FragColor %22
74OpReturn
75OpFunctionEnd
76%main = OpFunction %v4float None %23
77%24 = OpFunctionParameter %_ptr_Function_v2float
78%25 = OpLabel
79%x = OpVariable %_ptr_Function_v4float Function
80%r = OpVariable %_ptr_Function_float Function
81%b = OpVariable %_ptr_Function_float Function
82%28 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0
83%32 = OpLoad %v4float %28
84OpStore %x %32
85OpStore %r %float_n5
86OpBranch %36
87%36 = OpLabel
88OpLoopMerge %40 %39 None
89OpBranch %37
90%37 = OpLabel
91%41 = OpLoad %float %r
92%43 = OpFOrdLessThan %bool %41 %float_5
93OpBranchConditional %43 %38 %40
94%38 = OpLabel
95%45 = OpLoad %float %r
96%44 = OpExtInst %float %1 FClamp %45 %float_0 %float_1
97%47 = OpAccessChain %_ptr_Function_float %x %int_0
98OpStore %47 %44
99%48 = OpLoad %v4float %x
100%49 = OpCompositeExtract %float %48 0
101%50 = OpFOrdEqual %bool %49 %float_0
102OpSelectionMerge %52 None
103OpBranchConditional %50 %51 %52
104%51 = OpLabel
105OpBranch %40
106%52 = OpLabel
107OpBranch %39
108%39 = OpLabel
109%53 = OpLoad %float %r
110%54 = OpFAdd %float %53 %float_1
111OpStore %r %54
112OpBranch %36
113%40 = OpLabel
114OpStore %b %float_5
115OpBranch %56
116%56 = OpLabel
117OpLoopMerge %60 %59 None
118OpBranch %57
119%57 = OpLabel
120%61 = OpLoad %float %b
121%62 = OpFOrdGreaterThanEqual %bool %61 %float_0
122OpBranchConditional %62 %58 %60
123%58 = OpLabel
124%63 = OpLoad %float %b
125%64 = OpAccessChain %_ptr_Function_float %x %int_2
126OpStore %64 %63
127%66 = OpLoad %v4float %x
128%67 = OpCompositeExtract %float %66 3
129%68 = OpFOrdEqual %bool %67 %float_1
130OpSelectionMerge %70 None
131OpBranchConditional %68 %69 %70
132%69 = OpLabel
133OpBranch %59
134%70 = OpLabel
135%71 = OpAccessChain %_ptr_Function_float %x %int_1
136OpStore %71 %float_0
137OpBranch %59
138%59 = OpLabel
139%73 = OpLoad %float %b
140%74 = OpFSub %float %73 %float_1
141OpStore %b %74
142OpBranch %56
143%60 = OpLabel
144%75 = OpLoad %v4float %x
145OpReturnValue %75
146OpFunctionEnd
147