; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 110
; 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 %u_block_std140 "u_block_std140"
               OpMemberName %u_block_std140 0 "inner"
               OpName %S_std140 "S_std140"
               OpMemberName %S_std140 0 "before"
               OpMemberName %S_std140 1 "m_0"
               OpMemberName %S_std140 2 "m_1"
               OpMemberName %S_std140 3 "m_2"
               OpMemberName %S_std140 4 "m_3"
               OpMemberName %S_std140 5 "after"
               OpName %u "u"
               OpName %S "S"
               OpMemberName %S 0 "before"
               OpMemberName %S 1 "m"
               OpMemberName %S 2 "after"
               OpName %p "p"
               OpName %conv_S "conv_S"
               OpName %val "val"
               OpName %conv_arr4_S "conv_arr4_S"
               OpName %val_0 "val"
               OpName %arr "arr"
               OpName %i "i"
               OpName %var_for_index "var_for_index"
               OpName %load_u_inner_2_m "load_u_inner_2_m"
               OpName %f "f"
               OpDecorate %u_block_std140 Block
               OpMemberDecorate %u_block_std140 0 Offset 0
               OpMemberDecorate %S_std140 0 Offset 0
               OpMemberDecorate %S_std140 1 Offset 4
               OpMemberDecorate %S_std140 2 Offset 8
               OpMemberDecorate %S_std140 3 Offset 12
               OpMemberDecorate %S_std140 4 Offset 16
               OpMemberDecorate %S_std140 5 Offset 64
               OpDecorate %_arr_S_std140_uint_4 ArrayStride 128
               OpDecorate %u NonWritable
               OpDecorate %u DescriptorSet 0
               OpDecorate %u Binding 0
               OpMemberDecorate %S 0 Offset 0
               OpMemberDecorate %S 1 Offset 4
               OpMemberDecorate %S 1 ColMajor
               OpMemberDecorate %S 1 MatrixStride 4
               OpMemberDecorate %S 2 Offset 64
               OpDecorate %_arr_S_uint_4 ArrayStride 128
        %int = OpTypeInt 32 1
       %half = OpTypeFloat 16
     %v2half = OpTypeVector %half 2
   %S_std140 = OpTypeStruct %int %v2half %v2half %v2half %v2half %int
       %uint = OpTypeInt 32 0
     %uint_4 = OpConstant %uint 4
%_arr_S_std140_uint_4 = OpTypeArray %S_std140 %uint_4
%u_block_std140 = OpTypeStruct %_arr_S_std140_uint_4
%_ptr_Uniform_u_block_std140 = OpTypePointer Uniform %u_block_std140
          %u = OpVariable %_ptr_Uniform_u_block_std140 Uniform
 %mat4v2half = OpTypeMatrix %v2half 4
          %S = OpTypeStruct %int %mat4v2half %int
%_arr_S_uint_4 = OpTypeArray %S %uint_4
%_ptr_Private__arr_S_uint_4 = OpTypePointer Private %_arr_S_uint_4
         %16 = OpConstantNull %_arr_S_uint_4
          %p = OpVariable %_ptr_Private__arr_S_uint_4 Private %16
         %17 = OpTypeFunction %S %S_std140
         %29 = OpTypeFunction %_arr_S_uint_4 %_arr_S_std140_uint_4
%_ptr_Function__arr_S_uint_4 = OpTypePointer Function %_arr_S_uint_4
%_ptr_Function_uint = OpTypePointer Function %uint
         %37 = OpConstantNull %uint
       %bool = OpTypeBool
%_ptr_Function__arr_S_std140_uint_4 = OpTypePointer Function %_arr_S_std140_uint_4
         %50 = OpConstantNull %_arr_S_std140_uint_4
%_ptr_Function_S = OpTypePointer Function %S
%_ptr_Function_S_std140 = OpTypePointer Function %S_std140
     %uint_1 = OpConstant %uint 1
         %63 = OpTypeFunction %mat4v2half
     %uint_0 = OpConstant %uint 0
     %uint_2 = OpConstant %uint 2
%_ptr_Uniform_S_std140 = OpTypePointer Uniform %S_std140
%_ptr_Uniform_v2half = OpTypePointer Uniform %v2half
     %uint_3 = OpConstant %uint 3
       %void = OpTypeVoid
         %86 = OpTypeFunction %void
%_ptr_Uniform__arr_S_std140_uint_4 = OpTypePointer Uniform %_arr_S_std140_uint_4
      %int_1 = OpConstant %int 1
%_ptr_Private_S = OpTypePointer Private %S
      %int_3 = OpConstant %int 3
