; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 1
; Bound: 117
; Schema: 0
               OpCapability Shader
               OpCapability VulkanMemoryModel
               OpCapability VulkanMemoryModelDeviceScope
               OpCapability CooperativeMatrixKHR
               OpExtension "SPV_KHR_vulkan_memory_model"
               OpExtension "SPV_KHR_cooperative_matrix"
               OpMemoryModel Logical Vulkan
               OpEntryPoint GLCompute %main "main"
               OpExecutionMode %main LocalSize 64 1 1
               OpMemberName %buffer_block_tint_explicit_layout 0 "inner"
               OpName %buffer_block_tint_explicit_layout "buffer_block_tint_explicit_layout"
               OpName %foo "foo"
               OpName %m "m"
               OpName %m_array "m_array"
               OpName %m_nested_array "m_nested_array"
               OpMemberName %S 0 "l"
               OpMemberName %S 1 "r"
               OpName %S "S"
               OpName %m_struct "m_struct"
               OpMemberName %S_Nested 0 "s"
               OpName %S_Nested "S_Nested"
               OpName %m_nested_struct "m_nested_struct"
               OpName %main "main"
               OpName %m_0 "m"
               OpName %m_array_0 "m_array"
               OpName %m_nested_array_0 "m_nested_array"
               OpName %m_struct_0 "m_struct"
               OpName %m_nested_struct_0 "m_nested_struct"
               OpDecorate %_runtimearr_float ArrayStride 4
               OpMemberDecorate %buffer_block_tint_explicit_layout 0 Offset 0
               OpDecorate %buffer_block_tint_explicit_layout Block
               OpDecorate %1 DescriptorSet 0
               OpDecorate %1 Binding 0
      %float = OpTypeFloat 32
%_runtimearr_float = OpTypeRuntimeArray %float
%buffer_block_tint_explicit_layout = OpTypeStruct %_runtimearr_float
%_ptr_StorageBuffer_buffer_block_tint_explicit_layout = OpTypePointer StorageBuffer %buffer_block_tint_explicit_layout
          %1 = OpVariable %_ptr_StorageBuffer_buffer_block_tint_explicit_layout StorageBuffer
       %void = OpTypeVoid
       %uint = OpTypeInt 32 0
     %uint_3 = OpConstant %uint 3
     %uint_8 = OpConstant %uint 8
     %uint_0 = OpConstant %uint 0
          %8 = OpTypeCooperativeMatrixKHR %float %uint_3 %uint_8 %uint_8 %uint_0
     %uint_4 = OpConstant %uint 4
%_arr_8_uint_4 = OpTypeArray %8 %uint_4
%_arr__arr_8_uint_4_uint_4 = OpTypeArray %_arr_8_uint_4 %uint_4
     %uint_1 = OpConstant %uint 1
         %20 = OpTypeCooperativeMatrixKHR %float %uint_3 %uint_8 %uint_8 %uint_1
          %S = OpTypeStruct %8 %20
   %S_Nested = OpTypeStruct %S
         %25 = OpTypeFunction %void %8 %_arr_8_uint_4 %_arr__arr_8_uint_4_uint_4 %S %S_Nested
%_ptr_StorageBuffer__runtimearr_float = OpTypePointer StorageBuffer %_runtimearr_float
    %uint_64 = OpConstant %uint 64
     %uint_7 = OpConstant %uint 7
       %bool = OpTypeBool
%_ptr_StorageBuffer_float = OpTypePointer StorageBuffer %float
         %92 = OpTypeFunction %void
%_ptr_Function_8 = OpTypePointer Function %8
    %float_0 = OpConstant %float 0
         %96 = OpConstantComposite %8 %float_0
%_ptr_Function__arr_8_uint_4 = OpTypePointer Function %_arr_8_uint_4
        %100 = OpConstantComposite %_arr_8_uint_4 %96 %96 %96 %96
%_ptr_Function__arr__arr_8_uint_4_uint_4 = OpTypePointer Function %_arr__arr_8_uint_4_uint_4
        %103 = OpConstantComposite %_arr__arr_8_uint_4_uint_4 %100 %100 %100 %100
%_ptr_Function_S = OpTypePointer Function %S
        %107 = OpConstantComposite %20 %float_0
        %106 = OpConstantComposite %S %96 %107
%_ptr_Function_S_Nested = OpTypePointer Function %S_Nested
        %110 = OpConstantComposite %S_Nested %106
        %foo = OpFunction %void None %25
          %m = OpFunctionParameter %8
    %m_array = OpFunctionParameter %_arr_8_uint_4
%m_nested_array = OpFunctionParameter %_arr__arr_8_uint_4_uint_4
   %m_struct = OpFunctionParameter %S
