; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 41
; Schema: 0
               OpCapability Shader
               OpCapability Float16
               OpCapability UniformAndStorageBuffer16BitAccess
               OpCapability StorageBuffer16BitAccess
               OpCapability StorageInputOutput16
         %22 = OpExtInstImport "GLSL.std.450"
               OpMemoryModel Logical GLSL450
               OpEntryPoint Vertex %vertex_main "vertex_main" %value %vertex_point_size
               OpEntryPoint Fragment %fragment_main "fragment_main"
               OpEntryPoint GLCompute %compute_main "compute_main"
               OpExecutionMode %fragment_main OriginUpperLeft
               OpExecutionMode %compute_main LocalSize 1 1 1
               OpName %value "value"
               OpName %vertex_point_size "vertex_point_size"
               OpName %frexp_ae4a66 "frexp_ae4a66"
               OpName %arg_0 "arg_0"
               OpName %__frexp_result_vec3_f16 "__frexp_result_vec3_f16"
               OpMemberName %__frexp_result_vec3_f16 0 "sig"
               OpMemberName %__frexp_result_vec3_f16 1 "exp"
               OpName %res "res"
               OpName %vertex_main_inner "vertex_main_inner"
               OpName %vertex_main "vertex_main"
               OpName %fragment_main "fragment_main"
               OpName %compute_main "compute_main"
               OpDecorate %value BuiltIn Position
               OpDecorate %vertex_point_size BuiltIn PointSize
               OpMemberDecorate %__frexp_result_vec3_f16 0 Offset 0
               OpMemberDecorate %__frexp_result_vec3_f16 1 Offset 16
      %float = OpTypeFloat 32
    %v4float = OpTypeVector %float 4
%_ptr_Output_v4float = OpTypePointer Output %v4float
          %5 = OpConstantNull %v4float
      %value = OpVariable %_ptr_Output_v4float Output %5
%_ptr_Output_float = OpTypePointer Output %float
          %8 = OpConstantNull %float
%vertex_point_size = OpVariable %_ptr_Output_float Output %8
       %void = OpTypeVoid
          %9 = OpTypeFunction %void
       %half = OpTypeFloat 16
     %v3half = OpTypeVector %half 3
         %15 = OpConstantNull %v3half
%_ptr_Function_v3half = OpTypePointer Function %v3half
        %int = OpTypeInt 32 1
      %v3int = OpTypeVector %int 3
%__frexp_result_vec3_f16 = OpTypeStruct %v3half %v3int
%_ptr_Function___frexp_result_vec3_f16 = OpTypePointer Function %__frexp_result_vec3_f16
         %26 = OpConstantNull %__frexp_result_vec3_f16
         %27 = OpTypeFunction %v4float
    %float_1 = OpConstant %float 1
%frexp_ae4a66 = OpFunction %void None %9
         %12 = OpLabel
      %arg_0 = OpVariable %_ptr_Function_v3half Function %15
        %res = OpVariable %_ptr_Function___frexp_result_vec3_f16 Function %26
               OpStore %arg_0 %15
         %23 = OpLoad %v3half %arg_0
         %18 = OpExtInst %__frexp_result_vec3_f16 %22 FrexpStruct %23
               OpStore %res %18
               OpReturn
               OpFunctionEnd
%vertex_main_inner = OpFunction %v4float None %27
         %29 = OpLabel
         %30 = OpFunctionCall %void %frexp_ae4a66
               OpReturnValue %5
               OpFunctionEnd
%vertex_main = OpFunction %void None %9
         %32 = OpLabel
         %33 = OpFunctionCall %v4float %vertex_main_inner
               OpStore %value %33
               OpStore %vertex_point_size %float_1
               OpReturn
               OpFunctionEnd
%fragment_main = OpFunction %void None %9
         %36 = OpLabel
         %37 = OpFunctionCall %void %frexp_ae4a66
               OpReturn
               OpFunctionEnd
%compute_main = OpFunction %void None %9
         %39 = OpLabel
         %40 = OpFunctionCall %void %frexp_ae4a66
               OpReturn
               OpFunctionEnd
