• 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 %_entrypoint_v "_entrypoint_v"
9OpName %main "main"
10OpName %B "B"
11OpName %F "F"
12OpName %I "I"
13OpDecorate %sk_FragColor RelaxedPrecision
14OpDecorate %sk_FragColor Location 0
15OpDecorate %sk_FragColor Index 0
16OpDecorate %sk_Clockwise BuiltIn FrontFacing
17OpDecorate %60 RelaxedPrecision
18OpDecorate %64 RelaxedPrecision
19OpDecorate %69 RelaxedPrecision
20OpDecorate %72 RelaxedPrecision
21OpDecorate %81 RelaxedPrecision
22OpDecorate %82 RelaxedPrecision
23%float = OpTypeFloat 32
24%v4float = OpTypeVector %float 4
25%_ptr_Output_v4float = OpTypePointer Output %v4float
26%sk_FragColor = OpVariable %_ptr_Output_v4float Output
27%bool = OpTypeBool
28%_ptr_Input_bool = OpTypePointer Input %bool
29%sk_Clockwise = OpVariable %_ptr_Input_bool Input
30%void = OpTypeVoid
31%12 = OpTypeFunction %void
32%v2float = OpTypeVector %float 2
33%float_0 = OpConstant %float 0
34%16 = OpConstantComposite %v2float %float_0 %float_0
35%_ptr_Function_v2float = OpTypePointer Function %v2float
36%20 = OpTypeFunction %v4float %_ptr_Function_v2float
37%v3bool = OpTypeVector %bool 3
38%_ptr_Function_v3bool = OpTypePointer Function %v3bool
39%true = OpConstantTrue %bool
40%_ptr_Function_bool = OpTypePointer Function %bool
41%int = OpTypeInt 32 1
42%int_0 = OpConstant %int 0
43%int_1 = OpConstant %int 1
44%int_2 = OpConstant %int 2
45%v3float = OpTypeVector %float 3
46%_ptr_Function_v3float = OpTypePointer Function %v3float
47%float_1_23000002 = OpConstant %float 1.23000002
48%_ptr_Function_float = OpTypePointer Function %float
49%float_1 = OpConstant %float 1
50%v3int = OpTypeVector %int 3
51%_ptr_Function_v3int = OpTypePointer Function %v3int
52%_ptr_Function_int = OpTypePointer Function %int
53%false = OpConstantFalse %bool
54%_entrypoint_v = OpFunction %void None %12
55%13 = OpLabel
56%17 = OpVariable %_ptr_Function_v2float Function
57OpStore %17 %16
58%19 = OpFunctionCall %v4float %main %17
59OpStore %sk_FragColor %19
60OpReturn
61OpFunctionEnd
62%main = OpFunction %v4float None %20
63%21 = OpFunctionParameter %_ptr_Function_v2float
64%22 = OpLabel
65%B = OpVariable %_ptr_Function_v3bool Function
66%F = OpVariable %_ptr_Function_v3float Function
67%I = OpVariable %_ptr_Function_v3int Function
68%27 = OpAccessChain %_ptr_Function_bool %B %int_0
69OpStore %27 %true
70%31 = OpAccessChain %_ptr_Function_bool %B %int_1
71OpStore %31 %true
72%33 = OpAccessChain %_ptr_Function_bool %B %int_2
73OpStore %33 %true
74%39 = OpAccessChain %_ptr_Function_float %F %int_0
75OpStore %39 %float_1_23000002
76%41 = OpAccessChain %_ptr_Function_float %F %int_1
77OpStore %41 %float_0
78%43 = OpAccessChain %_ptr_Function_float %F %int_2
79OpStore %43 %float_1
80%47 = OpAccessChain %_ptr_Function_int %I %int_0
81OpStore %47 %int_1
82%49 = OpAccessChain %_ptr_Function_int %I %int_1
83OpStore %49 %int_1
84%50 = OpAccessChain %_ptr_Function_int %I %int_2
85OpStore %50 %int_1
86%51 = OpLoad %v3float %F
87%52 = OpCompositeExtract %float %51 0
88%53 = OpLoad %v3float %F
89%54 = OpCompositeExtract %float %53 1
90%55 = OpFMul %float %52 %54
91%56 = OpLoad %v3float %F
92%57 = OpCompositeExtract %float %56 2
93%58 = OpFMul %float %55 %57
94%60 = OpLoad %v3bool %B
95%61 = OpCompositeExtract %bool %60 0
96OpSelectionMerge %63 None
97OpBranchConditional %61 %62 %63
98%62 = OpLabel
99%64 = OpLoad %v3bool %B
100%65 = OpCompositeExtract %bool %64 1
101OpBranch %63
102%63 = OpLabel
103%66 = OpPhi %bool %false %22 %65 %62
104OpSelectionMerge %68 None
105OpBranchConditional %66 %67 %68
106%67 = OpLabel
107%69 = OpLoad %v3bool %B
108%70 = OpCompositeExtract %bool %69 2
109OpBranch %68
110%68 = OpLabel
111%71 = OpPhi %bool %false %63 %70 %67
112%72 = OpSelect %float %71 %float_1 %float_0
113%73 = OpLoad %v3int %I
114%74 = OpCompositeExtract %int %73 0
115%75 = OpLoad %v3int %I
116%76 = OpCompositeExtract %int %75 1
117%77 = OpIMul %int %74 %76
118%78 = OpLoad %v3int %I
119%79 = OpCompositeExtract %int %78 2
120%80 = OpIMul %int %77 %79
121%81 = OpConvertSToF %float %80
122%82 = OpCompositeConstruct %v4float %58 %72 %float_0 %81
123OpReturnValue %82
124OpFunctionEnd
125