; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 101
; Schema: 0
               OpCapability Shader
               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 "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 8
               OpMemberDecorate %S_std140 2 Offset 16
               OpMemberDecorate %S_std140 3 Offset 24
               OpDecorate %_arr_S_std140_uint_4 ArrayStride 32
               OpDecorate %u NonWritable
               OpDecorate %u DescriptorSet 0
               OpDecorate %u Binding 0
               OpMemberDecorate %S 0 Offset 0
               OpMemberDecorate %S 1 Offset 8
               OpMemberDecorate %S 1 ColMajor
               OpMemberDecorate %S 1 MatrixStride 8
               OpMemberDecorate %S 2 Offset 24
               OpDecorate %_arr_S_uint_4 ArrayStride 32
        %int = OpTypeInt 32 1
      %float = OpTypeFloat 32
    %v2float = OpTypeVector %float 2
   %S_std140 = OpTypeStruct %int %v2float %v2float %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
%mat2v2float = OpTypeMatrix %v2float 2
          %S = OpTypeStruct %int %mat2v2float %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
         %27 = 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
         %35 = OpConstantNull %uint
       %bool = OpTypeBool
%_ptr_Function__arr_S_std140_uint_4 = OpTypePointer Function %_arr_S_std140_uint_4
         %48 = 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
         %61 = OpTypeFunction %mat2v2float
     %uint_0 = OpConstant %uint 0
     %uint_2 = OpConstant %uint 2
%_ptr_Uniform_S_std140 = OpTypePointer Uniform %S_std140
%_ptr_Uniform_v2float = OpTypePointer Uniform %v2float
       %void = OpTypeVoid
         %77 = 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_mat2v2float = OpTypePointer Private %mat2v2float
         %95 = OpConstantNull %int
%_ptr_Private_v2float = OpTypePointer Private %v2float
     %conv_S = OpFunction %S None %17
        %val = OpFunctionParameter %S_std140
         %20 = OpLabel
         %21 = OpCompositeExtract %int %val 0
         %22 = OpCompositeExtract %v2float %val 1
         %23 = OpCompositeExtract %v2float %val 2
         %24 = OpCompositeConstruct %mat2v2float %22 %23
         %25 = OpCompositeExtract %int %val 3
         %26 = OpCompositeConstruct %S %21 %24 %25
               OpReturnValue %26
               OpFunctionEnd
%conv_arr4_S = OpFunction %_arr_S_uint_4 None %27
      %val_0 = OpFunctionParameter %_arr_S_std140_uint_4
         %30 = OpLabel
        %arr = OpVariable %_ptr_Function__arr_S_uint_4 Function %16
          %i = OpVariable %_ptr_Function_uint Function %35
%var_for_index = OpVariable %_ptr_Function__arr_S_std140_uint_4 Function %48
               OpBranch %36
         %36 = OpLabel
               OpLoopMerge %37 %38 None
               OpBranch %39
         %39 = OpLabel
         %41 = OpLoad %uint %i
         %42 = OpULessThan %bool %41 %uint_4
         %40 = OpLogicalNot %bool %42
               OpSelectionMerge %44 None
               OpBranchConditional %40 %45 %44
         %45 = OpLabel
               OpBranch %37
         %44 = OpLabel
               OpStore %var_for_index %val_0
         %49 = OpLoad %uint %i
         %51 = OpAccessChain %_ptr_Function_S %arr %49
         %53 = OpLoad %uint %i
         %55 = OpAccessChain %_ptr_Function_S_std140 %var_for_index %53
         %56 = OpLoad %S_std140 %55
         %52 = OpFunctionCall %S %conv_S %56
               OpStore %51 %52
               OpBranch %38
         %38 = OpLabel
         %57 = OpLoad %uint %i
         %59 = OpIAdd %uint %57 %uint_1
               OpStore %i %59
               OpBranch %36
         %37 = OpLabel
         %60 = OpLoad %_arr_S_uint_4 %arr
               OpReturnValue %60
               OpFunctionEnd
%load_u_inner_2_m = OpFunction %mat2v2float None %61
         %63 = OpLabel
         %68 = OpAccessChain %_ptr_Uniform_S_std140 %u %uint_0 %uint_2
         %71 = OpAccessChain %_ptr_Uniform_v2float %68 %uint_1
         %72 = OpLoad %v2float %71
         %74 = OpAccessChain %_ptr_Uniform_v2float %68 %uint_2
         %75 = OpLoad %v2float %74
         %76 = OpCompositeConstruct %mat2v2float %72 %75
               OpReturnValue %76
               OpFunctionEnd
          %f = OpFunction %void None %77
         %80 = OpLabel
         %83 = OpAccessChain %_ptr_Uniform__arr_S_std140_uint_4 %u %uint_0
         %84 = OpLoad %_arr_S_std140_uint_4 %83
         %81 = OpFunctionCall %_arr_S_uint_4 %conv_arr4_S %84
               OpStore %p %81
         %87 = OpAccessChain %_ptr_Private_S %p %int_1
         %89 = OpAccessChain %_ptr_Uniform_S_std140 %u %uint_0 %uint_2
         %90 = OpLoad %S_std140 %89
         %88 = OpFunctionCall %S %conv_S %90
               OpStore %87 %88
         %93 = OpAccessChain %_ptr_Private_mat2v2float %p %int_3 %uint_1
         %94 = OpFunctionCall %mat2v2float %load_u_inner_2_m
               OpStore %93 %94
         %97 = OpAccessChain %_ptr_Private_v2float %p %int_1 %uint_1 %95
         %98 = OpAccessChain %_ptr_Uniform_v2float %u %uint_0 %35 %uint_2
         %99 = OpLoad %v2float %98
        %100 = OpVectorShuffle %v2float %99 %99 1 0
               OpStore %97 %100
               OpReturn
               OpFunctionEnd
