1OpCapability Geometry 2%1 = OpExtInstImport "GLSL.std.450" 3OpMemoryModel Logical GLSL450 4OpEntryPoint Geometry %main "main" %3 %8 %sk_InvocationID 5OpExecutionMode %main InputPoints 6OpExecutionMode %main OutputLineStrip 7OpExecutionMode %main OutputVertices 2 8OpExecutionMode %main Invocations 2 9OpName %sk_PerVertex "sk_PerVertex" 10OpMemberName %sk_PerVertex 0 "sk_Position" 11OpMemberName %sk_PerVertex 1 "sk_PointSize" 12OpName %sk_InvocationID "sk_InvocationID" 13OpName %_UniformBuffer "_UniformBuffer" 14OpMemberName %_UniformBuffer 0 "sk_RTAdjust" 15OpName %main "main" 16OpMemberDecorate %sk_PerVertex 0 BuiltIn Position 17OpMemberDecorate %sk_PerVertex 1 BuiltIn PointSize 18OpDecorate %_arr_sk_PerVertex_int_1 ArrayStride 32 19OpDecorate %sk_InvocationID BuiltIn InvocationId 20OpMemberDecorate %_UniformBuffer 0 Offset 0 21OpDecorate %_UniformBuffer Block 22OpDecorate %15 Binding 0 23OpDecorate %15 DescriptorSet 0 24%float = OpTypeFloat 32 25%v4float = OpTypeVector %float 4 26%sk_PerVertex = OpTypeStruct %v4float %float 27%_ptr_Output_sk_PerVertex = OpTypePointer Output %sk_PerVertex 28%3 = OpVariable %_ptr_Output_sk_PerVertex Output 29%int = OpTypeInt 32 1 30%int_1 = OpConstant %int 1 31%_arr_sk_PerVertex_int_1 = OpTypeArray %sk_PerVertex %int_1 32%_ptr_Input__arr_sk_PerVertex_int_1 = OpTypePointer Input %_arr_sk_PerVertex_int_1 33%8 = OpVariable %_ptr_Input__arr_sk_PerVertex_int_1 Input 34%_ptr_Input_int = OpTypePointer Input %int 35%sk_InvocationID = OpVariable %_ptr_Input_int Input 36%_UniformBuffer = OpTypeStruct %v4float 37%_ptr_Uniform__UniformBuffer = OpTypePointer Uniform %_UniformBuffer 38%15 = OpVariable %_ptr_Uniform__UniformBuffer Uniform 39%void = OpTypeVoid 40%19 = OpTypeFunction %void 41%int_0 = OpConstant %int 0 42%_ptr_Input_v4float = OpTypePointer Input %v4float 43%float_n0_5 = OpConstant %float -0.5 44%float_0 = OpConstant %float 0 45%_ptr_Output_v4float = OpTypePointer Output %v4float 46%v2float = OpTypeVector %float 2 47%_ptr_Uniform_v4float = OpTypePointer Uniform %v4float 48%float_0_5 = OpConstant %float 0.5 49%main = OpFunction %void None %19 50%20 = OpLabel 51%22 = OpAccessChain %_ptr_Input_v4float %8 %int_0 %int_0 52%24 = OpLoad %v4float %22 53%27 = OpLoad %int %sk_InvocationID 54%28 = OpConvertSToF %float %27 55%29 = OpCompositeConstruct %v4float %float_n0_5 %float_0 %float_0 %28 56%30 = OpFAdd %v4float %24 %29 57%31 = OpAccessChain %_ptr_Output_v4float %3 %int_0 58OpStore %31 %30 59%33 = OpAccessChain %_ptr_Output_v4float %3 %int_0 60%34 = OpLoad %v4float %33 61%35 = OpVectorShuffle %v2float %34 %34 0 1 62%37 = OpAccessChain %_ptr_Uniform_v4float %15 %int_0 63%39 = OpLoad %v4float %37 64%40 = OpVectorShuffle %v2float %39 %39 0 2 65%41 = OpFMul %v2float %35 %40 66%42 = OpAccessChain %_ptr_Output_v4float %3 %int_0 67%43 = OpLoad %v4float %42 68%44 = OpVectorShuffle %v2float %43 %43 3 3 69%45 = OpAccessChain %_ptr_Uniform_v4float %15 %int_0 70%46 = OpLoad %v4float %45 71%47 = OpVectorShuffle %v2float %46 %46 1 3 72%48 = OpFMul %v2float %44 %47 73%49 = OpFAdd %v2float %41 %48 74%50 = OpCompositeExtract %float %49 0 75%51 = OpCompositeExtract %float %49 1 76%52 = OpAccessChain %_ptr_Output_v4float %3 %int_0 77%53 = OpLoad %v4float %52 78%54 = OpCompositeExtract %float %53 3 79%55 = OpCompositeConstruct %v4float %50 %51 %float_0 %54 80%56 = OpAccessChain %_ptr_Output_v4float %3 %int_0 81OpStore %56 %55 82OpEmitVertex 83%58 = OpAccessChain %_ptr_Input_v4float %8 %int_0 %int_0 84%59 = OpLoad %v4float %58 85%61 = OpLoad %int %sk_InvocationID 86%62 = OpConvertSToF %float %61 87%63 = OpCompositeConstruct %v4float %float_0_5 %float_0 %float_0 %62 88%64 = OpFAdd %v4float %59 %63 89%65 = OpAccessChain %_ptr_Output_v4float %3 %int_0 90OpStore %65 %64 91%66 = OpAccessChain %_ptr_Output_v4float %3 %int_0 92%67 = OpLoad %v4float %66 93%68 = OpVectorShuffle %v2float %67 %67 0 1 94%69 = OpAccessChain %_ptr_Uniform_v4float %15 %int_0 95%70 = OpLoad %v4float %69 96%71 = OpVectorShuffle %v2float %70 %70 0 2 97%72 = OpFMul %v2float %68 %71 98%73 = OpAccessChain %_ptr_Output_v4float %3 %int_0 99%74 = OpLoad %v4float %73 100%75 = OpVectorShuffle %v2float %74 %74 3 3 101%76 = OpAccessChain %_ptr_Uniform_v4float %15 %int_0 102%77 = OpLoad %v4float %76 103%78 = OpVectorShuffle %v2float %77 %77 1 3 104%79 = OpFMul %v2float %75 %78 105%80 = OpFAdd %v2float %72 %79 106%81 = OpCompositeExtract %float %80 0 107%82 = OpCompositeExtract %float %80 1 108%83 = OpAccessChain %_ptr_Output_v4float %3 %int_0 109%84 = OpLoad %v4float %83 110%85 = OpCompositeExtract %float %84 3 111%86 = OpCompositeConstruct %v4float %81 %82 %float_0 %85 112%87 = OpAccessChain %_ptr_Output_v4float %3 %int_0 113OpStore %87 %86 114OpEmitVertex 115OpEndPrimitive 116OpReturn 117OpFunctionEnd 118