• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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 "colorGreen"
10OpMemberName %_UniformBuffer 1 "colorRed"
11OpName %_entrypoint_v "_entrypoint_v"
12OpName %main "main"
13OpName %i2 "i2"
14OpName %s2 "s2"
15OpName %f2 "f2"
16OpName %h2 "h2"
17OpName %cf2 "cf2"
18OpDecorate %sk_FragColor RelaxedPrecision
19OpDecorate %sk_FragColor Location 0
20OpDecorate %sk_FragColor Index 0
21OpDecorate %sk_Clockwise BuiltIn FrontFacing
22OpMemberDecorate %_UniformBuffer 0 Offset 0
23OpMemberDecorate %_UniformBuffer 0 RelaxedPrecision
24OpMemberDecorate %_UniformBuffer 1 Offset 16
25OpMemberDecorate %_UniformBuffer 1 RelaxedPrecision
26OpDecorate %_UniformBuffer Block
27OpDecorate %10 Binding 0
28OpDecorate %10 DescriptorSet 0
29OpDecorate %_arr_int_int_2 ArrayStride 16
30OpDecorate %s2 RelaxedPrecision
31OpDecorate %35 RelaxedPrecision
32OpDecorate %_arr_float_int_2 ArrayStride 16
33OpDecorate %h2 RelaxedPrecision
34OpDecorate %44 RelaxedPrecision
35OpDecorate %45 RelaxedPrecision
36OpDecorate %47 RelaxedPrecision
37OpDecorate %53 RelaxedPrecision
38OpDecorate %64 RelaxedPrecision
39OpDecorate %87 RelaxedPrecision
40OpDecorate %105 RelaxedPrecision
41OpDecorate %107 RelaxedPrecision
42OpDecorate %108 RelaxedPrecision
43%float = OpTypeFloat 32
44%v4float = OpTypeVector %float 4
45%_ptr_Output_v4float = OpTypePointer Output %v4float
46%sk_FragColor = OpVariable %_ptr_Output_v4float Output
47%bool = OpTypeBool
48%_ptr_Input_bool = OpTypePointer Input %bool
49%sk_Clockwise = OpVariable %_ptr_Input_bool Input
50%_UniformBuffer = OpTypeStruct %v4float %v4float
51%_ptr_Uniform__UniformBuffer = OpTypePointer Uniform %_UniformBuffer
52%10 = OpVariable %_ptr_Uniform__UniformBuffer Uniform
53%void = OpTypeVoid
54%15 = OpTypeFunction %void
55%v2float = OpTypeVector %float 2
56%float_0 = OpConstant %float 0
57%19 = OpConstantComposite %v2float %float_0 %float_0
58%_ptr_Function_v2float = OpTypePointer Function %v2float
59%23 = OpTypeFunction %v4float %_ptr_Function_v2float
60%int = OpTypeInt 32 1
61%int_2 = OpConstant %int 2
62%_arr_int_int_2 = OpTypeArray %int %int_2
63%_ptr_Function__arr_int_int_2 = OpTypePointer Function %_arr_int_int_2
64%int_1 = OpConstant %int 1
65%_ptr_Function__arr_int_int_2_0 = OpTypePointer Function %_arr_int_int_2
66%_arr_float_int_2 = OpTypeArray %float %int_2
67%_ptr_Function__arr_float_int_2 = OpTypePointer Function %_arr_float_int_2
68%float_1 = OpConstant %float 1
69%float_2 = OpConstant %float 2
70%_ptr_Function__arr_float_int_2_0 = OpTypePointer Function %_arr_float_int_2
71%false = OpConstantFalse %bool
72%_ptr_Function_v4float = OpTypePointer Function %v4float
73%_ptr_Uniform_v4float = OpTypePointer Uniform %v4float
74%int_0 = OpConstant %int 0
75%_entrypoint_v = OpFunction %void None %15
76%16 = OpLabel
77%20 = OpVariable %_ptr_Function_v2float Function
78OpStore %20 %19
79%22 = OpFunctionCall %v4float %main %20
80OpStore %sk_FragColor %22
81OpReturn
82OpFunctionEnd
83%main = OpFunction %v4float None %23
84%24 = OpFunctionParameter %_ptr_Function_v2float
85%25 = OpLabel
86%i2 = OpVariable %_ptr_Function__arr_int_int_2 Function
87%s2 = OpVariable %_ptr_Function__arr_int_int_2_0 Function
88%f2 = OpVariable %_ptr_Function__arr_float_int_2 Function
89%h2 = OpVariable %_ptr_Function__arr_float_int_2_0 Function
90%cf2 = OpVariable %_ptr_Function__arr_float_int_2 Function
91%97 = OpVariable %_ptr_Function_v4float Function
92%32 = OpCompositeConstruct %_arr_int_int_2 %int_1 %int_2
93OpStore %i2 %32
94%35 = OpCompositeConstruct %_arr_int_int_2 %int_1 %int_2
95OpStore %s2 %35
96%41 = OpCompositeConstruct %_arr_float_int_2 %float_1 %float_2
97OpStore %f2 %41
98%44 = OpCompositeConstruct %_arr_float_int_2 %float_1 %float_2
99OpStore %h2 %44
100%45 = OpLoad %_arr_int_int_2 %s2
101OpStore %i2 %45
102%46 = OpLoad %_arr_int_int_2 %i2
103OpStore %s2 %46
104%47 = OpLoad %_arr_float_int_2 %h2
105OpStore %f2 %47
106%48 = OpLoad %_arr_float_int_2 %f2
107OpStore %h2 %48
108%50 = OpCompositeConstruct %_arr_float_int_2 %float_1 %float_2
109OpStore %cf2 %50
110%52 = OpLoad %_arr_int_int_2 %i2
111%53 = OpLoad %_arr_int_int_2 %s2
112%54 = OpCompositeExtract %int %52 0
113%55 = OpCompositeExtract %int %53 0
114%56 = OpIEqual %bool %54 %55
115%57 = OpCompositeExtract %int %52 1
116%58 = OpCompositeExtract %int %53 1
117%59 = OpIEqual %bool %57 %58
118%60 = OpLogicalAnd %bool %59 %56
119OpSelectionMerge %62 None
120OpBranchConditional %60 %61 %62
121%61 = OpLabel
122%63 = OpLoad %_arr_float_int_2 %f2
123%64 = OpLoad %_arr_float_int_2 %h2
124%65 = OpCompositeExtract %float %63 0
125%66 = OpCompositeExtract %float %64 0
126%67 = OpFOrdEqual %bool %65 %66
127%68 = OpCompositeExtract %float %63 1
128%69 = OpCompositeExtract %float %64 1
129%70 = OpFOrdEqual %bool %68 %69
130%71 = OpLogicalAnd %bool %70 %67
131OpBranch %62
132%62 = OpLabel
133%72 = OpPhi %bool %false %25 %71 %61
134OpSelectionMerge %74 None
135OpBranchConditional %72 %73 %74
136%73 = OpLabel
137%75 = OpLoad %_arr_int_int_2 %i2
138%76 = OpCompositeConstruct %_arr_int_int_2 %int_1 %int_2
139%77 = OpCompositeExtract %int %75 0
140%78 = OpCompositeExtract %int %76 0
141%79 = OpIEqual %bool %77 %78
142%80 = OpCompositeExtract %int %75 1
143%81 = OpCompositeExtract %int %76 1
144%82 = OpIEqual %bool %80 %81
145%83 = OpLogicalAnd %bool %82 %79
146OpBranch %74
147%74 = OpLabel
148%84 = OpPhi %bool %false %62 %83 %73
149OpSelectionMerge %86 None
150OpBranchConditional %84 %85 %86
151%85 = OpLabel
152%87 = OpLoad %_arr_float_int_2 %h2
153%88 = OpLoad %_arr_float_int_2 %cf2
154%89 = OpCompositeExtract %float %87 0
155%90 = OpCompositeExtract %float %88 0
156%91 = OpFOrdEqual %bool %89 %90
157%92 = OpCompositeExtract %float %87 1
158%93 = OpCompositeExtract %float %88 1
159%94 = OpFOrdEqual %bool %92 %93
160%95 = OpLogicalAnd %bool %94 %91
161OpBranch %86
162%86 = OpLabel
163%96 = OpPhi %bool %false %74 %95 %85
164OpSelectionMerge %101 None
165OpBranchConditional %96 %99 %100
166%99 = OpLabel
167%102 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0
168%105 = OpLoad %v4float %102
169OpStore %97 %105
170OpBranch %101
171%100 = OpLabel
172%106 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1
173%107 = OpLoad %v4float %106
174OpStore %97 %107
175OpBranch %101
176%101 = OpLabel
177%108 = OpLoad %v4float %97
178OpReturnValue %108
179OpFunctionEnd
180