remap.hlsl.sample.basic.strip.frag
WARNING: 0:4: 'immediate sampler state' : unimplemented 

// Module Version 10000
// Generated by (magic number): 8000a
// Id's are bound by 198

                              Capability Shader
                              Capability Sampled1D
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint Fragment 4  "main" 188 192
                              ExecutionMode 4 OriginUpperLeft
                              ExecutionMode 4 DepthReplacing
                              Decorate 45 DescriptorSet 0
                              Decorate 45 Binding 0
                              Decorate 49 DescriptorSet 0
                              Decorate 49 Binding 0
                              Decorate 60 DescriptorSet 0
                              Decorate 60 Binding 2
                              Decorate 73 DescriptorSet 0
                              Decorate 73 Binding 3
                              Decorate 83 DescriptorSet 0
                              Decorate 83 Binding 4
                              Decorate 94 DescriptorSet 0
                              Decorate 94 Binding 5
                              Decorate 105 DescriptorSet 0
                              Decorate 105 Binding 6
                              Decorate 117 DescriptorSet 0
                              Decorate 117 Binding 7
                              Decorate 128 DescriptorSet 0
                              Decorate 128 Binding 8
                              Decorate 138 DescriptorSet 0
                              Decorate 138 Binding 9
                              Decorate 151 DescriptorSet 0
                              Decorate 151 Binding 10
                              Decorate 160 DescriptorSet 0
                              Decorate 160 Binding 11
                              Decorate 169 DescriptorSet 0
                              Decorate 169 Binding 12
                              Decorate 188 Location 0
                              Decorate 192 BuiltIn FragDepth
                              Decorate 195 DescriptorSet 0
                              Decorate 195 Binding 0
                              Decorate 196 DescriptorSet 0
                              Decorate 196 Binding 0
                              Decorate 197 DescriptorSet 0
                              Decorate 197 Binding 1
               2:             TypeVoid
               3:             TypeFunction 2
               6:             TypeFloat 32
               7:             TypeVector 6(float) 4
               8:             TypeStruct 7(fvec4) 6(float)
               9:             TypeFunction 8(struct)
              12:             TypeInt 32 1
              13:             TypeStruct 12(int) 12(int) 12(int) 12(int) 12(int) 12(int) 12(int) 12(int) 12(int) 12(int) 12(int) 12(int)
              14:             TypePointer Function 13(struct)
              16:     12(int) Constant 1
              17:             TypePointer Function 12(int)
              19:     12(int) Constant 2
              21:     12(int) Constant 3
              23:     12(int) Constant 4
              25:     12(int) Constant 5
              27:     12(int) Constant 6
              29:     12(int) Constant 0
              31:     12(int) Constant 7
              33:     12(int) Constant 8
              35:     12(int) Constant 9
              37:     12(int) Constant 10
              39:     12(int) Constant 11
              41:             TypePointer Function 7(fvec4)
              43:             TypeImage 6(float) 1D sampled format:Unknown
              44:             TypePointer UniformConstant 43
              45:     44(ptr) Variable UniformConstant
              47:             TypeSampler
              48:             TypePointer UniformConstant 47
              49:     48(ptr) Variable UniformConstant
              51:             TypeSampledImage 43
              53:    6(float) Constant 1036831949
              55:             TypeVector 12(int) 4
              56:             TypePointer Function 55(ivec4)
              58:             TypeImage 12(int) 1D sampled format:Unknown
              59:             TypePointer UniformConstant 58
              60:     59(ptr) Variable UniformConstant
              63:             TypeSampledImage 58
              65:    6(float) Constant 1045220557
              67:             TypeInt 32 0
              68:             TypeVector 67(int) 4
              69:             TypePointer Function 68(ivec4)
              71:             TypeImage 67(int) 1D sampled format:Unknown
              72:             TypePointer UniformConstant 71
              73:     72(ptr) Variable UniformConstant
              76:             TypeSampledImage 71
              78:    6(float) Constant 1050253722
              81:             TypeImage 6(float) 2D sampled format:Unknown
              82:             TypePointer UniformConstant 81
              83:     82(ptr) Variable UniformConstant
              86:             TypeSampledImage 81
              88:             TypeVector 6(float) 2
              89:   88(fvec2) ConstantComposite 53 65
              92:             TypeImage 12(int) 2D sampled format:Unknown
              93:             TypePointer UniformConstant 92
              94:     93(ptr) Variable UniformConstant
              97:             TypeSampledImage 92
              99:    6(float) Constant 1053609165
             100:   88(fvec2) ConstantComposite 78 99
             103:             TypeImage 67(int) 2D sampled format:Unknown
             104:             TypePointer UniformConstant 103
             105:    104(ptr) Variable UniformConstant
             108:             TypeSampledImage 103
             110:    6(float) Constant 1056964608
             111:    6(float) Constant 1058642330
             112:   88(fvec2) ConstantComposite 110 111
             115:             TypeImage 6(float) 3D sampled format:Unknown
             116:             TypePointer UniformConstant 115
             117:    116(ptr) Variable UniformConstant
             120:             TypeSampledImage 115
             122:             TypeVector 6(float) 3
             123:  122(fvec3) ConstantComposite 53 65 78
             126:             TypeImage 12(int) 3D sampled format:Unknown
             127:             TypePointer UniformConstant 126
             128:    127(ptr) Variable UniformConstant
             131:             TypeSampledImage 126
             133:  122(fvec3) ConstantComposite 99 110 111
             136:             TypeImage 67(int) 3D sampled format:Unknown
             137:             TypePointer UniformConstant 136
             138:    137(ptr) Variable UniformConstant
             141:             TypeSampledImage 136
             143:    6(float) Constant 1060320051
             144:    6(float) Constant 1061997773
             145:    6(float) Constant 1063675494
             146:  122(fvec3) ConstantComposite 143 144 145
             149:             TypeImage 6(float) Cube sampled format:Unknown
             150:             TypePointer UniformConstant 149
             151:    150(ptr) Variable UniformConstant
             154:             TypeSampledImage 149
             158:             TypeImage 12(int) Cube sampled format:Unknown
             159:             TypePointer UniformConstant 158
             160:    159(ptr) Variable UniformConstant
             163:             TypeSampledImage 158
             167:             TypeImage 67(int) Cube sampled format:Unknown
             168:             TypePointer UniformConstant 167
             169:    168(ptr) Variable UniformConstant
             172:             TypeSampledImage 167
             175:             TypePointer Function 8(struct)
             177:    6(float) Constant 1065353216
             178:    7(fvec4) ConstantComposite 177 177 177 177
             180:             TypePointer Function 6(float)
             187:             TypePointer Output 7(fvec4)
             188:    187(ptr) Variable Output
             191:             TypePointer Output 6(float)
             192:    191(ptr) Variable Output
             195:     48(ptr) Variable UniformConstant
             196:     48(ptr) Variable UniformConstant
             197:     44(ptr) Variable UniformConstant
               4:           2 Function None 3
               5:             Label
             185:    175(ptr) Variable Function
             186:   8(struct) FunctionCall 10
                              Store 185 186
             189:     41(ptr) AccessChain 185 29
             190:    7(fvec4) Load 189
                              Store 188 190
             193:    180(ptr) AccessChain 185 16
             194:    6(float) Load 193
                              Store 192 194
                              Return
                              FunctionEnd
              10:   8(struct) Function None 9
              11:             Label
              15:     14(ptr) Variable Function
              42:     41(ptr) Variable Function
              57:     56(ptr) Variable Function
              70:     69(ptr) Variable Function
              80:     41(ptr) Variable Function
              91:     56(ptr) Variable Function
             102:     69(ptr) Variable Function
             114:     41(ptr) Variable Function
             125:     56(ptr) Variable Function
             135:     69(ptr) Variable Function
             148:     41(ptr) Variable Function
             157:     56(ptr) Variable Function
             166:     69(ptr) Variable Function
             176:    175(ptr) Variable Function
              18:     17(ptr) AccessChain 15 16
                              Store 18 16
              20:     17(ptr) AccessChain 15 19
                              Store 20 16
              22:     17(ptr) AccessChain 15 21
                              Store 22 16
              24:     17(ptr) AccessChain 15 23
                              Store 24 16
              26:     17(ptr) AccessChain 15 25
                              Store 26 16
              28:     17(ptr) AccessChain 15 27
                              Store 28 16
              30:     17(ptr) AccessChain 15 29
                              Store 30 16
              32:     17(ptr) AccessChain 15 31
                              Store 32 16
              34:     17(ptr) AccessChain 15 33
                              Store 34 16
              36:     17(ptr) AccessChain 15 35
                              Store 36 16
              38:     17(ptr) AccessChain 15 37
                              Store 38 16
              40:     17(ptr) AccessChain 15 39
                              Store 40 16
              46:          43 Load 45
              50:          47 Load 49
              52:          51 SampledImage 46 50
              54:    7(fvec4) ImageSampleImplicitLod 52 53
                              Store 42 54
              61:          58 Load 60
              62:          47 Load 49
              64:          63 SampledImage 61 62
              66:   55(ivec4) ImageSampleImplicitLod 64 65
                              Store 57 66
              74:          71 Load 73
              75:          47 Load 49
              77:          76 SampledImage 74 75
              79:   68(ivec4) ImageSampleImplicitLod 77 78
                              Store 70 79
              84:          81 Load 83
              85:          47 Load 49
              87:          86 SampledImage 84 85
              90:    7(fvec4) ImageSampleImplicitLod 87 89
                              Store 80 90
              95:          92 Load 94
              96:          47 Load 49
              98:          97 SampledImage 95 96
             101:   55(ivec4) ImageSampleImplicitLod 98 100
                              Store 91 101
             106:         103 Load 105
             107:          47 Load 49
             109:         108 SampledImage 106 107
             113:   68(ivec4) ImageSampleImplicitLod 109 112
                              Store 102 113
             118:         115 Load 117
             119:          47 Load 49
             121:         120 SampledImage 118 119
             124:    7(fvec4) ImageSampleImplicitLod 121 123
                              Store 114 124
             129:         126 Load 128
             130:          47 Load 49
             132:         131 SampledImage 129 130
             134:   55(ivec4) ImageSampleImplicitLod 132 133
                              Store 125 134
             139:         136 Load 138
             140:          47 Load 49
             142:         141 SampledImage 139 140
             147:   68(ivec4) ImageSampleImplicitLod 142 146
                              Store 135 147
             152:         149 Load 151
             153:          47 Load 49
             155:         154 SampledImage 152 153
             156:    7(fvec4) ImageSampleImplicitLod 155 123
                              Store 148 156
             161:         158 Load 160
             162:          47 Load 49
             164:         163 SampledImage 161 162
             165:   55(ivec4) ImageSampleImplicitLod 164 133
                              Store 157 165
             170:         167 Load 169
             171:          47 Load 49
             173:         172 SampledImage 170 171
             174:   68(ivec4) ImageSampleImplicitLod 173 146
                              Store 166 174
             179:     41(ptr) AccessChain 176 29
                              Store 179 178
             181:    180(ptr) AccessChain 176 16
                              Store 181 177
             182:   8(struct) Load 176
                              ReturnValue 182
                              FunctionEnd
