; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 135
; Schema: 0
               OpCapability Shader
               OpMemoryModel Logical GLSL450
               OpEntryPoint GLCompute %f "f" %local_invocation_index_1
               OpExecutionMode %f LocalSize 1 1 1
               OpName %local_invocation_index_1 "local_invocation_index_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 %S "S"
               OpMemberName %S 0 "before"
               OpMemberName %S 1 "m"
               OpMemberName %S 2 "after"
               OpName %w "w"
               OpName %tint_zero_workgroup_memory "tint_zero_workgroup_memory"
               OpName %local_idx "local_idx"
               OpName %idx "idx"
               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_inner "f_inner"
               OpName %local_invocation_index "local_invocation_index"
               OpName %f "f"
               OpDecorate %local_invocation_index_1 BuiltIn LocalInvocationIndex
               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 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 8
               OpMemberDecorate %S 1 ColMajor
               OpMemberDecorate %S 1 MatrixStride 8
               OpMemberDecorate %S 2 Offset 64
               OpDecorate %_arr_S_uint_4 ArrayStride 128
       %uint = OpTypeInt 32 0
%_ptr_Input_uint = OpTypePointer Input %uint
%local_invocation_index_1 = OpVariable %_ptr_Input_uint Input
        %int = OpTypeInt 32 1
      %float = OpTypeFloat 32
    %v2float = OpTypeVector %float 2
   %S_std140 = OpTypeStruct %int %v2float %v2float %v2float %int
     %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
%_ptr_Workgroup__arr_S_uint_4 = OpTypePointer Workgroup %_arr_S_uint_4
          %w = OpVariable %_ptr_Workgroup__arr_S_uint_4 Workgroup
       %void = OpTypeVoid
         %18 = OpTypeFunction %void %uint
%_ptr_Function_uint = OpTypePointer Function %uint
         %25 = OpConstantNull %uint
       %bool = OpTypeBool
%_ptr_Workgroup_S = OpTypePointer Workgroup %S
         %39 = OpConstantNull %S
     %uint_1 = OpConstant %uint 1
     %uint_2 = OpConstant %uint 2
   %uint_264 = OpConstant %uint 264
         %46 = OpTypeFunction %S %S_std140
         %57 = OpTypeFunction %_arr_S_uint_4 %_arr_S_std140_uint_4
%_ptr_Function__arr_S_uint_4 = OpTypePointer Function %_arr_S_uint_4
         %63 = OpConstantNull %_arr_S_uint_4
%_ptr_Function__arr_S_std140_uint_4 = OpTypePointer Function %_arr_S_std140_uint_4
         %76 = OpConstantNull %_arr_S_std140_uint_4
%_ptr_Function_S = OpTypePointer Function %S
%_ptr_Function_S_std140 = OpTypePointer Function %S_std140
         %88 = OpTypeFunction %mat3v2float
     %uint_0 = OpConstant %uint 0
%_ptr_Uniform_S_std140 = OpTypePointer Uniform %S_std140
%_ptr_Uniform_v2float = OpTypePointer Uniform %v2float
     %uint_3 = OpConstant %uint 3
%_ptr_Uniform__arr_S_std140_uint_4 = OpTypePointer Uniform %_arr_S_std140_uint_4
      %int_1 = OpConstant %int 1
      %int_3 = OpConstant %int 3
%_ptr_Workgroup_mat3v2float = OpTypePointer Workgroup %mat3v2float
        %124 = OpConstantNull %int
%_ptr_Workgroup_v2float = OpTypePointer Workgroup %v2float
        %130 = OpTypeFunction %void
%tint_zero_workgroup_memory = OpFunction %void None %18
  %local_idx = OpFunctionParameter %uint
         %22 = OpLabel
        %idx = OpVariable %_ptr_Function_uint Function %25
               OpStore %idx %local_idx
               OpBranch %26
         %26 = OpLabel
               OpLoopMerge %27 %28 None
               OpBranch %29
         %29 = OpLabel
         %31 = OpLoad %uint %idx
         %32 = OpULessThan %bool %31 %uint_4
         %30 = OpLogicalNot %bool %32
               OpSelectionMerge %34 None
               OpBranchConditional %30 %35 %34
         %35 = OpLabel
               OpBranch %27
         %34 = OpLabel
         %36 = OpLoad %uint %idx
         %38 = OpAccessChain %_ptr_Workgroup_S %w %36
               OpStore %38 %39
               OpBranch %28
         %28 = OpLabel
         %40 = OpLoad %uint %idx
         %42 = OpIAdd %uint %40 %uint_1
               OpStore %idx %42
               OpBranch %26
         %27 = OpLabel
               OpControlBarrier %uint_2 %uint_2 %uint_264
               OpReturn
               OpFunctionEnd
     %conv_S = OpFunction %S None %46
        %val = OpFunctionParameter %S_std140
         %49 = OpLabel
         %50 = OpCompositeExtract %int %val 0
         %51 = OpCompositeExtract %v2float %val 1
         %52 = OpCompositeExtract %v2float %val 2
         %53 = OpCompositeExtract %v2float %val 3
         %54 = OpCompositeConstruct %mat3v2float %51 %52 %53
         %55 = OpCompositeExtract %int %val 4
         %56 = OpCompositeConstruct %S %50 %54 %55
               OpReturnValue %56
               OpFunctionEnd
