; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 104
; 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 %u_block "u_block"
               OpMemberName %u_block 0 "inner"
               OpName %S "S"
               OpMemberName %S 0 "before"
               OpMemberName %S 1 "m"
               OpMemberName %S 2 "after"
               OpName %s "s"
               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 64
               OpDecorate %_arr_S_std140_uint_4 ArrayStride 128
               OpDecorate %u NonWritable
               OpDecorate %u DescriptorSet 0
               OpDecorate %u Binding 0
               OpDecorate %u_block Block
               OpMemberDecorate %u_block 0 Offset 0
               OpMemberDecorate %S 0 Offset 0
               OpMemberDecorate %S 1 Offset 8
               OpMemberDecorate %S 1 ColMajor
               OpMemberDecorate %S 1 MatrixStride 8
               OpMemberDecorate %S 2 Offset 64
               OpDecorate %_arr_S_uint_4 ArrayStride 128
               OpDecorate %s DescriptorSet 0
               OpDecorate %s Binding 1
        %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
    %u_block = OpTypeStruct %_arr_S_uint_4
%_ptr_StorageBuffer_u_block = OpTypePointer StorageBuffer %u_block
          %s = OpVariable %_ptr_StorageBuffer_u_block StorageBuffer
         %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
         %33 = OpConstantNull %_arr_S_uint_4
%_ptr_Function_uint = OpTypePointer Function %uint
         %36 = OpConstantNull %uint
       %bool = OpTypeBool
%_ptr_Function__arr_S_std140_uint_4 = OpTypePointer Function %_arr_S_std140_uint_4
         %49 = 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
         %62 = 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
         %78 = OpTypeFunction %void
%_ptr_StorageBuffer__arr_S_uint_4 = OpTypePointer StorageBuffer %_arr_S_uint_4
%_ptr_Uniform__arr_S_std140_uint_4 = OpTypePointer Uniform %_arr_S_std140_uint_4
      %int_1 = OpConstant %int 1
%_ptr_StorageBuffer_S = OpTypePointer StorageBuffer %S
      %int_3 = OpConstant %int 3
%_ptr_StorageBuffer_mat2v2float = OpTypePointer StorageBuffer %mat2v2float
         %98 = OpConstantNull %int
%_ptr_StorageBuffer_v2float = OpTypePointer StorageBuffer %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 %33
          %i = OpVariable %_ptr_Function_uint Function %36
%var_for_index = OpVariable %_ptr_Function__arr_S_std140_uint_4 Function %49
               OpBranch %37
         %37 = OpLabel
               OpLoopMerge %38 %39 None
               OpBranch %40
         %40 = OpLabel
         %42 = OpLoad %uint %i
         %43 = OpULessThan %bool %42 %uint_4
         %41 = OpLogicalNot %bool %43
               OpSelectionMerge %45 None
               OpBranchConditional %41 %46 %45
         %46 = OpLabel
               OpBranch %38
         %45 = OpLabel
               OpStore %var_for_index %val_0
         %50 = OpLoad %uint %i
         %52 = OpAccessChain %_ptr_Function_S %arr %50
         %54 = OpLoad %uint %i
         %56 = OpAccessChain %_ptr_Function_S_std140 %var_for_index %54
         %57 = OpLoad %S_std140 %56
         %53 = OpFunctionCall %S %conv_S %57
               OpStore %52 %53
               OpBranch %39
         %39 = OpLabel
         %58 = OpLoad %uint %i
         %60 = OpIAdd %uint %58 %uint_1
               OpStore %i %60
               OpBranch %37
         %38 = OpLabel
         %61 = OpLoad %_arr_S_uint_4 %arr
               OpReturnValue %61
               OpFunctionEnd
%load_u_inner_2_m = OpFunction %mat2v2float None %62
         %64 = OpLabel
         %69 = OpAccessChain %_ptr_Uniform_S_std140 %u %uint_0 %uint_2
         %72 = OpAccessChain %_ptr_Uniform_v2float %69 %uint_1
         %73 = OpLoad %v2float %72
         %75 = OpAccessChain %_ptr_Uniform_v2float %69 %uint_2
         %76 = OpLoad %v2float %75
         %77 = OpCompositeConstruct %mat2v2float %73 %76
               OpReturnValue %77
               OpFunctionEnd
          %f = OpFunction %void None %78
         %81 = OpLabel
         %83 = OpAccessChain %_ptr_StorageBuffer__arr_S_uint_4 %s %uint_0
         %86 = OpAccessChain %_ptr_Uniform__arr_S_std140_uint_4 %u %uint_0
         %87 = OpLoad %_arr_S_std140_uint_4 %86
         %84 = OpFunctionCall %_arr_S_uint_4 %conv_arr4_S %87
               OpStore %83 %84
         %90 = OpAccessChain %_ptr_StorageBuffer_S %s %uint_0 %int_1
         %92 = OpAccessChain %_ptr_Uniform_S_std140 %u %uint_0 %uint_2
         %93 = OpLoad %S_std140 %92
         %91 = OpFunctionCall %S %conv_S %93
               OpStore %90 %91
         %96 = OpAccessChain %_ptr_StorageBuffer_mat2v2float %s %uint_0 %int_3 %uint_1
         %97 = OpFunctionCall %mat2v2float %load_u_inner_2_m
               OpStore %96 %97
        %100 = OpAccessChain %_ptr_StorageBuffer_v2float %s %uint_0 %int_1 %uint_1 %98
        %101 = OpAccessChain %_ptr_Uniform_v2float %u %uint_0 %36 %uint_2
        %102 = OpLoad %v2float %101
        %103 = OpVectorShuffle %v2float %102 %102 1 0
               OpStore %100 %103
               OpReturn
               OpFunctionEnd
