; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 1
; Bound: 65
; Schema: 0
               OpCapability Shader
               OpCapability Float16
               OpCapability UniformAndStorageBuffer16BitAccess
               OpCapability StorageBuffer16BitAccess
               OpCapability StorageInputOutput16
         %29 = OpExtInstImport "GLSL.std.450"
               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 %mix_f1a543 "mix_f1a543"
               OpName %arg_0 "arg_0"
               OpName %arg_1 "arg_1"
               OpName %arg_2 "arg_2"
               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
     %v4half = OpTypeVector %half 4
%prevent_dce_block = OpTypeStruct %v4half
%_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_v4half = OpTypePointer Output %v4half
%vertex_main_loc0_Output = OpVariable %_ptr_Output_v4half Output
%_ptr_Output_float = OpTypePointer Output %float
%vertex_main___point_size_Output = OpVariable %_ptr_Output_float Output
         %15 = OpTypeFunction %v4half
%_ptr_Function_v4half = OpTypePointer Function %v4half
%half_0x1p_0 = OpConstant %half 0x1p+0
         %19 = OpConstantComposite %v4half %half_0x1p_0 %half_0x1p_0 %half_0x1p_0 %half_0x1p_0
%_ptr_Function_half = OpTypePointer Function %half
       %void = OpTypeVoid
         %34 = OpTypeFunction %void
%_ptr_StorageBuffer_v4half = OpTypePointer StorageBuffer %v4half
       %uint = OpTypeInt 32 0
     %uint_0 = OpConstant %uint 0
%VertexOutput = OpTypeStruct %v4float %v4half
         %47 = OpTypeFunction %VertexOutput
%_ptr_Function_VertexOutput = OpTypePointer Function %VertexOutput
         %51 = OpConstantNull %VertexOutput
%_ptr_Function_v4float = OpTypePointer Function %v4float
         %54 = OpConstantNull %v4float
     %uint_1 = OpConstant %uint 1
    %float_1 = OpConstant %float 1
 %mix_f1a543 = OpFunction %v4half None %15
         %16 = OpLabel
      %arg_0 = OpVariable %_ptr_Function_v4half Function
      %arg_1 = OpVariable %_ptr_Function_v4half Function
      %arg_2 = OpVariable %_ptr_Function_half Function
        %res = OpVariable %_ptr_Function_v4half Function
               OpStore %arg_0 %19
               OpStore %arg_1 %19
               OpStore %arg_2 %half_0x1p_0
         %24 = OpLoad %v4half %arg_0 None
         %25 = OpLoad %v4half %arg_1 None
         %26 = OpLoad %half %arg_2 None
         %27 = OpCompositeConstruct %v4half %26 %26 %26 %26
         %28 = OpExtInst %v4half %29 FMix %24 %25 %27
               OpStore %res %28
         %31 = OpLoad %v4half %res None
               OpReturnValue %31
               OpFunctionEnd
%fragment_main = OpFunction %void None %34
         %35 = OpLabel
         %36 = OpFunctionCall %v4half %mix_f1a543
         %37 = OpAccessChain %_ptr_StorageBuffer_v4half %1 %uint_0
               OpStore %37 %36 None
               OpReturn
               OpFunctionEnd
%compute_main = OpFunction %void None %34
         %42 = OpLabel
         %43 = OpFunctionCall %v4half %mix_f1a543
         %44 = OpAccessChain %_ptr_StorageBuffer_v4half %1 %uint_0
               OpStore %44 %43 None
               OpReturn
               OpFunctionEnd
%vertex_main_inner = OpFunction %VertexOutput None %47
         %48 = OpLabel
        %out = OpVariable %_ptr_Function_VertexOutput Function %51
         %52 = OpAccessChain %_ptr_Function_v4float %out %uint_0
               OpStore %52 %54 None
         %55 = OpAccessChain %_ptr_Function_v4half %out %uint_1
         %57 = OpFunctionCall %v4half %mix_f1a543
               OpStore %55 %57 None
         %58 = OpLoad %VertexOutput %out None
               OpReturnValue %58
               OpFunctionEnd
%vertex_main = OpFunction %void None %34
         %60 = OpLabel
         %61 = OpFunctionCall %VertexOutput %vertex_main_inner
         %62 = OpCompositeExtract %v4float %61 0
               OpStore %vertex_main_position_Output %62 None
         %63 = OpCompositeExtract %v4half %61 1
               OpStore %vertex_main_loc0_Output %63 None
               OpStore %vertex_main___point_size_Output %float_1 None
               OpReturn
               OpFunctionEnd
