; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 34
; Schema: 0
               OpCapability Shader
               OpMemoryModel Logical GLSL450
               OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
               OpEntryPoint Fragment %fragment_main "fragment_main"
               OpEntryPoint GLCompute %compute_main "compute_main"
               OpExecutionMode %fragment_main OriginUpperLeft
               OpExecutionMode %compute_main LocalSize 1 1 1
               OpName %value "value"
               OpName %vertex_point_size "vertex_point_size"
               OpName %modf_bbf7f7 "modf_bbf7f7"
               OpName %__modf_result "__modf_result"
               OpMemberName %__modf_result 0 "fract"
               OpMemberName %__modf_result 1 "whole"
               OpName %res "res"
               OpName %vertex_main_inner "vertex_main_inner"
               OpName %vertex_main "vertex_main"
               OpName %fragment_main "fragment_main"
               OpName %compute_main "compute_main"
               OpDecorate %value BuiltIn Position
               OpDecorate %vertex_point_size BuiltIn PointSize
               OpMemberDecorate %__modf_result 0 Offset 0
               OpMemberDecorate %__modf_result 1 Offset 4
      %float = OpTypeFloat 32
    %v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
          %5 = OpConstantNull %v4float
      %value = OpVariable %_ptr_Output_v4float Output %5
%_ptr_Output_float = OpTypePointer Output %float
          %8 = OpConstantNull %float
%vertex_point_size = OpVariable %_ptr_Output_float Output %8
       %void = OpTypeVoid
          %9 = OpTypeFunction %void
%__modf_result = OpTypeStruct %float %float
 %float_n0_5 = OpConstant %float -0.5
   %float_n1 = OpConstant %float -1
         %16 = OpConstantComposite %__modf_result %float_n0_5 %float_n1
%_ptr_Function___modf_result = OpTypePointer Function %__modf_result
         %19 = OpConstantNull %__modf_result
         %20 = OpTypeFunction %v4float
    %float_1 = OpConstant %float 1
%modf_bbf7f7 = OpFunction %void None %9
         %12 = OpLabel
        %res = OpVariable %_ptr_Function___modf_result Function %19
               OpStore %res %16
               OpReturn
               OpFunctionEnd
%vertex_main_inner = OpFunction %v4float None %20
         %22 = OpLabel
         %23 = OpFunctionCall %void %modf_bbf7f7
               OpReturnValue %5
               OpFunctionEnd
%vertex_main = OpFunction %void None %9
         %25 = OpLabel
         %26 = OpFunctionCall %v4float %vertex_main_inner
               OpStore %value %26
               OpStore %vertex_point_size %float_1
               OpReturn
               OpFunctionEnd
%fragment_main = OpFunction %void None %9
         %29 = OpLabel
         %30 = OpFunctionCall %void %modf_bbf7f7
               OpReturn
               OpFunctionEnd
%compute_main = OpFunction %void None %9
         %32 = OpLabel
         %33 = OpFunctionCall %void %modf_bbf7f7
               OpReturn
               OpFunctionEnd
