1cb93a386Sopenharmony_ciOpCapability Shader
2cb93a386Sopenharmony_ci%1 = OpExtInstImport "GLSL.std.450"
3cb93a386Sopenharmony_ciOpMemoryModel Logical GLSL450
4cb93a386Sopenharmony_ciOpEntryPoint Vertex %main "main" %3
5cb93a386Sopenharmony_ciOpName %sk_PerVertex "sk_PerVertex"
6cb93a386Sopenharmony_ciOpMemberName %sk_PerVertex 0 "sk_Position"
7cb93a386Sopenharmony_ciOpMemberName %sk_PerVertex 1 "sk_PointSize"
8cb93a386Sopenharmony_ciOpName %_UniformBuffer "_UniformBuffer"
9cb93a386Sopenharmony_ciOpMemberName %_UniformBuffer 0 "sk_RTAdjust"
10cb93a386Sopenharmony_ciOpName %main "main"
11cb93a386Sopenharmony_ciOpMemberDecorate %sk_PerVertex 0 BuiltIn Position
12cb93a386Sopenharmony_ciOpMemberDecorate %sk_PerVertex 1 BuiltIn PointSize
13cb93a386Sopenharmony_ciOpDecorate %sk_PerVertex Block
14cb93a386Sopenharmony_ciOpMemberDecorate %_UniformBuffer 0 DescriptorSet 0
15cb93a386Sopenharmony_ciOpMemberDecorate %_UniformBuffer 0 Offset 0
16cb93a386Sopenharmony_ciOpDecorate %_UniformBuffer Block
17cb93a386Sopenharmony_ciOpDecorate %8 Binding 0
18cb93a386Sopenharmony_ciOpDecorate %8 DescriptorSet 0
19cb93a386Sopenharmony_ci%float = OpTypeFloat 32
20cb93a386Sopenharmony_ci%v4float = OpTypeVector %float 4
21cb93a386Sopenharmony_ci%sk_PerVertex = OpTypeStruct %v4float %float
22cb93a386Sopenharmony_ci%_ptr_Output_sk_PerVertex = OpTypePointer Output %sk_PerVertex
23cb93a386Sopenharmony_ci%3 = OpVariable %_ptr_Output_sk_PerVertex Output
24cb93a386Sopenharmony_ci%_UniformBuffer = OpTypeStruct %v4float
25cb93a386Sopenharmony_ci%_ptr_Uniform__UniformBuffer = OpTypePointer Uniform %_UniformBuffer
26cb93a386Sopenharmony_ci%8 = OpVariable %_ptr_Uniform__UniformBuffer Uniform
27cb93a386Sopenharmony_ci%void = OpTypeVoid
28cb93a386Sopenharmony_ci%12 = OpTypeFunction %void
29cb93a386Sopenharmony_ci%float_1 = OpConstant %float 1
30cb93a386Sopenharmony_ci%15 = OpConstantComposite %v4float %float_1 %float_1 %float_1 %float_1
31cb93a386Sopenharmony_ci%int = OpTypeInt 32 1
32cb93a386Sopenharmony_ci%int_0 = OpConstant %int 0
33cb93a386Sopenharmony_ci%_ptr_Output_v4float = OpTypePointer Output %v4float
34cb93a386Sopenharmony_ci%v2float = OpTypeVector %float 2
35cb93a386Sopenharmony_ci%_ptr_Uniform_v4float = OpTypePointer Uniform %v4float
36cb93a386Sopenharmony_ci%float_0 = OpConstant %float 0
37cb93a386Sopenharmony_ci%main = OpFunction %void None %12
38cb93a386Sopenharmony_ci%13 = OpLabel
39cb93a386Sopenharmony_ci%18 = OpAccessChain %_ptr_Output_v4float %3 %int_0
40cb93a386Sopenharmony_ciOpStore %18 %15
41cb93a386Sopenharmony_ci%20 = OpAccessChain %_ptr_Output_v4float %3 %int_0
42cb93a386Sopenharmony_ci%21 = OpLoad %v4float %20
43cb93a386Sopenharmony_ci%22 = OpVectorShuffle %v2float %21 %21 0 1
44cb93a386Sopenharmony_ci%24 = OpAccessChain %_ptr_Uniform_v4float %8 %int_0
45cb93a386Sopenharmony_ci%26 = OpLoad %v4float %24
46cb93a386Sopenharmony_ci%27 = OpVectorShuffle %v2float %26 %26 0 2
47cb93a386Sopenharmony_ci%28 = OpFMul %v2float %22 %27
48cb93a386Sopenharmony_ci%29 = OpAccessChain %_ptr_Output_v4float %3 %int_0
49cb93a386Sopenharmony_ci%30 = OpLoad %v4float %29
50cb93a386Sopenharmony_ci%31 = OpVectorShuffle %v2float %30 %30 3 3
51cb93a386Sopenharmony_ci%32 = OpAccessChain %_ptr_Uniform_v4float %8 %int_0
52cb93a386Sopenharmony_ci%33 = OpLoad %v4float %32
53cb93a386Sopenharmony_ci%34 = OpVectorShuffle %v2float %33 %33 1 3
54cb93a386Sopenharmony_ci%35 = OpFMul %v2float %31 %34
55cb93a386Sopenharmony_ci%36 = OpFAdd %v2float %28 %35
56cb93a386Sopenharmony_ci%37 = OpCompositeExtract %float %36 0
57cb93a386Sopenharmony_ci%38 = OpCompositeExtract %float %36 1
58cb93a386Sopenharmony_ci%40 = OpAccessChain %_ptr_Output_v4float %3 %int_0
59cb93a386Sopenharmony_ci%41 = OpLoad %v4float %40
60cb93a386Sopenharmony_ci%42 = OpCompositeExtract %float %41 3
61cb93a386Sopenharmony_ci%43 = OpCompositeConstruct %v4float %37 %38 %float_0 %42
62cb93a386Sopenharmony_ci%44 = OpAccessChain %_ptr_Output_v4float %3 %int_0
63cb93a386Sopenharmony_ciOpStore %44 %43
64cb93a386Sopenharmony_ciOpReturn
65cb93a386Sopenharmony_ciOpFunctionEnd
66