| hlsl.buffer.frag |
| Shader version: 500 |
| gl_FragCoord origin is upper left |
| 0:? Sequence |
| 0:30 Function Definition: foo( ( temp float) |
| 0:30 Function Parameters: |
| 0:? Sequence |
| 0:31 Branch: Return with expression |
| 0:31 Constant: |
| 0:31 1.000000 |
| 0:35 Function Definition: @PixelShaderFunction(vf4; ( temp 4-component vector of float) |
| 0:35 Function Parameters: |
| 0:35 'input' ( in 4-component vector of float) |
| 0:? Sequence |
| 0:36 Branch: Return with expression |
| 0:36 vector-scale ( temp 4-component vector of float) |
| 0:36 add ( temp 4-component vector of float) |
| 0:36 add ( temp 4-component vector of float) |
| 0:36 add ( temp 4-component vector of float) |
| 0:36 add ( temp 4-component vector of float) |
| 0:36 'input' ( in 4-component vector of float) |
| 0:36 v1: direct index for structure (layout( row_major std140) uniform 4-component vector of float) |
| 0:36 'anon@0' (layout( row_major std140) uniform block{layout( row_major std140) uniform 4-component vector of float v1}) |
| 0:36 Constant: |
| 0:36 0 (const uint) |
| 0:36 v2: direct index for structure (layout( row_major std430) buffer 4-component vector of float) |
| 0:36 'anon@1' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer 4-component vector of float v2}) |
| 0:36 Constant: |
| 0:36 0 (const uint) |
| 0:36 v3: direct index for structure (layout( row_major std140 offset=0) uniform 4-component vector of float) |
| 0:36 '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}) |
| 0:36 Constant: |
| 0:36 0 (const uint) |
| 0:36 v4: direct index for structure (layout( row_major std430 offset=16) buffer 4-component vector of float) |
| 0:36 '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}) |
| 0:36 Constant: |
| 0:36 0 (const uint) |
| 0:36 Function Call: foo( ( temp float) |
| 0:35 Function Definition: PixelShaderFunction( ( temp void) |
| 0:35 Function Parameters: |
| 0:? Sequence |
| 0:35 move second child to first child ( temp 4-component vector of float) |
| 0:? 'input' ( temp 4-component vector of float) |
| 0:? 'input' ( in 4-component vector of float FragCoord) |
| 0:35 move second child to first child ( temp 4-component vector of float) |
| 0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float) |
| 0:35 Function Call: @PixelShaderFunction(vf4; ( temp 4-component vector of float) |
| 0:? 'input' ( temp 4-component vector of float) |
| 0:? Linker Objects |
| 0:? 'anon@0' (layout( row_major std140) uniform block{layout( row_major std140) uniform 4-component vector of float v1}) |
| 0:? 'anon@1' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer 4-component vector of float v2}) |
| 0:? '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}) |
| 0:? '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}) |
| 0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float) |
| 0:? 'input' ( in 4-component vector of float FragCoord) |
| |
| |
| Linked fragment stage: |
| |
| |
| Shader version: 500 |
| gl_FragCoord origin is upper left |
| 0:? Sequence |
| 0:30 Function Definition: foo( ( temp float) |
| 0:30 Function Parameters: |
| 0:? Sequence |
| 0:31 Branch: Return with expression |
| 0:31 Constant: |
| 0:31 1.000000 |
| 0:35 Function Definition: @PixelShaderFunction(vf4; ( temp 4-component vector of float) |
| 0:35 Function Parameters: |
| 0:35 'input' ( in 4-component vector of float) |
| 0:? Sequence |
| 0:36 Branch: Return with expression |
| 0:36 vector-scale ( temp 4-component vector of float) |
| 0:36 add ( temp 4-component vector of float) |
| 0:36 add ( temp 4-component vector of float) |
| 0:36 add ( temp 4-component vector of float) |
| 0:36 add ( temp 4-component vector of float) |
| 0:36 'input' ( in 4-component vector of float) |
| 0:36 v1: direct index for structure (layout( row_major std140) uniform 4-component vector of float) |
| 0:36 'anon@0' (layout( row_major std140) uniform block{layout( row_major std140) uniform 4-component vector of float v1}) |
| 0:36 Constant: |
| 0:36 0 (const uint) |
| 0:36 v2: direct index for structure (layout( row_major std430) buffer 4-component vector of float) |
| 0:36 'anon@1' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer 4-component vector of float v2}) |
| 0:36 Constant: |
| 0:36 0 (const uint) |
| 0:36 v3: direct index for structure (layout( row_major std140 offset=0) uniform 4-component vector of float) |
| 0:36 '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}) |
| 0:36 Constant: |
| 0:36 0 (const uint) |
| 0:36 v4: direct index for structure (layout( row_major std430 offset=16) buffer 4-component vector of float) |
| 0:36 '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}) |
| 0:36 Constant: |
| 0:36 0 (const uint) |
| 0:36 Function Call: foo( ( temp float) |
| 0:35 Function Definition: PixelShaderFunction( ( temp void) |
| 0:35 Function Parameters: |
| 0:? Sequence |
| 0:35 move second child to first child ( temp 4-component vector of float) |
| 0:? 'input' ( temp 4-component vector of float) |
| 0:? 'input' ( in 4-component vector of float FragCoord) |
| 0:35 move second child to first child ( temp 4-component vector of float) |
| 0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float) |
| 0:35 Function Call: @PixelShaderFunction(vf4; ( temp 4-component vector of float) |
| 0:? 'input' ( temp 4-component vector of float) |
| 0:? Linker Objects |
| 0:? 'anon@0' (layout( row_major std140) uniform block{layout( row_major std140) uniform 4-component vector of float v1}) |
| 0:? 'anon@1' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer 4-component vector of float v2}) |
| 0:? '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}) |
| 0:? '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}) |
| 0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float) |
| 0:? 'input' ( in 4-component vector of float FragCoord) |
| |
| // Module Version 10000 |
| // Generated by (magic number): 80001 |
| // Id's are bound by 61 |
| |
| Capability Shader |
| 1: ExtInstImport "GLSL.std.450" |
| MemoryModel Logical GLSL450 |
| EntryPoint Fragment 4 "PixelShaderFunction" 54 57 |
| ExecutionMode 4 OriginUpperLeft |
| Source HLSL 500 |
| Name 4 "PixelShaderFunction" |
| Name 8 "foo(" |
| Name 14 "@PixelShaderFunction(vf4;" |
| Name 13 "input" |
| Name 20 "buf1" |
| MemberName 20(buf1) 0 "v1" |
| Name 22 "" |
| Name 29 "buf2" |
| MemberName 29(buf2) 0 "v2" |
| Name 31 "" |
| Name 35 "cbufName" |
| MemberName 35(cbufName) 0 "v3" |
| MemberName 35(cbufName) 1 "i3" |
| Name 37 "" |
| Name 42 "tbufName" |
| MemberName 42(tbufName) 0 "v4" |
| MemberName 42(tbufName) 1 "i4" |
| MemberName 42(tbufName) 2 "f1" |
| MemberName 42(tbufName) 3 "f3" |
| MemberName 42(tbufName) 4 "f4" |
| MemberName 42(tbufName) 5 "f5" |
| MemberName 42(tbufName) 6 "f6" |
| MemberName 42(tbufName) 7 "f7" |
| MemberName 42(tbufName) 8 "m1" |
| MemberName 42(tbufName) 9 "m2" |
| MemberName 42(tbufName) 10 "m3" |
| MemberName 42(tbufName) 11 "m4" |
| Name 44 "" |
| Name 52 "input" |
| Name 54 "input" |
| Name 57 "@entryPointOutput" |
| Name 58 "param" |
| MemberDecorate 20(buf1) 0 Offset 0 |
| Decorate 20(buf1) Block |
| Decorate 22 DescriptorSet 0 |
| MemberDecorate 29(buf2) 0 NonWritable |
| MemberDecorate 29(buf2) 0 Offset 0 |
| Decorate 29(buf2) BufferBlock |
| Decorate 31 DescriptorSet 0 |
| MemberDecorate 35(cbufName) 0 Offset 0 |
| MemberDecorate 35(cbufName) 1 Offset 20 |
| Decorate 35(cbufName) Block |
| Decorate 37 DescriptorSet 0 |
| MemberDecorate 42(tbufName) 0 NonWritable |
| MemberDecorate 42(tbufName) 0 Offset 16 |
| MemberDecorate 42(tbufName) 1 NonWritable |
| MemberDecorate 42(tbufName) 1 Offset 48 |
| MemberDecorate 42(tbufName) 2 NonWritable |
| MemberDecorate 42(tbufName) 2 Offset 60 |
| MemberDecorate 42(tbufName) 3 NonWritable |
| MemberDecorate 42(tbufName) 3 Offset 64 |
| MemberDecorate 42(tbufName) 4 NonWritable |
| MemberDecorate 42(tbufName) 4 Offset 68 |
| MemberDecorate 42(tbufName) 5 NonWritable |
| MemberDecorate 42(tbufName) 5 Offset 72 |
| MemberDecorate 42(tbufName) 6 NonWritable |
| MemberDecorate 42(tbufName) 6 Offset 76 |
| MemberDecorate 42(tbufName) 7 NonWritable |
| MemberDecorate 42(tbufName) 7 Offset 128 |
| MemberDecorate 42(tbufName) 8 RowMajor |
| MemberDecorate 42(tbufName) 8 NonWritable |
| MemberDecorate 42(tbufName) 8 Offset 112 |
| MemberDecorate 42(tbufName) 8 MatrixStride 16 |
| MemberDecorate 42(tbufName) 9 ColMajor |
| MemberDecorate 42(tbufName) 9 NonWritable |
| MemberDecorate 42(tbufName) 9 Offset 176 |
| MemberDecorate 42(tbufName) 9 MatrixStride 16 |
| MemberDecorate 42(tbufName) 10 RowMajor |
| MemberDecorate 42(tbufName) 10 NonWritable |
| MemberDecorate 42(tbufName) 10 Offset 240 |
| MemberDecorate 42(tbufName) 10 MatrixStride 16 |
| MemberDecorate 42(tbufName) 11 RowMajor |
| MemberDecorate 42(tbufName) 11 NonWritable |
| MemberDecorate 42(tbufName) 11 Offset 304 |
| MemberDecorate 42(tbufName) 11 MatrixStride 16 |
| Decorate 42(tbufName) BufferBlock |
| Decorate 44 DescriptorSet 0 |
| Decorate 44 Binding 8 |
| Decorate 54(input) BuiltIn FragCoord |
| Decorate 57(@entryPointOutput) Location 0 |
| 2: TypeVoid |
| 3: TypeFunction 2 |
| 6: TypeFloat 32 |
| 7: TypeFunction 6(float) |
| 10: TypeVector 6(float) 4 |
| 11: TypePointer Function 10(fvec4) |
| 12: TypeFunction 10(fvec4) 11(ptr) |
| 16: 6(float) Constant 1065353216 |
| 20(buf1): TypeStruct 10(fvec4) |
| 21: TypePointer Uniform 20(buf1) |
| 22: 21(ptr) Variable Uniform |
| 23: TypeInt 32 1 |
| 24: 23(int) Constant 0 |
| 25: TypePointer Uniform 10(fvec4) |
| 29(buf2): TypeStruct 10(fvec4) |
| 30: TypePointer Uniform 29(buf2) |
| 31: 30(ptr) Variable Uniform |
| 35(cbufName): TypeStruct 10(fvec4) 23(int) |
| 36: TypePointer Uniform 35(cbufName) |
| 37: 36(ptr) Variable Uniform |
| 41: TypeMatrix 10(fvec4) 3 |
| 42(tbufName): TypeStruct 10(fvec4) 23(int) 6(float) 6(float) 6(float) 6(float) 6(float) 6(float) 41 41 41 41 |
| 43: TypePointer Uniform 42(tbufName) |
| 44: 43(ptr) Variable Uniform |
| 53: TypePointer Input 10(fvec4) |
| 54(input): 53(ptr) Variable Input |
| 56: TypePointer Output 10(fvec4) |
| 57(@entryPointOutput): 56(ptr) Variable Output |
| 4(PixelShaderFunction): 2 Function None 3 |
| 5: Label |
| 52(input): 11(ptr) Variable Function |
| 58(param): 11(ptr) Variable Function |
| 55: 10(fvec4) Load 54(input) |
| Store 52(input) 55 |
| 59: 10(fvec4) Load 52(input) |
| Store 58(param) 59 |
| 60: 10(fvec4) FunctionCall 14(@PixelShaderFunction(vf4;) 58(param) |
| Store 57(@entryPointOutput) 60 |
| Return |
| FunctionEnd |
| 8(foo(): 6(float) Function None 7 |
| 9: Label |
| ReturnValue 16 |
| FunctionEnd |
| 14(@PixelShaderFunction(vf4;): 10(fvec4) Function None 12 |
| 13(input): 11(ptr) FunctionParameter |
| 15: Label |
| 19: 10(fvec4) Load 13(input) |
| 26: 25(ptr) AccessChain 22 24 |
| 27: 10(fvec4) Load 26 |
| 28: 10(fvec4) FAdd 19 27 |
| 32: 25(ptr) AccessChain 31 24 |
| 33: 10(fvec4) Load 32 |
| 34: 10(fvec4) FAdd 28 33 |
| 38: 25(ptr) AccessChain 37 24 |
| 39: 10(fvec4) Load 38 |
| 40: 10(fvec4) FAdd 34 39 |
| 45: 25(ptr) AccessChain 44 24 |
| 46: 10(fvec4) Load 45 |
| 47: 10(fvec4) FAdd 40 46 |
| 48: 6(float) FunctionCall 8(foo() |
| 49: 10(fvec4) VectorTimesScalar 47 48 |
| ReturnValue 49 |
| FunctionEnd |