spv.16bitstorage-int.frag
// Module Version 10000
// Generated by (magic number): 80007
// Id's are bound by 172

                              Capability Shader
                              Capability StorageUniformBufferBlock16
                              Capability StorageUniform16
                              Extension  "SPV_KHR_16bit_storage"
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint Fragment 4  "main"
                              ExecutionMode 4 OriginUpperLeft
                              Source GLSL 450
                              SourceExtension  "GL_EXT_shader_16bit_storage"
                              Name 4  "main"
                              Name 12  "S"
                              MemberName 12(S) 0  "x"
                              MemberName 12(S) 1  "y"
                              MemberName 12(S) 2  "z"
                              Name 17  "B2"
                              MemberName 17(B2) 0  "o"
                              MemberName 17(B2) 1  "p"
                              MemberName 17(B2) 2  "q"
                              MemberName 17(B2) 3  "r"
                              MemberName 17(B2) 4  "u"
                              MemberName 17(B2) 5  "v"
                              MemberName 17(B2) 6  "x"
                              MemberName 17(B2) 7  "w"
                              Name 19  "b2"
                              Name 23  "S"
                              MemberName 23(S) 0  "x"
                              MemberName 23(S) 1  "y"
                              MemberName 23(S) 2  "z"
                              Name 25  "B1"
                              MemberName 25(B1) 0  "a"
                              MemberName 25(B1) 1  "b"
                              MemberName 25(B1) 2  "c"
                              MemberName 25(B1) 3  "d"
                              MemberName 25(B1) 4  "g"
                              MemberName 25(B1) 5  "h"
                              MemberName 25(B1) 6  "j"
                              Name 27  "b1"
                              Name 45  "S"
                              MemberName 45(S) 0  "x"
                              MemberName 45(S) 1  "y"
                              MemberName 45(S) 2  "z"
                              Name 49  "B5"
                              MemberName 49(B5) 0  "o"
                              MemberName 49(B5) 1  "p"
                              MemberName 49(B5) 2  "q"
                              MemberName 49(B5) 3  "r"
                              MemberName 49(B5) 4  "u"
                              MemberName 49(B5) 5  "v"
                              MemberName 49(B5) 6  "x"
                              MemberName 49(B5) 7  "w"
                              Name 51  "b5"
                              Name 69  "x0"
                              Name 75  "x1"
                              Name 88  "S2"
                              MemberName 88(S2) 0  "x"
                              MemberName 88(S2) 1  "y"
                              MemberName 88(S2) 2  "z"
                              Name 89  "S3"
                              MemberName 89(S3) 0  "x"
                              Name 90  "B4"
                              MemberName 90(B4) 0  "x"
                              MemberName 90(B4) 1  "y"
                              Name 92  "b4"
                              Name 93  "S2"
                              MemberName 93(S2) 0  "x"
                              MemberName 93(S2) 1  "y"
                              MemberName 93(S2) 2  "z"
                              Name 94  "B3"
                              MemberName 94(B3) 0  "x"
                              Name 96  "b3"
                              Name 113  "v3"
                              Name 135  "u3"
                              Decorate 11 ArrayStride 2
                              MemberDecorate 12(S) 0 Offset 0
                              MemberDecorate 12(S) 1 Offset 4
                              MemberDecorate 12(S) 2 Offset 8
                              Decorate 13 ArrayStride 16
                              Decorate 15 ArrayStride 4
                              Decorate 16 ArrayStride 2
                              MemberDecorate 17(B2) 0 Offset 0
                              MemberDecorate 17(B2) 1 Offset 4
                              MemberDecorate 17(B2) 2 Offset 8
                              MemberDecorate 17(B2) 3 Offset 14
                              MemberDecorate 17(B2) 4 Offset 24
                              MemberDecorate 17(B2) 5 Offset 40
                              MemberDecorate 17(B2) 6 Offset 72
                              MemberDecorate 17(B2) 7 Offset 472
                              Decorate 17(B2) BufferBlock
                              Decorate 19(b2) DescriptorSet 0
                              Decorate 19(b2) Binding 0
                              Decorate 22 ArrayStride 16
                              MemberDecorate 23(S) 0 Offset 0
                              MemberDecorate 23(S) 1 Offset 4
                              MemberDecorate 23(S) 2 Offset 8
                              Decorate 24 ArrayStride 16
                              MemberDecorate 25(B1) 0 Offset 0
                              MemberDecorate 25(B1) 1 Offset 4
                              MemberDecorate 25(B1) 2 Offset 8
                              MemberDecorate 25(B1) 3 Offset 16
                              MemberDecorate 25(B1) 4 Offset 48
                              MemberDecorate 25(B1) 5 Offset 64
                              MemberDecorate 25(B1) 6 Offset 96
                              Decorate 25(B1) Block
                              Decorate 27(b1) DescriptorSet 0
                              Decorate 27(b1) Binding 0
                              Decorate 44 ArrayStride 16
                              MemberDecorate 45(S) 0 Offset 0
                              MemberDecorate 45(S) 1 Offset 4
                              MemberDecorate 45(S) 2 Offset 8
                              Decorate 46 ArrayStride 16
                              Decorate 47 ArrayStride 16
                              Decorate 48 ArrayStride 16
                              MemberDecorate 49(B5) 0 Offset 0
                              MemberDecorate 49(B5) 1 Offset 4
                              MemberDecorate 49(B5) 2 Offset 8
                              MemberDecorate 49(B5) 3 Offset 16
                              MemberDecorate 49(B5) 4 Offset 48
                              MemberDecorate 49(B5) 5 Offset 64
                              MemberDecorate 49(B5) 6 Offset 96
                              MemberDecorate 49(B5) 7 Offset 1696
                              Decorate 49(B5) Block
                              Decorate 51(b5) DescriptorSet 0
                              Decorate 51(b5) Binding 0
                              MemberDecorate 88(S2) 0 ColMajor
                              MemberDecorate 88(S2) 0 Offset 0
                              MemberDecorate 88(S2) 0 MatrixStride 16
                              MemberDecorate 88(S2) 1 Offset 64
                              MemberDecorate 88(S2) 2 Offset 68
                              MemberDecorate 89(S3) 0 Offset 0
                              MemberDecorate 90(B4) 0 Offset 0
                              MemberDecorate 90(B4) 1 Offset 80
                              Decorate 90(B4) BufferBlock
                              Decorate 92(b4) DescriptorSet 0
                              Decorate 92(b4) Binding 0
                              MemberDecorate 93(S2) 0 RowMajor
                              MemberDecorate 93(S2) 0 Offset 0
                              MemberDecorate 93(S2) 0 MatrixStride 16
                              MemberDecorate 93(S2) 1 Offset 64
                              MemberDecorate 93(S2) 2 Offset 68
                              MemberDecorate 94(B3) 0 Offset 0
                              Decorate 94(B3) BufferBlock
                              Decorate 96(b3) DescriptorSet 0
                              Decorate 96(b3) Binding 0
               2:             TypeVoid
               3:             TypeFunction 2
               6:             TypeInt 16 1
               7:             TypeVector 6(int16_t) 2
               8:             TypeVector 6(int16_t) 3
               9:             TypeInt 32 0
              10:      9(int) Constant 2
              11:             TypeArray 6(int16_t) 10
           12(S):             TypeStruct 6(int16_t) 7(i16vec2) 8(i16vec3)
              13:             TypeArray 12(S) 10
              14:      9(int) Constant 100
              15:             TypeArray 7(i16vec2) 14
              16:             TypeRuntimeArray 6(int16_t)
          17(B2):             TypeStruct 6(int16_t) 7(i16vec2) 8(i16vec3) 11 12(S) 13 15 16
              18:             TypePointer Uniform 17(B2)
          19(b2):     18(ptr) Variable Uniform
              20:             TypeInt 32 1
              21:     20(int) Constant 0
              22:             TypeArray 6(int16_t) 10
           23(S):             TypeStruct 6(int16_t) 7(i16vec2) 8(i16vec3)
              24:             TypeArray 23(S) 10
          25(B1):             TypeStruct 6(int16_t) 7(i16vec2) 8(i16vec3) 22 23(S) 24 20(int)
              26:             TypePointer Uniform 25(B1)
          27(b1):     26(ptr) Variable Uniform
              28:             TypePointer Uniform 6(int16_t)
              32:     20(int) Constant 1
              33:     20(int) Constant 2
              34:             TypePointer Uniform 8(i16vec3)
              37:             TypeVector 20(int) 3
              39:             TypeVector 20(int) 2
              42:             TypePointer Uniform 7(i16vec2)
              44:             TypeArray 6(int16_t) 10
           45(S):             TypeStruct 6(int16_t) 7(i16vec2) 8(i16vec3)
              46:             TypeArray 45(S) 10
              47:             TypeArray 7(i16vec2) 14
              48:             TypeArray 6(int16_t) 14
          49(B5):             TypeStruct 6(int16_t) 7(i16vec2) 8(i16vec3) 44 45(S) 46 47 48
              50:             TypePointer Uniform 49(B5)
          51(b5):     50(ptr) Variable Uniform
              58:     20(int) Constant 3
              68:             TypePointer Function 20(int)
              73:             TypeVector 20(int) 4
              74:             TypePointer Function 73(ivec4)
              85:             TypeFloat 32
              86:             TypeVector 85(float) 4
              87:             TypeMatrix 86(fvec4) 4
          88(S2):             TypeStruct 87 6(int16_t) 20(int)
          89(S3):             TypeStruct 88(S2)
          90(B4):             TypeStruct 88(S2) 89(S3)
              91:             TypePointer Uniform 90(B4)
          92(b4):     91(ptr) Variable Uniform
          93(S2):             TypeStruct 87 6(int16_t) 20(int)
          94(B3):             TypeStruct 93(S2)
              95:             TypePointer Uniform 94(B3)
          96(b3):     95(ptr) Variable Uniform
              97:             TypePointer Uniform 87
             104:      9(int) Constant 0
             108:     20(int) Constant 5
             112:             TypePointer Function 37(ivec3)
             114:     20(int) Constant 7
             115:     20(int) Constant 6
             116:             TypePointer Uniform 20(int)
             166:  6(int16_t) Constant 1
             167:  6(int16_t) Constant 2
             168:  7(i16vec2) ConstantComposite 166 167
             170:  6(int16_t) Constant 3
         4(main):           2 Function None 3
               5:             Label
          69(x0):     68(ptr) Variable Function
          75(x1):     74(ptr) Variable Function
         113(v3):    112(ptr) Variable Function
         135(u3):    112(ptr) Variable Function
              29:     28(ptr) AccessChain 27(b1) 21
              30:  6(int16_t) Load 29
              31:     28(ptr) AccessChain 19(b2) 21
                              Store 31 30
              35:     34(ptr) AccessChain 19(b2) 33
              36:  8(i16vec3) Load 35
              38:   37(ivec3) SConvert 36
              40:   39(ivec2) VectorShuffle 38 38 0 1
              41:  7(i16vec2) SConvert 40
              43:     42(ptr) AccessChain 19(b2) 32
                              Store 43 41
              52:     34(ptr) AccessChain 51(b5) 33
              53:  8(i16vec3) Load 52
              54:   37(ivec3) SConvert 53
              55:   39(ivec2) VectorShuffle 54 54 0 1
              56:  7(i16vec2) SConvert 55
              57:     42(ptr) AccessChain 19(b2) 32
                              Store 57 56
              59:     28(ptr) AccessChain 19(b2) 58 21
              60:  6(int16_t) Load 59
              61:     28(ptr) AccessChain 19(b2) 58 21
                              Store 61 60
              62:     28(ptr) AccessChain 51(b5) 58 32
              63:  6(int16_t) Load 62
              64:     28(ptr) AccessChain 19(b2) 58 32
                              Store 64 63
              65:     42(ptr) AccessChain 19(b2) 32
              66:  7(i16vec2) Load 65
              67:     42(ptr) AccessChain 19(b2) 32
                              Store 67 66
              70:     28(ptr) AccessChain 27(b1) 21
              71:  6(int16_t) Load 70
              72:     20(int) SConvert 71
                              Store 69(x0) 72
              76:     28(ptr) AccessChain 27(b1) 21
              77:  6(int16_t) Load 76
              78:     20(int) SConvert 77
              79:     42(ptr) AccessChain 19(b2) 32
              80:  7(i16vec2) Load 79
              81:   39(ivec2) SConvert 80
              82:     20(int) CompositeExtract 81 0
              83:     20(int) CompositeExtract 81 1
              84:   73(ivec4) CompositeConstruct 78 82 83 32
                              Store 75(x1) 84
              98:     97(ptr) AccessChain 96(b3) 21 21
              99:          87 Load 98
             100:     97(ptr) AccessChain 92(b4) 21 21
                              Store 100 99
             101:     42(ptr) AccessChain 19(b2) 32
             102:  7(i16vec2) Load 101
             103:   39(ivec2) SConvert 102
             105:     20(int) CompositeExtract 103 0
             106:  6(int16_t) SConvert 105
             107:     28(ptr) AccessChain 19(b2) 21
                              Store 107 106
             109:     42(ptr) AccessChain 19(b2) 108 32 32
             110:  7(i16vec2) Load 109
             111:     42(ptr) AccessChain 19(b2) 32
                              Store 111 110
             117:    116(ptr) AccessChain 27(b1) 115
             118:     20(int) Load 117
             119:     28(ptr) AccessChain 19(b2) 114 118
             120:  6(int16_t) Load 119
             121:     20(int) SConvert 120
             122:    116(ptr) AccessChain 27(b1) 115
             123:     20(int) Load 122
             124:     20(int) IAdd 123 32
             125:     28(ptr) AccessChain 19(b2) 114 124
             126:  6(int16_t) Load 125
             127:     20(int) SConvert 126
             128:    116(ptr) AccessChain 27(b1) 115
             129:     20(int) Load 128
             130:     20(int) IAdd 129 33
             131:     28(ptr) AccessChain 19(b2) 114 130
             132:  6(int16_t) Load 131
             133:     20(int) SConvert 132
             134:   37(ivec3) CompositeConstruct 121 127 133
                              Store 113(v3) 134
             136:    116(ptr) AccessChain 27(b1) 115
             137:     20(int) Load 136
             138:     28(ptr) AccessChain 51(b5) 114 137
             139:  6(int16_t) Load 138
             140:     20(int) SConvert 139
             141:    116(ptr) AccessChain 27(b1) 115
             142:     20(int) Load 141
             143:     20(int) IAdd 142 32
             144:     28(ptr) AccessChain 51(b5) 114 143
             145:  6(int16_t) Load 144
             146:     20(int) SConvert 145
             147:    116(ptr) AccessChain 27(b1) 115
             148:     20(int) Load 147
             149:     20(int) IAdd 148 33
             150:     28(ptr) AccessChain 51(b5) 114 149
             151:  6(int16_t) Load 150
             152:     20(int) SConvert 151
             153:   37(ivec3) CompositeConstruct 140 146 152
                              Store 135(u3) 153
             154:     42(ptr) AccessChain 19(b2) 115 21
             155:  7(i16vec2) Load 154
             156:     42(ptr) AccessChain 19(b2) 115 21
                              Store 156 155
             157:     42(ptr) AccessChain 51(b5) 115 32
             158:  7(i16vec2) Load 157
             159:     42(ptr) AccessChain 19(b2) 115 32
                              Store 159 158
             160:     28(ptr) AccessChain 27(b1) 21
             161:  6(int16_t) Load 160
             162:     28(ptr) AccessChain 19(b2) 32 104
                              Store 162 161
             163:     28(ptr) AccessChain 19(b2) 32 104
             164:  6(int16_t) Load 163
             165:     28(ptr) AccessChain 19(b2) 21
                              Store 165 164
             169:     42(ptr) AccessChain 19(b2) 32
                              Store 169 168
             171:     28(ptr) AccessChain 19(b2) 21
                              Store 171 170
                              Return
                              FunctionEnd
