1hlsl.buffer.frag 2Shader version: 500 3gl_FragCoord origin is upper left 40:? Sequence 50:30 Function Definition: foo( ( temp float) 60:30 Function Parameters: 70:? Sequence 80:31 Branch: Return with expression 90:31 Constant: 100:31 1.000000 110:43 Function Definition: @PixelShaderFunction(vf4; ( temp structure{ temp 4-component vector of float a}) 120:43 Function Parameters: 130:43 'input' ( in 4-component vector of float) 140:? Sequence 150:45 move second child to first child ( temp 4-component vector of float) 160:45 a: direct index for structure ( temp 4-component vector of float) 170:45 'ret' ( temp structure{ temp 4-component vector of float a}) 180:45 Constant: 190:45 0 (const int) 200:45 add ( temp 4-component vector of float) 210:45 v24: direct index for structure (layout( row_major std140) uniform 4-component vector of float) 220:45 'anon@4' (layout( row_major std140) uniform block{layout( row_major std140) uniform 4-component vector of float v24}) 230:45 Constant: 240:45 0 (const uint) 250:45 vector-scale ( temp 4-component vector of float) 260:45 add ( temp 4-component vector of float) 270:45 add ( temp 4-component vector of float) 280:45 add ( temp 4-component vector of float) 290:45 add ( temp 4-component vector of float) 300:45 'input' ( in 4-component vector of float) 310:45 v1: direct index for structure (layout( row_major std140) uniform 4-component vector of float) 320:45 'anon@0' (layout( row_major std140) uniform block{layout( row_major std140) uniform 4-component vector of float v1}) 330:45 Constant: 340:45 0 (const uint) 350:45 v2: direct index for structure (layout( row_major std430) buffer 4-component vector of float) 360:45 'anon@1' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer 4-component vector of float v2}) 370:45 Constant: 380:45 0 (const uint) 390:45 v3: direct index for structure (layout( row_major std140 offset=0) uniform 4-component vector of float) 400:45 'anon@2' (layout( row_major std140) uniform block{layout( row_major std140 offset=0) uniform 4-component vector of float v3, layout( row_major std140 offset=20) uniform int i3}) 410:45 Constant: 420:45 0 (const uint) 430:45 v4: direct index for structure (layout( row_major std430 offset=16) buffer 4-component vector of float) 440:45 'anon@3' (layout( binding=8 row_major std430) readonly buffer block{layout( row_major std430 offset=16) buffer 4-component vector of float v4, layout( row_major std430 offset=48) buffer int i4, layout( row_major std430 offset=60) buffer float f1, layout( row_major std430 offset=64) buffer float f3, layout( row_major std430 offset=68) buffer float f4, layout( row_major std430 offset=72) buffer float f5, layout( row_major std430) buffer float f6, layout( row_major std430 offset=128) buffer float f7, layout( row_major std430 offset=112) buffer 3X4 matrix of float m1, layout( column_major std430 offset=176) buffer 3X4 matrix of float m2, layout( row_major std430 offset=240) buffer 3X4 matrix of float m3, layout( row_major std430 offset=304) buffer 3X4 matrix of float m4}) 450:45 Constant: 460:45 0 (const uint) 470:45 Function Call: foo( ( temp float) 480:46 Branch: Return with expression 490:46 'ret' ( temp structure{ temp 4-component vector of float a}) 500:43 Function Definition: PixelShaderFunction( ( temp void) 510:43 Function Parameters: 520:? Sequence 530:43 move second child to first child ( temp 4-component vector of float) 540:? 'input' ( temp 4-component vector of float) 550:? 'input' ( in 4-component vector of float FragCoord) 560:43 Sequence 570:43 move second child to first child ( temp 4-component vector of float) 580:? '@entryPointOutput.a' (layout( location=0) out 4-component vector of float) 590:43 a: direct index for structure ( temp 4-component vector of float) 600:43 Function Call: @PixelShaderFunction(vf4; ( temp structure{ temp 4-component vector of float a}) 610:? 'input' ( temp 4-component vector of float) 620:43 Constant: 630:43 0 (const int) 640:? Linker Objects 650:? 'anon@0' (layout( row_major std140) uniform block{layout( row_major std140) uniform 4-component vector of float v1}) 660:? 'anon@1' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer 4-component vector of float v2}) 670:? 'anon@2' (layout( row_major std140) uniform block{layout( row_major std140 offset=0) uniform 4-component vector of float v3, layout( row_major std140 offset=20) uniform int i3}) 680:? 'anon@3' (layout( binding=8 row_major std430) readonly buffer block{layout( row_major std430 offset=16) buffer 4-component vector of float v4, layout( row_major std430 offset=48) buffer int i4, layout( row_major std430 offset=60) buffer float f1, layout( row_major std430 offset=64) buffer float f3, layout( row_major std430 offset=68) buffer float f4, layout( row_major std430 offset=72) buffer float f5, layout( row_major std430) buffer float f6, layout( row_major std430 offset=128) buffer float f7, layout( row_major std430 offset=112) buffer 3X4 matrix of float m1, layout( column_major std430 offset=176) buffer 3X4 matrix of float m2, layout( row_major std430 offset=240) buffer 3X4 matrix of float m3, layout( row_major std430 offset=304) buffer 3X4 matrix of float m4}) 690:? 'anon@4' (layout( row_major std140) uniform block{layout( row_major std140) uniform 4-component vector of float v24}) 700:? '@entryPointOutput.a' (layout( location=0) out 4-component vector of float) 710:? 'input' ( in 4-component vector of float FragCoord) 72 73 74Linked fragment stage: 75 76 77Shader version: 500 78gl_FragCoord origin is upper left 790:? Sequence 800:30 Function Definition: foo( ( temp float) 810:30 Function Parameters: 820:? Sequence 830:31 Branch: Return with expression 840:31 Constant: 850:31 1.000000 860:43 Function Definition: @PixelShaderFunction(vf4; ( temp structure{ temp 4-component vector of float a}) 870:43 Function Parameters: 880:43 'input' ( in 4-component vector of float) 890:? Sequence 900:45 move second child to first child ( temp 4-component vector of float) 910:45 a: direct index for structure ( temp 4-component vector of float) 920:45 'ret' ( temp structure{ temp 4-component vector of float a}) 930:45 Constant: 940:45 0 (const int) 950:45 add ( temp 4-component vector of float) 960:45 v24: direct index for structure (layout( row_major std140) uniform 4-component vector of float) 970:45 'anon@4' (layout( row_major std140) uniform block{layout( row_major std140) uniform 4-component vector of float v24}) 980:45 Constant: 990:45 0 (const uint) 1000:45 vector-scale ( temp 4-component vector of float) 1010:45 add ( temp 4-component vector of float) 1020:45 add ( temp 4-component vector of float) 1030:45 add ( temp 4-component vector of float) 1040:45 add ( temp 4-component vector of float) 1050:45 'input' ( in 4-component vector of float) 1060:45 v1: direct index for structure (layout( row_major std140) uniform 4-component vector of float) 1070:45 'anon@0' (layout( row_major std140) uniform block{layout( row_major std140) uniform 4-component vector of float v1}) 1080:45 Constant: 1090:45 0 (const uint) 1100:45 v2: direct index for structure (layout( row_major std430) buffer 4-component vector of float) 1110:45 'anon@1' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer 4-component vector of float v2}) 1120:45 Constant: 1130:45 0 (const uint) 1140:45 v3: direct index for structure (layout( row_major std140 offset=0) uniform 4-component vector of float) 1150:45 'anon@2' (layout( row_major std140) uniform block{layout( row_major std140 offset=0) uniform 4-component vector of float v3, layout( row_major std140 offset=20) uniform int i3}) 1160:45 Constant: 1170:45 0 (const uint) 1180:45 v4: direct index for structure (layout( row_major std430 offset=16) buffer 4-component vector of float) 1190:45 'anon@3' (layout( binding=8 row_major std430) readonly buffer block{layout( row_major std430 offset=16) buffer 4-component vector of float v4, layout( row_major std430 offset=48) buffer int i4, layout( row_major std430 offset=60) buffer float f1, layout( row_major std430 offset=64) buffer float f3, layout( row_major std430 offset=68) buffer float f4, layout( row_major std430 offset=72) buffer float f5, layout( row_major std430) buffer float f6, layout( row_major std430 offset=128) buffer float f7, layout( row_major std430 offset=112) buffer 3X4 matrix of float m1, layout( column_major std430 offset=176) buffer 3X4 matrix of float m2, layout( row_major std430 offset=240) buffer 3X4 matrix of float m3, layout( row_major std430 offset=304) buffer 3X4 matrix of float m4}) 1200:45 Constant: 1210:45 0 (const uint) 1220:45 Function Call: foo( ( temp float) 1230:46 Branch: Return with expression 1240:46 'ret' ( temp structure{ temp 4-component vector of float a}) 1250:43 Function Definition: PixelShaderFunction( ( temp void) 1260:43 Function Parameters: 1270:? Sequence 1280:43 move second child to first child ( temp 4-component vector of float) 1290:? 'input' ( temp 4-component vector of float) 1300:? 'input' ( in 4-component vector of float FragCoord) 1310:43 Sequence 1320:43 move second child to first child ( temp 4-component vector of float) 1330:? '@entryPointOutput.a' (layout( location=0) out 4-component vector of float) 1340:43 a: direct index for structure ( temp 4-component vector of float) 1350:43 Function Call: @PixelShaderFunction(vf4; ( temp structure{ temp 4-component vector of float a}) 1360:? 'input' ( temp 4-component vector of float) 1370:43 Constant: 1380:43 0 (const int) 1390:? Linker Objects 1400:? 'anon@0' (layout( row_major std140) uniform block{layout( row_major std140) uniform 4-component vector of float v1}) 1410:? 'anon@1' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer 4-component vector of float v2}) 1420:? 'anon@2' (layout( row_major std140) uniform block{layout( row_major std140 offset=0) uniform 4-component vector of float v3, layout( row_major std140 offset=20) uniform int i3}) 1430:? 'anon@3' (layout( binding=8 row_major std430) readonly buffer block{layout( row_major std430 offset=16) buffer 4-component vector of float v4, layout( row_major std430 offset=48) buffer int i4, layout( row_major std430 offset=60) buffer float f1, layout( row_major std430 offset=64) buffer float f3, layout( row_major std430 offset=68) buffer float f4, layout( row_major std430 offset=72) buffer float f5, layout( row_major std430) buffer float f6, layout( row_major std430 offset=128) buffer float f7, layout( row_major std430 offset=112) buffer 3X4 matrix of float m1, layout( column_major std430 offset=176) buffer 3X4 matrix of float m2, layout( row_major std430 offset=240) buffer 3X4 matrix of float m3, layout( row_major std430 offset=304) buffer 3X4 matrix of float m4}) 1440:? 'anon@4' (layout( row_major std140) uniform block{layout( row_major std140) uniform 4-component vector of float v24}) 1450:? '@entryPointOutput.a' (layout( location=0) out 4-component vector of float) 1460:? 'input' ( in 4-component vector of float FragCoord) 147 148Validation failed 149// Module Version 10000 150// Generated by (magic number): 8000b 151// Id's are bound by 73 152 153 Capability Shader 154 1: ExtInstImport "GLSL.std.450" 155 MemoryModel Logical GLSL450 156 EntryPoint Fragment 4 "PixelShaderFunction" 65 68 157 ExecutionMode 4 OriginUpperLeft 158 Source HLSL 500 159 Name 4 "PixelShaderFunction" 160 Name 8 "foo(" 161 Name 12 "id" 162 MemberName 12(id) 0 "a" 163 Name 15 "@PixelShaderFunction(vf4;" 164 Name 14 "input" 165 Name 21 "ret" 166 Name 24 "cbufName2" 167 MemberName 24(cbufName2) 0 "v24" 168 Name 26 "" 169 Name 31 "buf1" 170 MemberName 31(buf1) 0 "v1" 171 Name 33 "" 172 Name 37 "buf2" 173 MemberName 37(buf2) 0 "v2" 174 Name 39 "" 175 Name 43 "cbufName" 176 MemberName 43(cbufName) 0 "v3" 177 MemberName 43(cbufName) 1 "i3" 178 Name 45 "" 179 Name 50 "tbufName" 180 MemberName 50(tbufName) 0 "v4" 181 MemberName 50(tbufName) 1 "i4" 182 MemberName 50(tbufName) 2 "f1" 183 MemberName 50(tbufName) 3 "f3" 184 MemberName 50(tbufName) 4 "f4" 185 MemberName 50(tbufName) 5 "f5" 186 MemberName 50(tbufName) 6 "f6" 187 MemberName 50(tbufName) 7 "f7" 188 MemberName 50(tbufName) 8 "m1" 189 MemberName 50(tbufName) 9 "m2" 190 MemberName 50(tbufName) 10 "m3" 191 MemberName 50(tbufName) 11 "m4" 192 Name 52 "" 193 Name 63 "input" 194 Name 65 "input" 195 Name 68 "@entryPointOutput.a" 196 Name 69 "param" 197 Decorate 24(cbufName2) Block 198 MemberDecorate 24(cbufName2) 0 Offset 0 199 Decorate 26 Binding 3 200 Decorate 26 DescriptorSet 0 201 Decorate 31(buf1) Block 202 MemberDecorate 31(buf1) 0 Offset 0 203 Decorate 33 Binding 0 204 Decorate 33 DescriptorSet 0 205 Decorate 37(buf2) BufferBlock 206 MemberDecorate 37(buf2) 0 NonWritable 207 MemberDecorate 37(buf2) 0 Offset 0 208 Decorate 39 NonWritable 209 Decorate 39 Binding 1 210 Decorate 39 DescriptorSet 0 211 Decorate 43(cbufName) Block 212 MemberDecorate 43(cbufName) 0 Offset 0 213 MemberDecorate 43(cbufName) 1 Offset 20 214 Decorate 45 Binding 2 215 Decorate 45 DescriptorSet 0 216 Decorate 50(tbufName) BufferBlock 217 MemberDecorate 50(tbufName) 0 NonWritable 218 MemberDecorate 50(tbufName) 0 Offset 16 219 MemberDecorate 50(tbufName) 1 NonWritable 220 MemberDecorate 50(tbufName) 1 Offset 48 221 MemberDecorate 50(tbufName) 2 NonWritable 222 MemberDecorate 50(tbufName) 2 Offset 60 223 MemberDecorate 50(tbufName) 3 NonWritable 224 MemberDecorate 50(tbufName) 3 Offset 64 225 MemberDecorate 50(tbufName) 4 NonWritable 226 MemberDecorate 50(tbufName) 4 Offset 68 227 MemberDecorate 50(tbufName) 5 NonWritable 228 MemberDecorate 50(tbufName) 5 Offset 72 229 MemberDecorate 50(tbufName) 6 NonWritable 230 MemberDecorate 50(tbufName) 6 Offset 76 231 MemberDecorate 50(tbufName) 7 NonWritable 232 MemberDecorate 50(tbufName) 7 Offset 128 233 MemberDecorate 50(tbufName) 8 RowMajor 234 MemberDecorate 50(tbufName) 8 MatrixStride 16 235 MemberDecorate 50(tbufName) 8 NonWritable 236 MemberDecorate 50(tbufName) 8 Offset 112 237 MemberDecorate 50(tbufName) 9 ColMajor 238 MemberDecorate 50(tbufName) 9 MatrixStride 16 239 MemberDecorate 50(tbufName) 9 NonWritable 240 MemberDecorate 50(tbufName) 9 Offset 176 241 MemberDecorate 50(tbufName) 10 RowMajor 242 MemberDecorate 50(tbufName) 10 MatrixStride 16 243 MemberDecorate 50(tbufName) 10 NonWritable 244 MemberDecorate 50(tbufName) 10 Offset 240 245 MemberDecorate 50(tbufName) 11 RowMajor 246 MemberDecorate 50(tbufName) 11 MatrixStride 16 247 MemberDecorate 50(tbufName) 11 NonWritable 248 MemberDecorate 50(tbufName) 11 Offset 304 249 Decorate 52 NonWritable 250 Decorate 52 Binding 8 251 Decorate 52 DescriptorSet 0 252 Decorate 65(input) BuiltIn FragCoord 253 Decorate 68(@entryPointOutput.a) Location 0 254 2: TypeVoid 255 3: TypeFunction 2 256 6: TypeFloat 32 257 7: TypeFunction 6(float) 258 10: TypeVector 6(float) 4 259 11: TypePointer Function 10(fvec4) 260 12(id): TypeStruct 10(fvec4) 261 13: TypeFunction 12(id) 11(ptr) 262 17: 6(float) Constant 1065353216 263 20: TypePointer Function 12(id) 264 22: TypeInt 32 1 265 23: 22(int) Constant 0 266 24(cbufName2): TypeStruct 10(fvec4) 267 25: TypePointer Uniform 24(cbufName2) 268 26: 25(ptr) Variable Uniform 269 27: TypePointer Uniform 10(fvec4) 270 31(buf1): TypeStruct 10(fvec4) 271 32: TypePointer Uniform 31(buf1) 272 33: 32(ptr) Variable Uniform 273 37(buf2): TypeStruct 10(fvec4) 274 38: TypePointer Uniform 37(buf2) 275 39: 38(ptr) Variable Uniform 276 43(cbufName): TypeStruct 10(fvec4) 22(int) 277 44: TypePointer Uniform 43(cbufName) 278 45: 44(ptr) Variable Uniform 279 49: TypeMatrix 10(fvec4) 3 280 50(tbufName): TypeStruct 10(fvec4) 22(int) 6(float) 6(float) 6(float) 6(float) 6(float) 6(float) 49 49 49 49 281 51: TypePointer Uniform 50(tbufName) 282 52: 51(ptr) Variable Uniform 283 64: TypePointer Input 10(fvec4) 284 65(input): 64(ptr) Variable Input 285 67: TypePointer Output 10(fvec4) 28668(@entryPointOutput.a): 67(ptr) Variable Output 2874(PixelShaderFunction): 2 Function None 3 288 5: Label 289 63(input): 11(ptr) Variable Function 290 69(param): 11(ptr) Variable Function 291 66: 10(fvec4) Load 65(input) 292 Store 63(input) 66 293 70: 10(fvec4) Load 63(input) 294 Store 69(param) 70 295 71: 12(id) FunctionCall 15(@PixelShaderFunction(vf4;) 69(param) 296 72: 10(fvec4) CompositeExtract 71 0 297 Store 68(@entryPointOutput.a) 72 298 Return 299 FunctionEnd 300 8(foo(): 6(float) Function None 7 301 9: Label 302 ReturnValue 17 303 FunctionEnd 30415(@PixelShaderFunction(vf4;): 12(id) Function None 13 305 14(input): 11(ptr) FunctionParameter 306 16: Label 307 21(ret): 20(ptr) Variable Function 308 28: 27(ptr) AccessChain 26 23 309 29: 10(fvec4) Load 28 310 30: 10(fvec4) Load 14(input) 311 34: 27(ptr) AccessChain 33 23 312 35: 10(fvec4) Load 34 313 36: 10(fvec4) FAdd 30 35 314 40: 27(ptr) AccessChain 39 23 315 41: 10(fvec4) Load 40 316 42: 10(fvec4) FAdd 36 41 317 46: 27(ptr) AccessChain 45 23 318 47: 10(fvec4) Load 46 319 48: 10(fvec4) FAdd 42 47 320 53: 27(ptr) AccessChain 52 23 321 54: 10(fvec4) Load 53 322 55: 10(fvec4) FAdd 48 54 323 56: 6(float) FunctionCall 8(foo() 324 57: 10(fvec4) VectorTimesScalar 55 56 325 58: 10(fvec4) FAdd 29 57 326 59: 11(ptr) AccessChain 21(ret) 23 327 Store 59 58 328 60: 12(id) Load 21(ret) 329 ReturnValue 60 330 FunctionEnd 331