; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 139
; 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 "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 %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 32
               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 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 %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
%mat4v2float = OpTypeMatrix %v2float 4
          %S = OpTypeStruct %int %mat4v2float %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
         %58 = OpTypeFunction %_arr_S_uint_4 %_arr_S_std140_uint_4
%_ptr_Function__arr_S_uint_4 = OpTypePointer Function %_arr_S_uint_4
         %64 = OpConstantNull %_arr_S_uint_4
%_ptr_Function__arr_S_std140_uint_4 = OpTypePointer Function %_arr_S_std140_uint_4
         %77 = OpConstantNull %_arr_S_std140_uint_4
%_ptr_Function_S = OpTypePointer Function %S
%_ptr_Function_S_std140 = OpTypePointer Function %S_std140
         %89 = OpTypeFunction %mat4v2float
     %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_mat4v2float = OpTypePointer Workgroup %mat4v2float
        %128 = OpConstantNull %int
%_ptr_Workgroup_v2float = OpTypePointer Workgroup %v2float
        %134 = 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 = OpCompositeExtract %v2float %val 4
         %55 = OpCompositeConstruct %mat4v2float %51 %52 %53 %54
         %56 = OpCompositeExtract %int %val 5
         %57 = OpCompositeConstruct %S %50 %55 %56
               OpReturnValue %57
               OpFunctionEnd
%conv_arr4_S = OpFunction %_arr_S_uint_4 None %58
      %val_0 = OpFunctionParameter %_arr_S_std140_uint_4
         %61 = OpLabel
        %arr = OpVariable %_ptr_Function__arr_S_uint_4 Function %64
          %i = OpVariable %_ptr_Function_uint Function %25
%var_for_index = OpVariable %_ptr_Function__arr_S_std140_uint_4 Function %77
               OpBranch %66
         %66 = OpLabel
               OpLoopMerge %67 %68 None
               OpBranch %69
         %69 = OpLabel
         %71 = OpLoad %uint %i
         %72 = OpULessThan %bool %71 %uint_4
         %70 = OpLogicalNot %bool %72
               OpSelectionMerge %73 None
               OpBranchConditional %70 %74 %73
         %74 = OpLabel
               OpBranch %67
         %73 = OpLabel
               OpStore %var_for_index %val_0
         %78 = OpLoad %uint %i
         %80 = OpAccessChain %_ptr_Function_S %arr %78
         %82 = OpLoad %uint %i
         %84 = OpAccessChain %_ptr_Function_S_std140 %var_for_index %82
         %85 = OpLoad %S_std140 %84
         %81 = OpFunctionCall %S %conv_S %85
               OpStore %80 %81
               OpBranch %68
         %68 = OpLabel
         %86 = OpLoad %uint %i
         %87 = OpIAdd %uint %86 %uint_1
               OpStore %i %87
               OpBranch %66
         %67 = OpLabel
         %88 = OpLoad %_arr_S_uint_4 %arr
               OpReturnValue %88
               OpFunctionEnd
%load_u_inner_2_m = OpFunction %mat4v2float None %89
         %91 = OpLabel
         %95 = OpAccessChain %_ptr_Uniform_S_std140 %u %uint_0 %uint_2
         %98 = OpAccessChain %_ptr_Uniform_v2float %95 %uint_1
         %99 = OpLoad %v2float %98
        %101 = OpAccessChain %_ptr_Uniform_v2float %95 %uint_2
        %102 = OpLoad %v2float %101
        %105 = OpAccessChain %_ptr_Uniform_v2float %95 %uint_3
        %106 = OpLoad %v2float %105
        %108 = OpAccessChain %_ptr_Uniform_v2float %95 %uint_4
        %109 = OpLoad %v2float %108
        %110 = OpCompositeConstruct %mat4v2float %99 %102 %106 %109
               OpReturnValue %110
               OpFunctionEnd
    %f_inner = OpFunction %void None %18
%local_invocation_index = OpFunctionParameter %uint
        %113 = OpLabel
        %114 = OpFunctionCall %void %tint_zero_workgroup_memory %local_invocation_index
        %117 = OpAccessChain %_ptr_Uniform__arr_S_std140_uint_4 %u %uint_0
        %118 = OpLoad %_arr_S_std140_uint_4 %117
        %115 = OpFunctionCall %_arr_S_uint_4 %conv_arr4_S %118
               OpStore %w %115
        %120 = OpAccessChain %_ptr_Workgroup_S %w %int_1
        %122 = OpAccessChain %_ptr_Uniform_S_std140 %u %uint_0 %uint_2
        %123 = OpLoad %S_std140 %122
        %121 = OpFunctionCall %S %conv_S %123
               OpStore %120 %121
        %126 = OpAccessChain %_ptr_Workgroup_mat4v2float %w %int_3 %uint_1
        %127 = OpFunctionCall %mat4v2float %load_u_inner_2_m
               OpStore %126 %127
        %130 = OpAccessChain %_ptr_Workgroup_v2float %w %int_1 %uint_1 %128
        %131 = OpAccessChain %_ptr_Uniform_v2float %u %uint_0 %25 %uint_2
        %132 = OpLoad %v2float %131
        %133 = OpVectorShuffle %v2float %132 %132 1 0
               OpStore %130 %133
               OpReturn
               OpFunctionEnd
          %f = OpFunction %void None %134
        %136 = OpLabel
        %138 = OpLoad %uint %local_invocation_index_1
        %137 = OpFunctionCall %void %f_inner %138
               OpReturn
               OpFunctionEnd
