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

                              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 1
                              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 2
                              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 4
                              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 3
               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:   39(ivec2) ConstantComposite 32 33
         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
             167:  7(i16vec2) SConvert 166
             168:     42(ptr) AccessChain 19(b2) 32
                              Store 168 167
             169:  6(int16_t) SConvert 58
             170:     28(ptr) AccessChain 19(b2) 21
                              Store 170 169
                              Return
                              FunctionEnd
