; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 34
; Schema: 0
               OpCapability Shader
         %15 = OpExtInstImport "GLSL.std.450"
               OpMemoryModel Logical GLSL450
               OpEntryPoint Vertex %vertex_main "vertex_main" %tint_pointsize %tint_symbol_1
               OpEntryPoint Fragment %fragment_main "fragment_main"
               OpEntryPoint GLCompute %compute_main "compute_main"
               OpExecutionMode %fragment_main OriginUpperLeft
               OpExecutionMode %compute_main LocalSize 1 1 1
               OpName %tint_pointsize "tint_pointsize"
               OpName %tint_symbol_1 "tint_symbol_1"
               OpName %modf_9b44a9 "modf_9b44a9"
               OpName %_modf_result_vec4 "_modf_result_vec4"
               OpMemberName %_modf_result_vec4 0 "fract"
               OpMemberName %_modf_result_vec4 1 "whole"
               OpName %res "res"
               OpName %tint_symbol_2 "tint_symbol_2"
               OpName %tint_symbol "tint_symbol"
               OpName %vertex_main "vertex_main"
               OpName %fragment_main "fragment_main"
               OpName %compute_main "compute_main"
               OpDecorate %tint_pointsize BuiltIn PointSize
               OpDecorate %tint_symbol_1 BuiltIn Position
               OpMemberDecorate %_modf_result_vec4 0 Offset 0
               OpMemberDecorate %_modf_result_vec4 1 Offset 16
      %float = OpTypeFloat 32
%_ptr_Output_float = OpTypePointer Output %float
          %4 = OpConstantNull %float
%tint_pointsize = OpVariable %_ptr_Output_float Output %4
    %v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
          %8 = OpConstantNull %v4float
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %8
       %void = OpTypeVoid
          %9 = OpTypeFunction %void
%_modf_result_vec4 = OpTypeStruct %v4float %v4float
%_ptr_Function__modf_result_vec4 = OpTypePointer Function %_modf_result_vec4
         %18 = OpConstantNull %_modf_result_vec4
         %19 = OpTypeFunction %void %v4float
    %float_1 = OpConstant %float 1
%modf_9b44a9 = OpFunction %void None %9
         %12 = OpLabel
        %res = OpVariable %_ptr_Function__modf_result_vec4 Function %18
         %13 = OpExtInst %_modf_result_vec4 %15 ModfStruct %8
               OpStore %res %13
               OpReturn
               OpFunctionEnd
%tint_symbol_2 = OpFunction %void None %19
%tint_symbol = OpFunctionParameter %v4float
         %22 = OpLabel
               OpStore %tint_symbol_1 %tint_symbol
               OpReturn
               OpFunctionEnd
%vertex_main = OpFunction %void None %9
         %24 = OpLabel
               OpStore %tint_pointsize %float_1
         %26 = OpFunctionCall %void %modf_9b44a9
         %27 = OpFunctionCall %void %tint_symbol_2 %8
               OpReturn
               OpFunctionEnd
%fragment_main = OpFunction %void None %9
         %29 = OpLabel
         %30 = OpFunctionCall %void %modf_9b44a9
               OpReturn
               OpFunctionEnd
%compute_main = OpFunction %void None %9
         %32 = OpLabel
         %33 = OpFunctionCall %void %modf_9b44a9
               OpReturn
               OpFunctionEnd
