; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 38
; Schema: 0
               OpCapability Shader
               OpCapability Float16
               OpCapability UniformAndStorageBuffer16BitAccess
               OpCapability StorageBuffer16BitAccess
               OpCapability StorageInputOutput16
         %16 = 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 %ldexp_7fa13c "ldexp_7fa13c"
               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
      %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
     %v4half = OpTypeVector %half 4
         %17 = OpConstantNull %v4half
        %int = OpTypeInt 32 1
      %v4int = OpTypeVector %int 4
      %int_1 = OpConstant %int 1
         %21 = OpConstantComposite %v4int %int_1 %int_1 %int_1 %int_1
%_ptr_Function_v4half = OpTypePointer Function %v4half
         %24 = OpTypeFunction %v4float
    %float_1 = OpConstant %float 1
%ldexp_7fa13c = OpFunction %void None %9
         %12 = OpLabel
        %res = OpVariable %_ptr_Function_v4half Function %17
         %13 = OpExtInst %v4half %16 Ldexp %17 %21
               OpStore %res %13
               OpReturn
               OpFunctionEnd
%vertex_main_inner = OpFunction %v4float None %24
         %26 = OpLabel
         %27 = OpFunctionCall %void %ldexp_7fa13c
               OpReturnValue %5
               OpFunctionEnd
%vertex_main = OpFunction %void None %9
         %29 = OpLabel
         %30 = OpFunctionCall %v4float %vertex_main_inner
               OpStore %value %30
               OpStore %vertex_point_size %float_1
               OpReturn
               OpFunctionEnd
%fragment_main = OpFunction %void None %9
         %33 = OpLabel
         %34 = OpFunctionCall %void %ldexp_7fa13c
               OpReturn
               OpFunctionEnd
%compute_main = OpFunction %void None %9
         %36 = OpLabel
         %37 = OpFunctionCall %void %ldexp_7fa13c
               OpReturn
               OpFunctionEnd
