; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 87
; Schema: 0
               OpCapability Shader
               OpMemoryModel Logical GLSL450
               OpEntryPoint GLCompute %f "f"
               OpExecutionMode %f LocalSize 1 1 1
               OpName %u_block "u_block"
               OpMemberName %u_block 0 "inner"
               OpName %u "u"
               OpName %s "s"
               OpName %assign_and_preserve_padding_1_s_X "assign_and_preserve_padding_1_s_X"
               OpName %dest "dest"
               OpName %value "value"
               OpName %assign_and_preserve_padding_s "assign_and_preserve_padding_s"
               OpName %value_0 "value"
               OpName %i "i"
               OpName %var_for_index "var_for_index"
               OpName %f "f"
               OpDecorate %u_block Block
               OpMemberDecorate %u_block 0 Offset 0
               OpMemberDecorate %u_block 0 ColMajor
               OpMemberDecorate %u_block 0 MatrixStride 16
               OpDecorate %_arr_mat3v3float_uint_4 ArrayStride 48
               OpDecorate %u NonWritable
               OpDecorate %u DescriptorSet 0
               OpDecorate %u Binding 0
               OpDecorate %s DescriptorSet 0
               OpDecorate %s Binding 1
               OpDecorate %_arr_uint_uint_1 ArrayStride 4
      %float = OpTypeFloat 32
    %v3float = OpTypeVector %float 3
%mat3v3float = OpTypeMatrix %v3float 3
       %uint = OpTypeInt 32 0
     %uint_4 = OpConstant %uint 4
%_arr_mat3v3float_uint_4 = OpTypeArray %mat3v3float %uint_4
    %u_block = OpTypeStruct %_arr_mat3v3float_uint_4
%_ptr_Uniform_u_block = OpTypePointer Uniform %u_block
          %u = OpVariable %_ptr_Uniform_u_block Uniform
%_ptr_StorageBuffer_u_block = OpTypePointer StorageBuffer %u_block
          %s = OpVariable %_ptr_StorageBuffer_u_block StorageBuffer
       %void = OpTypeVoid
     %uint_1 = OpConstant %uint 1
%_arr_uint_uint_1 = OpTypeArray %uint %uint_1
         %12 = OpTypeFunction %void %_arr_uint_uint_1 %mat3v3float
     %uint_0 = OpConstant %uint 0
        %int = OpTypeInt 32 1
         %22 = OpConstantNull %int
%_ptr_StorageBuffer_v3float = OpTypePointer StorageBuffer %v3float
         %26 = OpConstantNull %uint
      %int_1 = OpConstant %int 1
      %int_2 = OpConstant %int 2
     %uint_2 = OpConstant %uint 2
         %37 = OpTypeFunction %void %_arr_mat3v3float_uint_4
%_ptr_Function_uint = OpTypePointer Function %uint
       %bool = OpTypeBool
%_ptr_Function__arr_mat3v3float_uint_4 = OpTypePointer Function %_arr_mat3v3float_uint_4
         %55 = OpConstantNull %_arr_mat3v3float_uint_4
%_ptr_Function_mat3v3float = OpTypePointer Function %mat3v3float
         %65 = OpTypeFunction %void
%_ptr_Uniform__arr_mat3v3float_uint_4 = OpTypePointer Uniform %_arr_mat3v3float_uint_4
         %73 = OpConstantComposite %_arr_uint_uint_1 %uint_1
%_ptr_Uniform_mat3v3float = OpTypePointer Uniform %mat3v3float
%_ptr_Uniform_v3float = OpTypePointer Uniform %v3float
%_ptr_StorageBuffer_float = OpTypePointer StorageBuffer %float
%_ptr_Uniform_float = OpTypePointer Uniform %float
%assign_and_preserve_padding_1_s_X = OpFunction %void None %12
       %dest = OpFunctionParameter %_arr_uint_uint_1
      %value = OpFunctionParameter %mat3v3float
         %19 = OpLabel
         %23 = OpCompositeExtract %uint %dest 0
         %25 = OpAccessChain %_ptr_StorageBuffer_v3float %s %uint_0 %23 %22
         %27 = OpCompositeExtract %v3float %value 0
               OpStore %25 %27
         %28 = OpCompositeExtract %uint %dest 0
         %30 = OpAccessChain %_ptr_StorageBuffer_v3float %s %uint_0 %28 %int_1
         %31 = OpCompositeExtract %v3float %value 1
               OpStore %30 %31
         %32 = OpCompositeExtract %uint %dest 0
         %34 = OpAccessChain %_ptr_StorageBuffer_v3float %s %uint_0 %32 %int_2
         %36 = OpCompositeExtract %v3float %value 2
               OpStore %34 %36
               OpReturn
               OpFunctionEnd
%assign_and_preserve_padding_s = OpFunction %void None %37
    %value_0 = OpFunctionParameter %_arr_mat3v3float_uint_4
         %40 = OpLabel
          %i = OpVariable %_ptr_Function_uint Function %26
%var_for_index = OpVariable %_ptr_Function__arr_mat3v3float_uint_4 Function %55
               OpStore %i %26
               OpBranch %43
         %43 = OpLabel
               OpLoopMerge %44 %45 None
               OpBranch %46
         %46 = OpLabel
         %48 = OpLoad %uint %i
         %49 = OpULessThan %bool %48 %uint_4
         %47 = OpLogicalNot %bool %49
               OpSelectionMerge %51 None
               OpBranchConditional %47 %52 %51
         %52 = OpLabel
               OpBranch %44
         %51 = OpLabel
               OpStore %var_for_index %value_0
         %57 = OpLoad %uint %i
         %58 = OpCompositeConstruct %_arr_uint_uint_1 %57
         %59 = OpLoad %uint %i
         %61 = OpAccessChain %_ptr_Function_mat3v3float %var_for_index %59
         %62 = OpLoad %mat3v3float %61
         %56 = OpFunctionCall %void %assign_and_preserve_padding_1_s_X %58 %62
               OpBranch %45
         %45 = OpLabel
         %63 = OpLoad %uint %i
         %64 = OpIAdd %uint %63 %uint_1
               OpStore %i %64
               OpBranch %43
         %44 = OpLabel
               OpReturn
               OpFunctionEnd
          %f = OpFunction %void None %65
         %67 = OpLabel
         %70 = OpAccessChain %_ptr_Uniform__arr_mat3v3float_uint_4 %u %uint_0
         %71 = OpLoad %_arr_mat3v3float_uint_4 %70
         %68 = OpFunctionCall %void %assign_and_preserve_padding_s %71
         %75 = OpAccessChain %_ptr_Uniform_mat3v3float %u %uint_0 %int_2
         %76 = OpLoad %mat3v3float %75
         %72 = OpFunctionCall %void %assign_and_preserve_padding_1_s_X %73 %76
         %77 = OpAccessChain %_ptr_StorageBuffer_v3float %s %uint_0 %int_1 %22
         %79 = OpAccessChain %_ptr_Uniform_v3float %u %uint_0 %22 %int_1
         %80 = OpLoad %v3float %79
         %81 = OpVectorShuffle %v3float %80 %80 2 0 1
               OpStore %77 %81
         %83 = OpAccessChain %_ptr_StorageBuffer_float %s %uint_0 %int_1 %22 %uint_0
         %85 = OpAccessChain %_ptr_Uniform_float %u %uint_0 %22 %int_1 %uint_0
         %86 = OpLoad %float %85
               OpStore %83 %86
               OpReturn
               OpFunctionEnd
