; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 1
; Bound: 67
; Schema: 0
               OpCapability Shader
               OpCapability Float16
               OpCapability UniformAndStorageBuffer16BitAccess
               OpCapability StorageBuffer16BitAccess
               OpCapability StorageInputOutput16
         %31 = 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 %tint_symbol_1 0 "tint_symbol"
               OpName %tint_symbol_1 "tint_symbol_1"
               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 %smoothstep_12c031 "smoothstep_12c031"
               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 %tint_symbol_1 0 Offset 0
               OpDecorate %tint_symbol_1 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
     %v2half = OpTypeVector %half 2
%tint_symbol_1 = OpTypeStruct %v2half
%_ptr_StorageBuffer_tint_symbol_1 = OpTypePointer StorageBuffer %tint_symbol_1
          %1 = OpVariable %_ptr_StorageBuffer_tint_symbol_1 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_v2half = OpTypePointer Output %v2half
%vertex_main_loc0_Output = OpVariable %_ptr_Output_v2half Output
%_ptr_Output_float = OpTypePointer Output %float
%vertex_main___point_size_Output = OpVariable %_ptr_Output_float Output
         %15 = OpTypeFunction %v2half
%_ptr_Function_v2half = OpTypePointer Function %v2half
%half_0x1p_1 = OpConstant %half 0x1p+1
         %19 = OpConstantComposite %v2half %half_0x1p_1 %half_0x1p_1
%half_0x1p_2 = OpConstant %half 0x1p+2
         %22 = OpConstantComposite %v2half %half_0x1p_2 %half_0x1p_2
%half_0x1_8p_1 = OpConstant %half 0x1.8p+1
         %25 = OpConstantComposite %v2half %half_0x1_8p_1 %half_0x1_8p_1
       %void = OpTypeVoid
         %36 = OpTypeFunction %void
%_ptr_StorageBuffer_v2half = OpTypePointer StorageBuffer %v2half
       %uint = OpTypeInt 32 0
     %uint_0 = OpConstant %uint 0
%VertexOutput = OpTypeStruct %v4float %v2half
         %49 = OpTypeFunction %VertexOutput
%_ptr_Function_VertexOutput = OpTypePointer Function %VertexOutput
         %53 = OpConstantNull %VertexOutput
%_ptr_Function_v4float = OpTypePointer Function %v4float
         %56 = OpConstantNull %v4float
     %uint_1 = OpConstant %uint 1
    %float_1 = OpConstant %float 1
%smoothstep_12c031 = OpFunction %v2half None %15
         %16 = OpLabel
      %arg_0 = OpVariable %_ptr_Function_v2half Function
      %arg_1 = OpVariable %_ptr_Function_v2half Function
      %arg_2 = OpVariable %_ptr_Function_v2half Function
        %res = OpVariable %_ptr_Function_v2half Function
               OpStore %arg_0 %19
               OpStore %arg_1 %22
               OpStore %arg_2 %25
         %27 = OpLoad %v2half %arg_0 None
         %28 = OpLoad %v2half %arg_1 None
         %29 = OpLoad %v2half %arg_2 None
         %30 = OpExtInst %v2half %31 SmoothStep %27 %28 %29
               OpStore %res %30
         %33 = OpLoad %v2half %res None
               OpReturnValue %33
               OpFunctionEnd
%fragment_main = OpFunction %void None %36
         %37 = OpLabel
         %38 = OpFunctionCall %v2half %smoothstep_12c031
         %39 = OpAccessChain %_ptr_StorageBuffer_v2half %1 %uint_0
               OpStore %39 %38 None
               OpReturn
               OpFunctionEnd
%compute_main = OpFunction %void None %36
         %44 = OpLabel
         %45 = OpFunctionCall %v2half %smoothstep_12c031
         %46 = OpAccessChain %_ptr_StorageBuffer_v2half %1 %uint_0
               OpStore %46 %45 None
               OpReturn
               OpFunctionEnd
%vertex_main_inner = OpFunction %VertexOutput None %49
         %50 = OpLabel
        %out = OpVariable %_ptr_Function_VertexOutput Function %53
         %54 = OpAccessChain %_ptr_Function_v4float %out %uint_0
               OpStore %54 %56 None
         %57 = OpAccessChain %_ptr_Function_v2half %out %uint_1
         %59 = OpFunctionCall %v2half %smoothstep_12c031
               OpStore %57 %59 None
         %60 = OpLoad %VertexOutput %out None
               OpReturnValue %60
               OpFunctionEnd
%vertex_main = OpFunction %void None %36
         %62 = OpLabel
         %63 = OpFunctionCall %VertexOutput %vertex_main_inner
         %64 = OpCompositeExtract %v4float %63 0
               OpStore %vertex_main_position_Output %64 None
         %65 = OpCompositeExtract %v2half %63 1
               OpStore %vertex_main_loc0_Output %65 None
               OpStore %vertex_main___point_size_Output %float_1 None
               OpReturn
               OpFunctionEnd
