; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 46
; Schema: 0
               OpCapability Shader
         %16 = OpExtInstImport "GLSL.std.450"
               OpMemoryModel Logical GLSL450
               OpEntryPoint Fragment %main "main" %x_GLF_color_1_1
               OpExecutionMode %main OriginUpperLeft
               OpName %x_GLF_color_1_1 "x_GLF_color_1_1"
               OpName %x_GLF_color "x_GLF_color"
               OpName %main_1 "main_1"
               OpName %f "f"
               OpName %main_out "main_out"
               OpMemberName %main_out 0 "x_GLF_color_1"
               OpName %main_inner "main_inner"
               OpName %main "main"
               OpDecorate %x_GLF_color_1_1 Location 0
               OpMemberDecorate %main_out 0 Offset 0
      %float = OpTypeFloat 32
    %v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
          %5 = OpConstantNull %v4float
%x_GLF_color_1_1 = OpVariable %_ptr_Output_v4float Output %5
%_ptr_Private_v4float = OpTypePointer Private %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %5
       %void = OpTypeVoid
          %8 = OpTypeFunction %void
%_ptr_Function_float = OpTypePointer Function %float
         %14 = OpConstantNull %float
    %float_1 = OpConstant %float 1
%float_0_910000026 = OpConstant %float 0.910000026
       %bool = OpTypeBool
%float_0_930000007 = OpConstant %float 0.930000007
    %float_0 = OpConstant %float 0
         %33 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
         %34 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
   %main_out = OpTypeStruct %v4float
         %35 = OpTypeFunction %main_out
     %main_1 = OpFunction %void None %8
         %11 = OpLabel
          %f = OpVariable %_ptr_Function_float Function %14
         %18 = OpExtInst %float %16 Tanh %float_1
         %15 = OpExtInst %float %16 Atan2 %float_1 %18
               OpStore %f %15
         %19 = OpLoad %float %f
         %20 = OpLoad %float %f
         %22 = OpFOrdGreaterThan %bool %19 %float_0_910000026
               OpSelectionMerge %24 None
               OpBranchConditional %22 %25 %24
         %25 = OpLabel
         %27 = OpFOrdLessThan %bool %20 %float_0_930000007
               OpBranch %24
         %24 = OpLabel
         %28 = OpPhi %bool %22 %11 %27 %25
               OpSelectionMerge %29 None
               OpBranchConditional %28 %30 %31
         %30 = OpLabel
               OpStore %x_GLF_color %33
               OpBranch %29
         %31 = OpLabel
               OpStore %x_GLF_color %34
               OpBranch %29
         %29 = OpLabel
               OpReturn
               OpFunctionEnd
 %main_inner = OpFunction %main_out None %35
         %38 = OpLabel
         %39 = OpFunctionCall %void %main_1
         %40 = OpLoad %v4float %x_GLF_color
         %41 = OpCompositeConstruct %main_out %40
               OpReturnValue %41
               OpFunctionEnd
       %main = OpFunction %void None %8
         %43 = OpLabel
         %44 = OpFunctionCall %main_out %main_inner
         %45 = OpCompositeExtract %v4float %44 0
               OpStore %x_GLF_color_1_1 %45
               OpReturn
               OpFunctionEnd
