| hlsl.multiEntry.vert |
| Shader version: 450 |
| 0:? Sequence |
| 0:4 Function Definition: FakeEntrypoint(u1; (temp 4-component vector of float) |
| 0:4 Function Parameters: |
| 0:4 'Index' (in uint) |
| 0:? Sequence |
| 0:5 Branch: Return with expression |
| 0:5 textureFetch (temp 4-component vector of float) |
| 0:5 'Position' (layout(rgba32f ) uniform samplerBuffer) |
| 0:5 Convert uint to int (temp int) |
| 0:5 'Index' (in uint) |
| 0:9 Function Definition: RealEntrypoint(u1; (temp 4-component vector of float Position) |
| 0:9 Function Parameters: |
| 0:9 'Index' (in uint VertexIndex) |
| 0:? Sequence |
| 0:10 Sequence |
| 0:10 move second child to first child (temp 4-component vector of float) |
| 0:? '@entryPointOutput' (out 4-component vector of float Position) |
| 0:10 Function Call: FakeEntrypoint(u1; (temp 4-component vector of float) |
| 0:10 'Index' (in uint VertexIndex) |
| 0:10 Branch: Return |
| 0:? Linker Objects |
| 0:? 'Position' (layout(rgba32f ) uniform samplerBuffer) |
| 0:? '@entryPointOutput' (out 4-component vector of float Position) |
| 0:? 'Index' (in uint VertexIndex) |
| |
| |
| Linked vertex stage: |
| |
| |
| Shader version: 450 |
| 0:? Sequence |
| 0:4 Function Definition: FakeEntrypoint(u1; (temp 4-component vector of float) |
| 0:4 Function Parameters: |
| 0:4 'Index' (in uint) |
| 0:? Sequence |
| 0:5 Branch: Return with expression |
| 0:5 textureFetch (temp 4-component vector of float) |
| 0:5 'Position' (layout(rgba32f ) uniform samplerBuffer) |
| 0:5 Convert uint to int (temp int) |
| 0:5 'Index' (in uint) |
| 0:9 Function Definition: RealEntrypoint(u1; (temp 4-component vector of float Position) |
| 0:9 Function Parameters: |
| 0:9 'Index' (in uint VertexIndex) |
| 0:? Sequence |
| 0:10 Sequence |
| 0:10 move second child to first child (temp 4-component vector of float) |
| 0:? '@entryPointOutput' (out 4-component vector of float Position) |
| 0:10 Function Call: FakeEntrypoint(u1; (temp 4-component vector of float) |
| 0:10 'Index' (in uint VertexIndex) |
| 0:10 Branch: Return |
| 0:? Linker Objects |
| 0:? 'Position' (layout(rgba32f ) uniform samplerBuffer) |
| 0:? '@entryPointOutput' (out 4-component vector of float Position) |
| 0:? 'Index' (in uint VertexIndex) |
| |
| // Module Version 10000 |
| // Generated by (magic number): 80001 |
| // Id's are bound by 34 |
| |
| Capability Shader |
| Capability SampledBuffer |
| 1: ExtInstImport "GLSL.std.450" |
| MemoryModel Logical GLSL450 |
| EntryPoint Vertex 4 "RealEntrypoint" 27 29 |
| Name 4 "RealEntrypoint" |
| Name 12 "FakeEntrypoint(u1;" |
| Name 11 "Index" |
| Name 17 "Position" |
| Name 27 "@entryPointOutput" |
| Name 29 "Index" |
| Name 30 "param" |
| Decorate 17(Position) DescriptorSet 0 |
| Decorate 27(@entryPointOutput) BuiltIn Position |
| Decorate 29(Index) BuiltIn VertexIndex |
| 2: TypeVoid |
| 3: TypeFunction 2 |
| 6: TypeInt 32 0 |
| 7: TypePointer Function 6(int) |
| 8: TypeFloat 32 |
| 9: TypeVector 8(float) 4 |
| 10: TypeFunction 9(fvec4) 7(ptr) |
| 14: TypeImage 8(float) Buffer sampled format:Rgba32f |
| 15: TypeSampledImage 14 |
| 16: TypePointer UniformConstant 15 |
| 17(Position): 16(ptr) Variable UniformConstant |
| 20: TypeInt 32 1 |
| 26: TypePointer Output 9(fvec4) |
| 27(@entryPointOutput): 26(ptr) Variable Output |
| 28: TypePointer Input 6(int) |
| 29(Index): 28(ptr) Variable Input |
| 4(RealEntrypoint): 2 Function None 3 |
| 5: Label |
| 30(param): 7(ptr) Variable Function |
| 31: 6(int) Load 29(Index) |
| Store 30(param) 31 |
| 32: 9(fvec4) FunctionCall 12(FakeEntrypoint(u1;) 30(param) |
| Store 27(@entryPointOutput) 32 |
| Return |
| FunctionEnd |
| 12(FakeEntrypoint(u1;): 9(fvec4) Function None 10 |
| 11(Index): 7(ptr) FunctionParameter |
| 13: Label |
| 18: 15 Load 17(Position) |
| 19: 6(int) Load 11(Index) |
| 21: 20(int) Bitcast 19 |
| 22: 14 Image 18 |
| 23: 9(fvec4) ImageFetch 22 21 |
| ReturnValue 23 |
| FunctionEnd |