spv.AofA.frag
WARNING: 0:6: '[][]' : Generating SPIR-V array-of-arrays, but Vulkan only supports single array level for this resource 

// Module Version 10000
// Generated by (magic number): 80006
// Id's are bound by 104

                              Capability Shader
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint Fragment 4  "main" 39 44 68 70 72 78
                              ExecutionMode 4 OriginUpperLeft
                              Source GLSL 430
                              Name 4  "main"
                              Name 17  "foo(f1[5][7];"
                              Name 16  "a"
                              Name 20  "r"
                              Name 39  "outfloat"
                              Name 42  "g4"
                              Name 44  "g5"
                              Name 45  "param"
                              Name 48  "u"
                              Name 52  "param"
                              Name 66  "many"
                              Name 68  "i"
                              Name 70  "j"
                              Name 72  "k"
                              Name 78  "infloat"
                              Name 94  "uAofA"
                              MemberName 94(uAofA) 0  "f"
                              Name 98  "nameAofA"
                              Decorate 68(i) Flat
                              Decorate 70(j) Flat
                              Decorate 72(k) Flat
                              Decorate 92 ArrayStride 16
                              Decorate 93 ArrayStride 64
                              MemberDecorate 94(uAofA) 0 Offset 0
                              Decorate 94(uAofA) Block
                              Decorate 98(nameAofA) DescriptorSet 0
               2:             TypeVoid
               3:             TypeFunction 2
               6:             TypeFloat 32
               7:             TypeInt 32 0
               8:      7(int) Constant 7
               9:             TypeArray 6(float) 8
              10:      7(int) Constant 5
              11:             TypeArray 9 10
              12:             TypePointer Function 11
              13:      7(int) Constant 4
              14:             TypeArray 9 13
              15:             TypeFunction 14 12(ptr)
              19:             TypePointer Function 9
              21:             TypeInt 32 1
              22:     21(int) Constant 2
              25:     21(int) Constant 0
              28:     21(int) Constant 1
              32:     21(int) Constant 3
              38:             TypePointer Output 6(float)
    39(outfloat):     38(ptr) Variable Output
              40:    6(float) Constant 0
              41:             TypePointer Private 14
          42(g4):     41(ptr) Variable Private
              43:             TypePointer Input 11
          44(g5):     43(ptr) Variable Input
              49:    6(float) Constant 1077936128
              50:             TypePointer Function 6(float)
              55:      7(int) Constant 6
              56:             TypeArray 6(float) 55
              57:             TypeArray 56 10
              58:             TypeArray 57 13
              59:      7(int) Constant 3
              60:             TypeArray 58 59
              61:      7(int) Constant 2
              62:             TypeArray 60 61
              63:      7(int) Constant 1
              64:             TypeArray 62 63
              65:             TypePointer Private 64
        66(many):     65(ptr) Variable Private
              67:             TypePointer Input 21(int)
           68(i):     67(ptr) Variable Input
           70(j):     67(ptr) Variable Input
           72(k):     67(ptr) Variable Input
              77:             TypePointer Input 6(float)
     78(infloat):     77(ptr) Variable Input
              80:             TypePointer Private 6(float)
              92:             TypeArray 6(float) 13
              93:             TypeArray 92 61
       94(uAofA):             TypeStruct 93
              95:             TypeArray 94(uAofA) 10
              96:             TypeArray 95 59
              97:             TypePointer Uniform 96
    98(nameAofA):     97(ptr) Variable Uniform
              99:             TypePointer Uniform 6(float)
         4(main):           2 Function None 3
               5:             Label
       45(param):     12(ptr) Variable Function
           48(u):     12(ptr) Variable Function
       52(param):     12(ptr) Variable Function
                              Store 39(outfloat) 40
              46:          11 Load 44(g5)
                              Store 45(param) 46
              47:          14 FunctionCall 17(foo(f1[5][7];) 45(param)
                              Store 42(g4) 47
              51:     50(ptr) AccessChain 48(u) 22 22
                              Store 51 49
              53:          11 Load 48(u)
                              Store 52(param) 53
              54:          14 FunctionCall 17(foo(f1[5][7];) 52(param)
              69:     21(int) Load 68(i)
              71:     21(int) Load 70(j)
              73:     21(int) Load 72(k)
              74:     21(int) Load 68(i)
              75:     21(int) Load 70(j)
              76:     21(int) Load 72(k)
              79:    6(float) Load 78(infloat)
              81:     80(ptr) AccessChain 66(many) 69 71 73 74 75 76
                              Store 81 79
              82:     21(int) Load 70(j)
              83:     21(int) Load 70(j)
              84:     21(int) Load 70(j)
              85:     21(int) Load 70(j)
              86:     21(int) Load 70(j)
              87:     21(int) Load 70(j)
              88:     80(ptr) AccessChain 66(many) 82 83 84 85 86 87
              89:    6(float) Load 88
              90:    6(float) Load 39(outfloat)
              91:    6(float) FAdd 90 89
                              Store 39(outfloat) 91
             100:     99(ptr) AccessChain 98(nameAofA) 28 22 25 25 32
             101:    6(float) Load 100
             102:    6(float) Load 39(outfloat)
             103:    6(float) FAdd 102 101
                              Store 39(outfloat) 103
                              Return
                              FunctionEnd
17(foo(f1[5][7];):          14 Function None 15
           16(a):     12(ptr) FunctionParameter
              18:             Label
           20(r):     19(ptr) Variable Function
              23:     19(ptr) AccessChain 16(a) 22
              24:           9 Load 23
                              Store 20(r) 24
              26:     19(ptr) AccessChain 16(a) 25
              27:           9 Load 26
              29:     19(ptr) AccessChain 16(a) 28
              30:           9 Load 29
              31:           9 Load 20(r)
              33:     19(ptr) AccessChain 16(a) 32
              34:           9 Load 33
              35:          14 CompositeConstruct 27 30 31 34
                              ReturnValue 35
                              FunctionEnd