%m_nested_struct = OpFunctionParameter %S_Nested
         %26 = OpLabel
         %27 = OpAccessChain %_ptr_StorageBuffer__runtimearr_float %1 %uint_0
         %29 = OpArrayLength %uint %1 0
         %30 = OpIMul %uint %uint_64 %uint_7
         %33 = OpIAdd %uint %uint_0 %30
         %34 = OpIAdd %uint %33 %uint_8
         %35 = OpULessThanEqual %bool %34 %29
               OpSelectionMerge %37 None
               OpBranchConditional %35 %38 %37
         %38 = OpLabel
         %75 = OpAccessChain %_ptr_StorageBuffer__runtimearr_float %1 %uint_0
         %76 = OpAccessChain %_ptr_StorageBuffer_float %75 %uint_0
               OpCooperativeMatrixStoreKHR %76 %m %uint_0 %uint_64 NonPrivatePointer
               OpBranch %37
         %37 = OpLabel
         %39 = OpCompositeExtract %8 %m_array 0
         %40 = OpAccessChain %_ptr_StorageBuffer__runtimearr_float %1 %uint_0
         %41 = OpArrayLength %uint %1 0
         %42 = OpIMul %uint %uint_64 %uint_7
         %43 = OpIAdd %uint %uint_0 %42
         %44 = OpIAdd %uint %43 %uint_8
         %45 = OpULessThanEqual %bool %44 %41
               OpSelectionMerge %46 None
               OpBranchConditional %45 %47 %46
         %47 = OpLabel
         %79 = OpAccessChain %_ptr_StorageBuffer__runtimearr_float %1 %uint_0
         %80 = OpAccessChain %_ptr_StorageBuffer_float %79 %uint_0
               OpCooperativeMatrixStoreKHR %80 %39 %uint_0 %uint_64 NonPrivatePointer
               OpBranch %46
         %46 = OpLabel
         %48 = OpCompositeExtract %8 %m_nested_array 1 2
         %49 = OpAccessChain %_ptr_StorageBuffer__runtimearr_float %1 %uint_0
         %50 = OpArrayLength %uint %1 0
         %51 = OpIMul %uint %uint_64 %uint_7
         %52 = OpIAdd %uint %uint_0 %51
         %53 = OpIAdd %uint %52 %uint_8
         %54 = OpULessThanEqual %bool %53 %50
               OpSelectionMerge %55 None
               OpBranchConditional %54 %56 %55
         %56 = OpLabel
         %82 = OpAccessChain %_ptr_StorageBuffer__runtimearr_float %1 %uint_0
         %83 = OpAccessChain %_ptr_StorageBuffer_float %82 %uint_0
               OpCooperativeMatrixStoreKHR %83 %48 %uint_0 %uint_64 NonPrivatePointer
               OpBranch %55
         %55 = OpLabel
         %57 = OpCompositeExtract %8 %m_struct 0
         %58 = OpAccessChain %_ptr_StorageBuffer__runtimearr_float %1 %uint_0
         %59 = OpArrayLength %uint %1 0
         %60 = OpIMul %uint %uint_64 %uint_7
         %61 = OpIAdd %uint %uint_0 %60
         %62 = OpIAdd %uint %61 %uint_8
         %63 = OpULessThanEqual %bool %62 %59
               OpSelectionMerge %64 None
               OpBranchConditional %63 %65 %64
         %65 = OpLabel
         %85 = OpAccessChain %_ptr_StorageBuffer__runtimearr_float %1 %uint_0
         %86 = OpAccessChain %_ptr_StorageBuffer_float %85 %uint_0
               OpCooperativeMatrixStoreKHR %86 %57 %uint_0 %uint_64 NonPrivatePointer
               OpBranch %64
         %64 = OpLabel
         %66 = OpCompositeExtract %20 %m_nested_struct 0 1
         %67 = OpAccessChain %_ptr_StorageBuffer__runtimearr_float %1 %uint_0
         %68 = OpArrayLength %uint %1 0
         %69 = OpIMul %uint %uint_64 %uint_7
         %70 = OpIAdd %uint %uint_0 %69
         %71 = OpIAdd %uint %70 %uint_8
         %72 = OpULessThanEqual %bool %71 %68
               OpSelectionMerge %73 None
               OpBranchConditional %72 %74 %73
         %74 = OpLabel
         %88 = OpAccessChain %_ptr_StorageBuffer__runtimearr_float %1 %uint_0
         %89 = OpAccessChain %_ptr_StorageBuffer_float %88 %uint_0
               OpCooperativeMatrixStoreKHR %89 %66 %uint_0 %uint_64 NonPrivatePointer
               OpBranch %73
         %73 = OpLabel
               OpReturn
               OpFunctionEnd
       %main = OpFunction %void None %92
         %93 = OpLabel
        %m_0 = OpVariable %_ptr_Function_8 Function %96
  %m_array_0 = OpVariable %_ptr_Function__arr_8_uint_4 Function %100
%m_nested_array_0 = OpVariable %_ptr_Function__arr__arr_8_uint_4_uint_4 Function %103
 %m_struct_0 = OpVariable %_ptr_Function_S Function %106
%m_nested_struct_0 = OpVariable %_ptr_Function_S_Nested Function %110
        %111 = OpLoad %8 %m_0 None
        %112 = OpLoad %_arr_8_uint_4 %m_array_0 None
        %113 = OpLoad %_arr__arr_8_uint_4_uint_4 %m_nested_array_0 None
        %114 = OpLoad %S %m_struct_0 None
        %115 = OpLoad %S_Nested %m_nested_struct_0 None
        %116 = OpFunctionCall %void %foo %111 %112 %113 %114 %115
               OpReturn
               OpFunctionEnd