%_ptr_Private_mat4v2half = OpTypePointer Private %mat4v2half
        %104 = OpConstantNull %int
%_ptr_Private_v2half = OpTypePointer Private %v2half
     %conv_S = OpFunction %S None %17
        %val = OpFunctionParameter %S_std140
         %20 = OpLabel
         %21 = OpCompositeExtract %int %val 0
         %22 = OpCompositeExtract %v2half %val 1
         %23 = OpCompositeExtract %v2half %val 2
         %24 = OpCompositeExtract %v2half %val 3
         %25 = OpCompositeExtract %v2half %val 4
         %26 = OpCompositeConstruct %mat4v2half %22 %23 %24 %25
         %27 = OpCompositeExtract %int %val 5
         %28 = OpCompositeConstruct %S %21 %26 %27
               OpReturnValue %28
               OpFunctionEnd
%conv_arr4_S = OpFunction %_arr_S_uint_4 None %29
      %val_0 = OpFunctionParameter %_arr_S_std140_uint_4
         %32 = OpLabel
        %arr = OpVariable %_ptr_Function__arr_S_uint_4 Function %16
          %i = OpVariable %_ptr_Function_uint Function %37
%var_for_index = OpVariable %_ptr_Function__arr_S_std140_uint_4 Function %50
               OpBranch %38
         %38 = OpLabel
               OpLoopMerge %39 %40 None
               OpBranch %41
         %41 = OpLabel
         %43 = OpLoad %uint %i
         %44 = OpULessThan %bool %43 %uint_4
         %42 = OpLogicalNot %bool %44
               OpSelectionMerge %46 None
               OpBranchConditional %42 %47 %46
         %47 = OpLabel
               OpBranch %39
         %46 = OpLabel
               OpStore %var_for_index %val_0
         %51 = OpLoad %uint %i
         %53 = OpAccessChain %_ptr_Function_S %arr %51
         %55 = OpLoad %uint %i
         %57 = OpAccessChain %_ptr_Function_S_std140 %var_for_index %55
         %58 = OpLoad %S_std140 %57
         %54 = OpFunctionCall %S %conv_S %58
               OpStore %53 %54
               OpBranch %40
         %40 = OpLabel
         %59 = OpLoad %uint %i
         %61 = OpIAdd %uint %59 %uint_1
               OpStore %i %61
               OpBranch %38
         %39 = OpLabel
         %62 = OpLoad %_arr_S_uint_4 %arr
               OpReturnValue %62
               OpFunctionEnd
%load_u_inner_2_m = OpFunction %mat4v2half None %63
         %65 = OpLabel
         %70 = OpAccessChain %_ptr_Uniform_S_std140 %u %uint_0 %uint_2
         %73 = OpAccessChain %_ptr_Uniform_v2half %70 %uint_1
         %74 = OpLoad %v2half %73
         %76 = OpAccessChain %_ptr_Uniform_v2half %70 %uint_2
         %77 = OpLoad %v2half %76
         %80 = OpAccessChain %_ptr_Uniform_v2half %70 %uint_3
         %81 = OpLoad %v2half %80
         %83 = OpAccessChain %_ptr_Uniform_v2half %70 %uint_4
         %84 = OpLoad %v2half %83
         %85 = OpCompositeConstruct %mat4v2half %74 %77 %81 %84
               OpReturnValue %85
               OpFunctionEnd
          %f = OpFunction %void None %86
         %89 = OpLabel
         %92 = OpAccessChain %_ptr_Uniform__arr_S_std140_uint_4 %u %uint_0
         %93 = OpLoad %_arr_S_std140_uint_4 %92
         %90 = OpFunctionCall %_arr_S_uint_4 %conv_arr4_S %93
               OpStore %p %90
         %96 = OpAccessChain %_ptr_Private_S %p %int_1
         %98 = OpAccessChain %_ptr_Uniform_S_std140 %u %uint_0 %uint_2
         %99 = OpLoad %S_std140 %98
         %97 = OpFunctionCall %S %conv_S %99
               OpStore %96 %97
        %102 = OpAccessChain %_ptr_Private_mat4v2half %p %int_3 %uint_1
        %103 = OpFunctionCall %mat4v2half %load_u_inner_2_m
               OpStore %102 %103
        %106 = OpAccessChain %_ptr_Private_v2half %p %int_1 %uint_1 %104
        %107 = OpAccessChain %_ptr_Uniform_v2half %u %uint_0 %37 %uint_2
        %108 = OpLoad %v2half %107
        %109 = OpVectorShuffle %v2half %108 %108 1 0
               OpStore %106 %109
               OpReturn
               OpFunctionEnd
