• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1OpCapability Shader
2%1 = OpExtInstImport "GLSL.std.450"
3OpMemoryModel Logical GLSL450
4OpEntryPoint Fragment %_entrypoint_v "_entrypoint" %sk_Clockwise %sk_FragColor
5OpExecutionMode %_entrypoint_v OriginUpperLeft
6OpName %sk_Clockwise "sk_Clockwise"
7OpName %sk_FragColor "sk_FragColor"
8OpName %_entrypoint_v "_entrypoint_v"
9OpName %main "main"
10OpName %x "x"
11OpDecorate %sk_Clockwise BuiltIn FrontFacing
12OpDecorate %sk_FragColor RelaxedPrecision
13OpDecorate %sk_FragColor Location 0
14OpDecorate %sk_FragColor Index 0
15OpDecorate %x RelaxedPrecision
16OpDecorate %32 RelaxedPrecision
17OpDecorate %33 RelaxedPrecision
18OpDecorate %39 RelaxedPrecision
19OpDecorate %41 RelaxedPrecision
20OpDecorate %42 RelaxedPrecision
21OpDecorate %43 RelaxedPrecision
22OpDecorate %52 RelaxedPrecision
23OpDecorate %53 RelaxedPrecision
24OpDecorate %57 RelaxedPrecision
25OpDecorate %58 RelaxedPrecision
26OpDecorate %59 RelaxedPrecision
27OpDecorate %60 RelaxedPrecision
28OpDecorate %66 RelaxedPrecision
29%bool = OpTypeBool
30%_ptr_Input_bool = OpTypePointer Input %bool
31%sk_Clockwise = OpVariable %_ptr_Input_bool Input
32%float = OpTypeFloat 32
33%v4float = OpTypeVector %float 4
34%_ptr_Output_v4float = OpTypePointer Output %v4float
35%sk_FragColor = OpVariable %_ptr_Output_v4float Output
36%void = OpTypeVoid
37%12 = OpTypeFunction %void
38%float_0 = OpConstant %float 0
39%v2float = OpTypeVector %float 2
40%16 = OpConstantComposite %v2float %float_0 %float_0
41%_ptr_Function_v2float = OpTypePointer Function %v2float
42%20 = OpTypeFunction %v4float %_ptr_Function_v2float
43%_ptr_Function_v4float = OpTypePointer Function %v4float
44%float_1 = OpConstant %float 1
45%26 = OpConstantComposite %v4float %float_1 %float_1 %float_1 %float_1
46%_ptr_Function_float = OpTypePointer Function %float
47%int = OpTypeInt 32 1
48%int_0 = OpConstant %int 0
49%float_0_25 = OpConstant %float 0.25
50%int_2 = OpConstant %int 2
51%int_1 = OpConstant %int 1
52%_entrypoint_v = OpFunction %void None %12
53%13 = OpLabel
54%17 = OpVariable %_ptr_Function_v2float Function
55OpStore %17 %16
56%19 = OpFunctionCall %v4float %main %17
57OpStore %sk_FragColor %19
58OpReturn
59OpFunctionEnd
60%main = OpFunction %v4float None %20
61%21 = OpFunctionParameter %_ptr_Function_v2float
62%22 = OpLabel
63%x = OpVariable %_ptr_Function_v4float Function
64OpStore %x %26
65OpBranch %27
66%27 = OpLabel
67OpLoopMerge %31 %30 None
68OpBranch %28
69%28 = OpLabel
70%32 = OpLoad %v4float %x
71%33 = OpCompositeExtract %float %32 3
72%34 = OpFOrdEqual %bool %33 %float_1
73OpBranchConditional %34 %29 %31
74%29 = OpLabel
75%35 = OpAccessChain %_ptr_Function_float %x %int_0
76%39 = OpLoad %float %35
77%41 = OpFSub %float %39 %float_0_25
78OpStore %35 %41
79%42 = OpLoad %v4float %x
80%43 = OpCompositeExtract %float %42 0
81%44 = OpFOrdLessThanEqual %bool %43 %float_0
82OpSelectionMerge %46 None
83OpBranchConditional %44 %45 %46
84%45 = OpLabel
85OpBranch %31
86%46 = OpLabel
87OpBranch %30
88%30 = OpLabel
89OpBranch %27
90%31 = OpLabel
91OpBranch %47
92%47 = OpLabel
93OpLoopMerge %51 %50 None
94OpBranch %48
95%48 = OpLabel
96%52 = OpLoad %v4float %x
97%53 = OpCompositeExtract %float %52 2
98%54 = OpFOrdGreaterThan %bool %53 %float_0
99OpBranchConditional %54 %49 %51
100%49 = OpLabel
101%55 = OpAccessChain %_ptr_Function_float %x %int_2
102%57 = OpLoad %float %55
103%58 = OpFSub %float %57 %float_0_25
104OpStore %55 %58
105%59 = OpLoad %v4float %x
106%60 = OpCompositeExtract %float %59 3
107%61 = OpFOrdEqual %bool %60 %float_1
108OpSelectionMerge %63 None
109OpBranchConditional %61 %62 %63
110%62 = OpLabel
111OpBranch %50
112%63 = OpLabel
113%64 = OpAccessChain %_ptr_Function_float %x %int_1
114OpStore %64 %float_0
115OpBranch %50
116%50 = OpLabel
117OpBranch %47
118%51 = OpLabel
119%66 = OpLoad %v4float %x
120OpReturnValue %66
121OpFunctionEnd
122