%conv_arr4_S = OpFunction %_arr_S_uint_4 None %57
      %val_0 = OpFunctionParameter %_arr_S_std140_uint_4
         %60 = OpLabel
        %arr = OpVariable %_ptr_Function__arr_S_uint_4 Function %63
          %i = OpVariable %_ptr_Function_uint Function %25
%var_for_index = OpVariable %_ptr_Function__arr_S_std140_uint_4 Function %76
               OpBranch %65
         %65 = OpLabel
               OpLoopMerge %66 %67 None
               OpBranch %68
         %68 = OpLabel
         %70 = OpLoad %uint %i
         %71 = OpULessThan %bool %70 %uint_4
         %69 = OpLogicalNot %bool %71
               OpSelectionMerge %72 None
               OpBranchConditional %69 %73 %72
         %73 = OpLabel
               OpBranch %66
         %72 = OpLabel
               OpStore %var_for_index %val_0
         %77 = OpLoad %uint %i
         %79 = OpAccessChain %_ptr_Function_S %arr %77
         %81 = OpLoad %uint %i
         %83 = OpAccessChain %_ptr_Function_S_std140 %var_for_index %81
         %84 = OpLoad %S_std140 %83
         %80 = OpFunctionCall %S %conv_S %84
               OpStore %79 %80
               OpBranch %67
         %67 = OpLabel
         %85 = OpLoad %uint %i
         %86 = OpIAdd %uint %85 %uint_1
               OpStore %i %86
               OpBranch %65
         %66 = OpLabel
         %87 = OpLoad %_arr_S_uint_4 %arr
               OpReturnValue %87
               OpFunctionEnd
%load_u_inner_2_m = OpFunction %mat3v2float None %88
         %90 = OpLabel
         %94 = OpAccessChain %_ptr_Uniform_S_std140 %u %uint_0 %uint_2
         %97 = OpAccessChain %_ptr_Uniform_v2float %94 %uint_1
         %98 = OpLoad %v2float %97
        %100 = OpAccessChain %_ptr_Uniform_v2float %94 %uint_2
        %101 = OpLoad %v2float %100
        %104 = OpAccessChain %_ptr_Uniform_v2float %94 %uint_3
        %105 = OpLoad %v2float %104
        %106 = OpCompositeConstruct %mat3v2float %98 %101 %105
               OpReturnValue %106
               OpFunctionEnd
    %f_inner = OpFunction %void None %18
%local_invocation_index = OpFunctionParameter %uint
        %109 = OpLabel
        %110 = OpFunctionCall %void %tint_zero_workgroup_memory %local_invocation_index
        %113 = OpAccessChain %_ptr_Uniform__arr_S_std140_uint_4 %u %uint_0
        %114 = OpLoad %_arr_S_std140_uint_4 %113
        %111 = OpFunctionCall %_arr_S_uint_4 %conv_arr4_S %114
               OpStore %w %111
        %116 = OpAccessChain %_ptr_Workgroup_S %w %int_1
        %118 = OpAccessChain %_ptr_Uniform_S_std140 %u %uint_0 %uint_2
        %119 = OpLoad %S_std140 %118
        %117 = OpFunctionCall %S %conv_S %119
               OpStore %116 %117
        %122 = OpAccessChain %_ptr_Workgroup_mat3v2float %w %int_3 %uint_1
        %123 = OpFunctionCall %mat3v2float %load_u_inner_2_m
               OpStore %122 %123
        %126 = OpAccessChain %_ptr_Workgroup_v2float %w %int_1 %uint_1 %124
        %127 = OpAccessChain %_ptr_Uniform_v2float %u %uint_0 %25 %uint_2
        %128 = OpLoad %v2float %127
        %129 = OpVectorShuffle %v2float %128 %128 1 0
               OpStore %126 %129
               OpReturn
               OpFunctionEnd
          %f = OpFunction %void None %130
        %132 = OpLabel
        %134 = OpLoad %uint %local_invocation_index_1
        %133 = OpFunctionCall %void %f_inner %134
               OpReturn
               OpFunctionEnd
