; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 109
; 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 "m_2"
               OpMemberName %S_std140 4 "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 24
               OpMemberDecorate %S_std140 4 Offset 72
               OpDecorate %_arr_S_std140_uint_4 ArrayStride 80
               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 72
               OpDecorate %_arr_S_uint_4 ArrayStride 80
               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 %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
%mat3v2float = OpTypeMatrix %v2float 3
          %S = OpTypeStruct %int %mat3v2float %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
         %28 = OpTypeFunction %_arr_S_uint_4 %_arr_S_std140_uint_4
%_ptr_Function__arr_S_uint_4 = OpTypePointer Function %_arr_S_uint_4
         %34 = OpConstantNull %_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 %mat3v2float
     %uint_0 = OpConstant %uint 0
     %uint_2 = OpConstant %uint 2
%_ptr_Uniform_S_std140 = OpTypePointer Uniform %S_std140
%_ptr_Uniform_v2float = OpTypePointer Uniform %v2float
     %uint_3 = OpConstant %uint 3
       %void = OpTypeVoid
         %83 = 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_mat3v2float = OpTypePointer StorageBuffer %mat3v2float
        %103 = 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 = OpCompositeExtract %v2float %val 3
         %25 = OpCompositeConstruct %mat3v2float %22 %23 %24
         %26 = OpCompositeExtract %int %val 4
         %27 = OpCompositeConstruct %S %21 %25 %26
               OpReturnValue %27
               OpFunctionEnd
%conv_arr4_S = OpFunction %_arr_S_uint_4 None %28
      %val_0 = OpFunctionParameter %_arr_S_std140_uint_4
         %31 = OpLabel
        %arr = OpVariable %_ptr_Function__arr_S_uint_4 Function %34
          %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 %mat3v2float None %63
         %65 = OpLabel
         %70 = OpAccessChain %_ptr_Uniform_S_std140 %u %uint_0 %uint_2
         %73 = OpAccessChain %_ptr_Uniform_v2float %70 %uint_1
         %74 = OpLoad %v2float %73
         %76 = OpAccessChain %_ptr_Uniform_v2float %70 %uint_2
         %77 = OpLoad %v2float %76
         %80 = OpAccessChain %_ptr_Uniform_v2float %70 %uint_3
         %81 = OpLoad %v2float %80
         %82 = OpCompositeConstruct %mat3v2float %74 %77 %81
               OpReturnValue %82
               OpFunctionEnd
          %f = OpFunction %void None %83
         %86 = OpLabel
         %88 = OpAccessChain %_ptr_StorageBuffer__arr_S_uint_4 %s %uint_0
         %91 = OpAccessChain %_ptr_Uniform__arr_S_std140_uint_4 %u %uint_0
         %92 = OpLoad %_arr_S_std140_uint_4 %91
         %89 = OpFunctionCall %_arr_S_uint_4 %conv_arr4_S %92
               OpStore %88 %89
         %95 = OpAccessChain %_ptr_StorageBuffer_S %s %uint_0 %int_1
         %97 = OpAccessChain %_ptr_Uniform_S_std140 %u %uint_0 %uint_2
         %98 = OpLoad %S_std140 %97
         %96 = OpFunctionCall %S %conv_S %98
               OpStore %95 %96
        %101 = OpAccessChain %_ptr_StorageBuffer_mat3v2float %s %uint_0 %int_3 %uint_1
        %102 = OpFunctionCall %mat3v2float %load_u_inner_2_m
               OpStore %101 %102
        %105 = OpAccessChain %_ptr_StorageBuffer_v2float %s %uint_0 %int_1 %uint_1 %103
        %106 = OpAccessChain %_ptr_Uniform_v2float %u %uint_0 %37 %uint_2
        %107 = OpLoad %v2float %106
        %108 = OpVectorShuffle %v2float %107 %107 1 0
               OpStore %105 %108
               OpReturn
               OpFunctionEnd
