• 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 %tricky_h2hhh2h "tricky_h2hhh2h"
13OpName %func_vh4 "func_vh4"
14OpName %t "t"
15OpName %main "main"
16OpName %result "result"
17OpDecorate %sk_FragColor RelaxedPrecision
18OpDecorate %sk_FragColor Location 0
19OpDecorate %sk_FragColor Index 0
20OpDecorate %sk_Clockwise BuiltIn FrontFacing
21OpMemberDecorate %_UniformBuffer 0 Offset 0
22OpMemberDecorate %_UniformBuffer 0 RelaxedPrecision
23OpMemberDecorate %_UniformBuffer 1 Offset 16
24OpMemberDecorate %_UniformBuffer 1 RelaxedPrecision
25OpDecorate %_UniformBuffer Block
26OpDecorate %12 Binding 0
27OpDecorate %12 DescriptorSet 0
28OpDecorate %32 RelaxedPrecision
29OpDecorate %33 RelaxedPrecision
30OpDecorate %34 RelaxedPrecision
31OpDecorate %35 RelaxedPrecision
32OpDecorate %36 RelaxedPrecision
33OpDecorate %37 RelaxedPrecision
34OpDecorate %38 RelaxedPrecision
35OpDecorate %t RelaxedPrecision
36OpDecorate %48 RelaxedPrecision
37OpDecorate %49 RelaxedPrecision
38OpDecorate %50 RelaxedPrecision
39OpDecorate %54 RelaxedPrecision
40OpDecorate %55 RelaxedPrecision
41OpDecorate %56 RelaxedPrecision
42OpDecorate %57 RelaxedPrecision
43OpDecorate %58 RelaxedPrecision
44OpDecorate %59 RelaxedPrecision
45OpDecorate %result RelaxedPrecision
46OpDecorate %65 RelaxedPrecision
47OpDecorate %67 RelaxedPrecision
48OpDecorate %68 RelaxedPrecision
49OpDecorate %80 RelaxedPrecision
50OpDecorate %83 RelaxedPrecision
51OpDecorate %84 RelaxedPrecision
52%float = OpTypeFloat 32
53%v4float = OpTypeVector %float 4
54%_ptr_Output_v4float = OpTypePointer Output %v4float
55%sk_FragColor = OpVariable %_ptr_Output_v4float Output
56%bool = OpTypeBool
57%_ptr_Input_bool = OpTypePointer Input %bool
58%sk_Clockwise = OpVariable %_ptr_Input_bool Input
59%_UniformBuffer = OpTypeStruct %v4float %v4float
60%_ptr_Uniform__UniformBuffer = OpTypePointer Uniform %_UniformBuffer
61%12 = OpVariable %_ptr_Uniform__UniformBuffer Uniform
62%void = OpTypeVoid
63%17 = OpTypeFunction %void
64%v2float = OpTypeVector %float 2
65%float_0 = OpConstant %float 0
66%21 = OpConstantComposite %v2float %float_0 %float_0
67%_ptr_Function_v2float = OpTypePointer Function %v2float
68%_ptr_Function_float = OpTypePointer Function %float
69%25 = OpTypeFunction %v2float %_ptr_Function_float %_ptr_Function_float %_ptr_Function_v2float %_ptr_Function_float
70%_ptr_Function_v4float = OpTypePointer Function %v4float
71%39 = OpTypeFunction %void %_ptr_Function_v4float
72%float_1 = OpConstant %float 1
73%float_2 = OpConstant %float 2
74%float_5 = OpConstant %float 5
75%60 = OpTypeFunction %v4float %_ptr_Function_v2float
76%float_3 = OpConstant %float 3
77%65 = OpConstantComposite %v4float %float_0 %float_1 %float_2 %float_3
78%68 = OpConstantComposite %v4float %float_2 %float_3 %float_0 %float_5
79%v4bool = OpTypeVector %bool 4
80%_ptr_Uniform_v4float = OpTypePointer Uniform %v4float
81%int = OpTypeInt 32 1
82%int_0 = OpConstant %int 0
83%int_1 = OpConstant %int 1
84%_entrypoint_v = OpFunction %void None %17
85%18 = OpLabel
86%22 = OpVariable %_ptr_Function_v2float Function
87OpStore %22 %21
88%24 = OpFunctionCall %v4float %main %22
89OpStore %sk_FragColor %24
90OpReturn
91OpFunctionEnd
92%tricky_h2hhh2h = OpFunction %v2float None %25
93%27 = OpFunctionParameter %_ptr_Function_float
94%28 = OpFunctionParameter %_ptr_Function_float
95%29 = OpFunctionParameter %_ptr_Function_v2float
96%30 = OpFunctionParameter %_ptr_Function_float
97%31 = OpLabel
98%32 = OpLoad %v2float %29
99%33 = OpVectorShuffle %v2float %32 %32 1 0
100OpStore %29 %33
101%34 = OpLoad %float %27
102%35 = OpLoad %float %28
103%36 = OpFAdd %float %34 %35
104%37 = OpLoad %float %30
105%38 = OpCompositeConstruct %v2float %36 %37
106OpReturnValue %38
107OpFunctionEnd
108%func_vh4 = OpFunction %void None %39
109%41 = OpFunctionParameter %_ptr_Function_v4float
110%42 = OpLabel
111%t = OpVariable %_ptr_Function_v2float Function
112%45 = OpVariable %_ptr_Function_float Function
113%47 = OpVariable %_ptr_Function_float Function
114%50 = OpVariable %_ptr_Function_v2float Function
115%52 = OpVariable %_ptr_Function_float Function
116OpStore %45 %float_1
117OpStore %47 %float_2
118%48 = OpLoad %v4float %41
119%49 = OpVectorShuffle %v2float %48 %48 0 2
120OpStore %50 %49
121OpStore %52 %float_5
122%53 = OpFunctionCall %v2float %tricky_h2hhh2h %45 %47 %50 %52
123%54 = OpLoad %v2float %50
124%55 = OpLoad %v4float %41
125%56 = OpVectorShuffle %v4float %55 %54 4 1 5 3
126OpStore %41 %56
127OpStore %t %53
128%57 = OpLoad %v2float %t
129%58 = OpLoad %v4float %41
130%59 = OpVectorShuffle %v4float %58 %57 0 4 2 5
131OpStore %41 %59
132OpReturn
133OpFunctionEnd
134%main = OpFunction %v4float None %60
135%61 = OpFunctionParameter %_ptr_Function_v2float
136%62 = OpLabel
137%result = OpVariable %_ptr_Function_v4float Function
138%72 = OpVariable %_ptr_Function_v4float Function
139OpStore %result %65
140%66 = OpFunctionCall %void %func_vh4 %result
141%67 = OpLoad %v4float %result
142%69 = OpFOrdEqual %v4bool %67 %68
143%71 = OpAll %bool %69
144OpSelectionMerge %75 None
145OpBranchConditional %71 %73 %74
146%73 = OpLabel
147%76 = OpAccessChain %_ptr_Uniform_v4float %12 %int_0
148%80 = OpLoad %v4float %76
149OpStore %72 %80
150OpBranch %75
151%74 = OpLabel
152%81 = OpAccessChain %_ptr_Uniform_v4float %12 %int_1
153%83 = OpLoad %v4float %81
154OpStore %72 %83
155OpBranch %75
156%75 = OpLabel
157%84 = OpLoad %v4float %72
158OpReturnValue %84
159OpFunctionEnd
160