• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1OpCapability Shader
2%1 = OpExtInstImport "GLSL.std.450"
3OpMemoryModel Logical GLSL450
4OpEntryPoint Fragment %main "main" %sk_FragColor %sk_Clockwise
5OpExecutionMode %main OriginUpperLeft
6OpName %sk_FragColor "sk_FragColor"
7OpName %sk_Clockwise "sk_Clockwise"
8OpName %a "a"
9OpName %b "b"
10OpName %c "c"
11OpName %d "d"
12OpName %main "main"
13OpDecorate %sk_FragColor RelaxedPrecision
14OpDecorate %sk_FragColor Location 0
15OpDecorate %sk_FragColor Index 0
16OpDecorate %sk_Clockwise BuiltIn FrontFacing
17OpDecorate %a RelaxedPrecision
18OpDecorate %b RelaxedPrecision
19OpDecorate %25 RelaxedPrecision
20OpDecorate %26 RelaxedPrecision
21OpDecorate %27 RelaxedPrecision
22OpDecorate %28 RelaxedPrecision
23OpDecorate %29 RelaxedPrecision
24OpDecorate %30 RelaxedPrecision
25OpDecorate %31 RelaxedPrecision
26OpDecorate %32 RelaxedPrecision
27OpDecorate %33 RelaxedPrecision
28OpDecorate %34 RelaxedPrecision
29OpDecorate %35 RelaxedPrecision
30OpDecorate %36 RelaxedPrecision
31OpDecorate %41 RelaxedPrecision
32OpDecorate %42 RelaxedPrecision
33OpDecorate %43 RelaxedPrecision
34%float = OpTypeFloat 32
35%v4float = OpTypeVector %float 4
36%_ptr_Output_v4float = OpTypePointer Output %v4float
37%sk_FragColor = OpVariable %_ptr_Output_v4float Output
38%bool = OpTypeBool
39%_ptr_Input_bool = OpTypePointer Input %bool
40%sk_Clockwise = OpVariable %_ptr_Input_bool Input
41%v3float = OpTypeVector %float 3
42%mat3v3float = OpTypeMatrix %v3float 3
43%_ptr_Private_mat3v3float = OpTypePointer Private %mat3v3float
44%a = OpVariable %_ptr_Private_mat3v3float Private
45%b = OpVariable %_ptr_Private_mat3v3float Private
46%mat4v4float = OpTypeMatrix %v4float 4
47%_ptr_Private_mat4v4float = OpTypePointer Private %mat4v4float
48%c = OpVariable %_ptr_Private_mat4v4float Private
49%d = OpVariable %_ptr_Private_mat4v4float Private
50%void = OpTypeVoid
51%20 = OpTypeFunction %void
52%_ptr_Function_mat3v3float = OpTypePointer Function %mat3v3float
53%int = OpTypeInt 32 1
54%int_0 = OpConstant %int 0
55%_ptr_Function_v3float = OpTypePointer Function %v3float
56%_ptr_Function_mat4v4float = OpTypePointer Function %mat4v4float
57%_ptr_Function_v4float = OpTypePointer Function %v4float
58%main = OpFunction %void None %20
59%21 = OpLabel
60%22 = OpVariable %_ptr_Function_mat3v3float Function
61%44 = OpVariable %_ptr_Function_mat4v4float Function
62%25 = OpLoad %mat3v3float %a
63%26 = OpLoad %mat3v3float %b
64%27 = OpCompositeExtract %v3float %25 0
65%28 = OpCompositeExtract %v3float %26 0
66%29 = OpFMul %v3float %27 %28
67%30 = OpCompositeExtract %v3float %25 1
68%31 = OpCompositeExtract %v3float %26 1
69%32 = OpFMul %v3float %30 %31
70%33 = OpCompositeExtract %v3float %25 2
71%34 = OpCompositeExtract %v3float %26 2
72%35 = OpFMul %v3float %33 %34
73%36 = OpCompositeConstruct %mat3v3float %29 %32 %35
74OpStore %22 %36
75%39 = OpAccessChain %_ptr_Function_v3float %22 %int_0
76%41 = OpLoad %v3float %39
77%42 = OpLoad %v4float %sk_FragColor
78%43 = OpVectorShuffle %v4float %42 %41 4 5 6 3
79OpStore %sk_FragColor %43
80%47 = OpLoad %mat4v4float %c
81%48 = OpLoad %mat4v4float %d
82%49 = OpCompositeExtract %v4float %47 0
83%50 = OpCompositeExtract %v4float %48 0
84%51 = OpFMul %v4float %49 %50
85%52 = OpCompositeExtract %v4float %47 1
86%53 = OpCompositeExtract %v4float %48 1
87%54 = OpFMul %v4float %52 %53
88%55 = OpCompositeExtract %v4float %47 2
89%56 = OpCompositeExtract %v4float %48 2
90%57 = OpFMul %v4float %55 %56
91%58 = OpCompositeExtract %v4float %47 3
92%59 = OpCompositeExtract %v4float %48 3
93%60 = OpFMul %v4float %58 %59
94%61 = OpCompositeConstruct %mat4v4float %51 %54 %57 %60
95OpStore %44 %61
96%62 = OpAccessChain %_ptr_Function_v4float %44 %int_0
97%64 = OpLoad %v4float %62
98OpStore %sk_FragColor %64
99OpReturn
100OpFunctionEnd
101