;
; fragment_main
;
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 1
; Bound: 12
; Schema: 0
               OpCapability Shader
               OpMemoryModel Logical GLSL450
               OpEntryPoint Fragment %fragment_main "fragment_main"
               OpExecutionMode %fragment_main OriginUpperLeft
               OpName %max_caa3d7 "max_caa3d7"
               OpName %res "res"
               OpName %fragment_main "fragment_main"
       %void = OpTypeVoid
          %3 = OpTypeFunction %void
        %int = OpTypeInt 32 1
%_ptr_Function_int = OpTypePointer Function %int
      %int_1 = OpConstant %int 1
 %max_caa3d7 = OpFunction %void None %3
          %4 = OpLabel
        %res = OpVariable %_ptr_Function_int Function
               OpStore %res %int_1
               OpReturn
               OpFunctionEnd
%fragment_main = OpFunction %void None %3
         %10 = OpLabel
         %11 = OpFunctionCall %void %max_caa3d7
               OpReturn
               OpFunctionEnd
;
; compute_main
;
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 1
; Bound: 12
; Schema: 0
               OpCapability Shader
               OpMemoryModel Logical GLSL450
               OpEntryPoint GLCompute %compute_main "compute_main"
               OpExecutionMode %compute_main LocalSize 1 1 1
               OpName %max_caa3d7 "max_caa3d7"
               OpName %res "res"
               OpName %compute_main "compute_main"
       %void = OpTypeVoid
          %3 = OpTypeFunction %void
        %int = OpTypeInt 32 1
%_ptr_Function_int = OpTypePointer Function %int
      %int_1 = OpConstant %int 1
 %max_caa3d7 = OpFunction %void None %3
          %4 = OpLabel
        %res = OpVariable %_ptr_Function_int Function
               OpStore %res %int_1
               OpReturn
               OpFunctionEnd
%compute_main = OpFunction %void None %3
         %10 = OpLabel
         %11 = OpFunctionCall %void %max_caa3d7
               OpReturn
               OpFunctionEnd
;
; vertex_main
;
; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 1
; Bound: 34
; Schema: 0
               OpCapability Shader
               OpMemoryModel Logical GLSL450
               OpEntryPoint Vertex %vertex_main "vertex_main" %vertex_main_position_Output %vertex_main___point_size_Output
               OpName %vertex_main_position_Output "vertex_main_position_Output"
               OpName %vertex_main___point_size_Output "vertex_main___point_size_Output"
               OpName %max_caa3d7 "max_caa3d7"
               OpName %res "res"
               OpName %vertex_main_inner "vertex_main_inner"
               OpMemberName %VertexOutput 0 "pos"
               OpName %VertexOutput "VertexOutput"
               OpName %out "out"
               OpName %vertex_main "vertex_main"
               OpDecorate %vertex_main_position_Output BuiltIn Position
               OpDecorate %vertex_main___point_size_Output BuiltIn PointSize
               OpMemberDecorate %VertexOutput 0 Offset 0
      %float = OpTypeFloat 32
    %v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
%vertex_main_position_Output = OpVariable %_ptr_Output_v4float Output
%_ptr_Output_float = OpTypePointer Output %float
%vertex_main___point_size_Output = OpVariable %_ptr_Output_float Output
       %void = OpTypeVoid
          %9 = OpTypeFunction %void
        %int = OpTypeInt 32 1
%_ptr_Function_int = OpTypePointer Function %int
      %int_1 = OpConstant %int 1
%VertexOutput = OpTypeStruct %v4float
         %17 = OpTypeFunction %VertexOutput
%_ptr_Function_VertexOutput = OpTypePointer Function %VertexOutput
         %21 = OpConstantNull %VertexOutput
%_ptr_Function_v4float = OpTypePointer Function %v4float
       %uint = OpTypeInt 32 0
     %uint_0 = OpConstant %uint 0
         %26 = OpConstantNull %v4float
    %float_1 = OpConstant %float 1
 %max_caa3d7 = OpFunction %void None %9
         %10 = OpLabel
        %res = OpVariable %_ptr_Function_int Function
               OpStore %res %int_1
               OpReturn
               OpFunctionEnd
%vertex_main_inner = OpFunction %VertexOutput None %17
         %18 = OpLabel
        %out = OpVariable %_ptr_Function_VertexOutput Function %21
         %22 = OpAccessChain %_ptr_Function_v4float %out %uint_0
               OpStore %22 %26 None
         %27 = OpFunctionCall %void %max_caa3d7
         %28 = OpLoad %VertexOutput %out None
               OpReturnValue %28
               OpFunctionEnd
%vertex_main = OpFunction %void None %9
         %30 = OpLabel
         %31 = OpFunctionCall %VertexOutput %vertex_main_inner
         %32 = OpCompositeExtract %v4float %31 0
               OpStore %vertex_main_position_Output %32 None
               OpStore %vertex_main___point_size_Output %float_1 None
               OpReturn
               OpFunctionEnd
