1 OpCapability Shader 2 %1 = OpExtInstImport "GLSL.std.450" 3 OpMemoryModel Logical GLSL450 4 OpEntryPoint Fragment %main "main" %sk_FragColor %sk_FragCoord 5 OpExecutionMode %main OriginUpperLeft 6 OpName %sk_FragColor "sk_FragColor" 7 OpName %sk_FragCoord "sk_FragCoord" 8 OpName %main "main" 9 OpName %sksl_synthetic_uniforms "sksl_synthetic_uniforms" 10 OpMemberName %sksl_synthetic_uniforms 0 "u_skRTFlip" 11 OpDecorate %sk_FragColor RelaxedPrecision 12 OpDecorate %sk_FragColor Location 0 13 OpDecorate %sk_FragColor Index 0 14 OpDecorate %sk_FragCoord BuiltIn FragCoord 15 OpDecorate %16 RelaxedPrecision 16 OpDecorate %18 RelaxedPrecision 17 OpMemberDecorate %sksl_synthetic_uniforms 0 Offset 16384 18 OpDecorate %sksl_synthetic_uniforms Block 19 OpDecorate %19 Binding 0 20 OpDecorate %19 DescriptorSet 0 21 %float = OpTypeFloat 32 22 %v4float = OpTypeVector %float 4 23%_ptr_Output_v4float = OpTypePointer Output %v4float 24%sk_FragColor = OpVariable %_ptr_Output_v4float Output 25%_ptr_Input_v4float = OpTypePointer Input %v4float 26%sk_FragCoord = OpVariable %_ptr_Input_v4float Input 27 %void = OpTypeVoid 28 %10 = OpTypeFunction %void 29%_ptr_Output_float = OpTypePointer Output %float 30 %int = OpTypeInt 32 1 31 %int_0 = OpConstant %int 0 32 %float_1 = OpConstant %float 1 33 %v2float = OpTypeVector %float 2 34%sksl_synthetic_uniforms = OpTypeStruct %v2float 35%_ptr_Uniform_sksl_synthetic_uniforms = OpTypePointer Uniform %sksl_synthetic_uniforms 36 %19 = OpVariable %_ptr_Uniform_sksl_synthetic_uniforms Uniform 37%_ptr_Uniform_v2float = OpTypePointer Uniform %v2float 38 %main = OpFunction %void None %10 39 %11 = OpLabel 40 %12 = OpAccessChain %_ptr_Output_float %sk_FragColor %int_0 41 %16 = OpLoad %float %12 42 %18 = OpFSub %float %16 %float_1 43 OpStore %12 %18 44 %23 = OpAccessChain %_ptr_Uniform_v2float %19 %int_0 45 %25 = OpLoad %v2float %23 46 %26 = OpCompositeExtract %float %25 0 47 %27 = OpAccessChain %_ptr_Uniform_v2float %19 %int_0 48 %28 = OpLoad %v2float %27 49 %29 = OpCompositeExtract %float %28 1 50 %30 = OpLoad %v4float %sk_FragCoord 51 %31 = OpCompositeExtract %float %30 0 52 %32 = OpLoad %v4float %sk_FragCoord 53 %33 = OpCompositeExtract %float %32 1 54 %34 = OpLoad %v4float %sk_FragCoord 55 %35 = OpVectorShuffle %v2float %34 %34 2 3 56 %36 = OpFMul %float %29 %33 57 %37 = OpFAdd %float %26 %36 58 %38 = OpCompositeConstruct %v4float %31 %37 %35 59 %39 = OpCompositeConstruct %v4float %16 %16 %16 %16 60 %40 = OpFAdd %v4float %39 %38 61 OpReturn 62 OpFunctionEnd 63