; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 48
; Schema: 0
               OpCapability Shader
               OpCapability Float16
               OpCapability UniformAndStorageBuffer16BitAccess
               OpCapability StorageBuffer16BitAccess
               OpCapability StorageInputOutput16
               OpMemoryModel Logical GLSL450
               OpEntryPoint GLCompute %f "f"
               OpExecutionMode %f LocalSize 1 1 1
               OpName %m_block_std140 "m_block_std140"
               OpMemberName %m_block_std140 0 "inner_0"
               OpMemberName %m_block_std140 1 "inner_1"
               OpMemberName %m_block_std140 2 "inner_2"
               OpMemberName %m_block_std140 3 "inner_3"
               OpName %m "m"
               OpName %counter "counter"
               OpName %i "i"
               OpName %load_m_inner "load_m_inner"
               OpName %f "f"
               OpDecorate %m_block_std140 Block
               OpMemberDecorate %m_block_std140 0 Offset 0
               OpMemberDecorate %m_block_std140 1 Offset 8
               OpMemberDecorate %m_block_std140 2 Offset 16
               OpMemberDecorate %m_block_std140 3 Offset 24
               OpDecorate %m NonWritable
               OpDecorate %m DescriptorSet 0
               OpDecorate %m Binding 0
       %half = OpTypeFloat 16
     %v4half = OpTypeVector %half 4
%m_block_std140 = OpTypeStruct %v4half %v4half %v4half %v4half
%_ptr_Uniform_m_block_std140 = OpTypePointer Uniform %m_block_std140
          %m = OpVariable %_ptr_Uniform_m_block_std140 Uniform
        %int = OpTypeInt 32 1
          %7 = OpConstantNull %int
%_ptr_Private_int = OpTypePointer Private %int
    %counter = OpVariable %_ptr_Private_int Private %7
         %10 = OpTypeFunction %int
      %int_1 = OpConstant %int 1
 %mat4v4half = OpTypeMatrix %v4half 4
         %17 = OpTypeFunction %mat4v4half
       %uint = OpTypeInt 32 0
     %uint_0 = OpConstant %uint 0
%_ptr_Uniform_v4half = OpTypePointer Uniform %v4half
     %uint_1 = OpConstant %uint 1
     %uint_2 = OpConstant %uint 2
     %uint_3 = OpConstant %uint 3
       %void = OpTypeVoid
         %41 = OpTypeFunction %void
          %i = OpFunction %int None %10
         %12 = OpLabel
         %13 = OpLoad %int %counter
         %15 = OpIAdd %int %13 %int_1
               OpStore %counter %15
         %16 = OpLoad %int %counter
               OpReturnValue %16
               OpFunctionEnd
%load_m_inner = OpFunction %mat4v4half None %17
         %20 = OpLabel
         %26 = OpAccessChain %_ptr_Uniform_v4half %m %uint_0
         %27 = OpLoad %v4half %26
         %30 = OpAccessChain %_ptr_Uniform_v4half %m %uint_1
         %31 = OpLoad %v4half %30
         %34 = OpAccessChain %_ptr_Uniform_v4half %m %uint_2
         %35 = OpLoad %v4half %34
         %38 = OpAccessChain %_ptr_Uniform_v4half %m %uint_3
         %39 = OpLoad %v4half %38
         %40 = OpCompositeConstruct %mat4v4half %27 %31 %35 %39
               OpReturnValue %40
               OpFunctionEnd
          %f = OpFunction %void None %41
         %44 = OpLabel
         %45 = OpFunctionCall %mat4v4half %load_m_inner
         %46 = OpAccessChain %_ptr_Uniform_v4half %m %uint_1
         %47 = OpLoad %v4half %46
               OpReturn
               OpFunctionEnd
