; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 1
; Bound: 53
; Schema: 0
               OpCapability Shader
               OpCapability Float16
               OpCapability UniformAndStorageBuffer16BitAccess
               OpCapability StorageBuffer16BitAccess
               OpCapability StorageInputOutput16
               OpMemoryModel Logical GLSL450
               OpEntryPoint Fragment %fragment_main "fragment_main"
               OpEntryPoint GLCompute %compute_main "compute_main"
               OpEntryPoint Vertex %vertex_main "vertex_main" %vertex_main_position_Output %vertex_main_loc0_Output %vertex_main___point_size_Output
               OpExecutionMode %fragment_main OriginUpperLeft
               OpExecutionMode %compute_main LocalSize 1 1 1
               OpMemberName %prevent_dce_block 0 "inner"
               OpName %prevent_dce_block "prevent_dce_block"
               OpName %vertex_main_position_Output "vertex_main_position_Output"
               OpName %vertex_main_loc0_Output "vertex_main_loc0_Output"
               OpName %vertex_main___point_size_Output "vertex_main___point_size_Output"
               OpName %max_111ac0 "max_111ac0"
               OpName %res "res"
               OpName %fragment_main "fragment_main"
               OpName %compute_main "compute_main"
               OpName %vertex_main_inner "vertex_main_inner"
               OpMemberName %VertexOutput 0 "pos"
               OpMemberName %VertexOutput 1 "prevent_dce"
               OpName %VertexOutput "VertexOutput"
               OpName %out "out"
               OpName %vertex_main "vertex_main"
               OpMemberDecorate %prevent_dce_block 0 Offset 0
               OpDecorate %prevent_dce_block Block
               OpDecorate %1 DescriptorSet 0
               OpDecorate %1 Binding 0
               OpDecorate %1 Coherent
               OpDecorate %vertex_main_position_Output BuiltIn Position
               OpDecorate %vertex_main_loc0_Output Location 0
               OpDecorate %vertex_main_loc0_Output Flat
               OpDecorate %vertex_main___point_size_Output BuiltIn PointSize
               OpMemberDecorate %VertexOutput 0 Offset 0
               OpMemberDecorate %VertexOutput 1 Offset 16
       %half = OpTypeFloat 16
%prevent_dce_block = OpTypeStruct %half
%_ptr_StorageBuffer_prevent_dce_block = OpTypePointer StorageBuffer %prevent_dce_block
          %1 = OpVariable %_ptr_StorageBuffer_prevent_dce_block StorageBuffer
      %float = OpTypeFloat 32
    %v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
%vertex_main_position_Output = OpVariable %_ptr_Output_v4float Output
%_ptr_Output_half = OpTypePointer Output %half
%vertex_main_loc0_Output = OpVariable %_ptr_Output_half Output
%_ptr_Output_float = OpTypePointer Output %float
%vertex_main___point_size_Output = OpVariable %_ptr_Output_float Output
         %14 = OpTypeFunction %half
%_ptr_Function_half = OpTypePointer Function %half
%half_0x1p_0 = OpConstant %half 0x1p+0
       %void = OpTypeVoid
         %22 = OpTypeFunction %void
%_ptr_StorageBuffer_half = OpTypePointer StorageBuffer %half
       %uint = OpTypeInt 32 0
     %uint_0 = OpConstant %uint 0
%VertexOutput = OpTypeStruct %v4float %half
         %35 = OpTypeFunction %VertexOutput
%_ptr_Function_VertexOutput = OpTypePointer Function %VertexOutput
         %39 = OpConstantNull %VertexOutput
%_ptr_Function_v4float = OpTypePointer Function %v4float
         %42 = OpConstantNull %v4float
     %uint_1 = OpConstant %uint 1
    %float_1 = OpConstant %float 1
 %max_111ac0 = OpFunction %half None %14
         %15 = OpLabel
        %res = OpVariable %_ptr_Function_half Function
               OpStore %res %half_0x1p_0
         %19 = OpLoad %half %res None
               OpReturnValue %19
               OpFunctionEnd
%fragment_main = OpFunction %void None %22
         %23 = OpLabel
         %24 = OpFunctionCall %half %max_111ac0
         %25 = OpAccessChain %_ptr_StorageBuffer_half %1 %uint_0
               OpStore %25 %24 None
               OpReturn
               OpFunctionEnd
%compute_main = OpFunction %void None %22
         %30 = OpLabel
         %31 = OpFunctionCall %half %max_111ac0
         %32 = OpAccessChain %_ptr_StorageBuffer_half %1 %uint_0
               OpStore %32 %31 None
               OpReturn
               OpFunctionEnd
%vertex_main_inner = OpFunction %VertexOutput None %35
         %36 = OpLabel
        %out = OpVariable %_ptr_Function_VertexOutput Function %39
         %40 = OpAccessChain %_ptr_Function_v4float %out %uint_0
               OpStore %40 %42 None
         %43 = OpAccessChain %_ptr_Function_half %out %uint_1
         %45 = OpFunctionCall %half %max_111ac0
               OpStore %43 %45 None
         %46 = OpLoad %VertexOutput %out None
               OpReturnValue %46
               OpFunctionEnd
%vertex_main = OpFunction %void None %22
         %48 = OpLabel
         %49 = OpFunctionCall %VertexOutput %vertex_main_inner
         %50 = OpCompositeExtract %v4float %49 0
               OpStore %vertex_main_position_Output %50 None
         %51 = OpCompositeExtract %half %49 1
               OpStore %vertex_main_loc0_Output %51 None
               OpStore %vertex_main___point_size_Output %float_1 None
               OpReturn
               OpFunctionEnd
