1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141
|
hlsl.multiEntry.vert
Shader version: 500
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 textureBuffer)
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)
0:9 Function Parameters:
0:9 'Index' ( in uint)
0:? Sequence
0:10 Branch: Return with expression
0:10 Function Call: FakeEntrypoint(u1; ( temp 4-component vector of float)
0:10 'Index' ( in uint)
0:9 Function Definition: RealEntrypoint( ( temp void)
0:9 Function Parameters:
0:? Sequence
0:9 move second child to first child ( temp uint)
0:? 'Index' ( temp uint)
0:? 'Index' ( in uint VertexIndex)
0:9 move second child to first child ( temp 4-component vector of float)
0:? '@entryPointOutput' ( out 4-component vector of float Position)
0:9 Function Call: @RealEntrypoint(u1; ( temp 4-component vector of float)
0:? 'Index' ( temp uint)
0:? Linker Objects
0:? 'Position' (layout( rgba32f) uniform textureBuffer)
0:? '@entryPointOutput' ( out 4-component vector of float Position)
0:? 'Index' ( in uint VertexIndex)
Linked vertex stage:
Shader version: 500
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 textureBuffer)
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)
0:9 Function Parameters:
0:9 'Index' ( in uint)
0:? Sequence
0:10 Branch: Return with expression
0:10 Function Call: FakeEntrypoint(u1; ( temp 4-component vector of float)
0:10 'Index' ( in uint)
0:9 Function Definition: RealEntrypoint( ( temp void)
0:9 Function Parameters:
0:? Sequence
0:9 move second child to first child ( temp uint)
0:? 'Index' ( temp uint)
0:? 'Index' ( in uint VertexIndex)
0:9 move second child to first child ( temp 4-component vector of float)
0:? '@entryPointOutput' ( out 4-component vector of float Position)
0:9 Function Call: @RealEntrypoint(u1; ( temp 4-component vector of float)
0:? 'Index' ( temp uint)
0:? Linker Objects
0:? 'Position' (layout( rgba32f) uniform textureBuffer)
0:? '@entryPointOutput' ( out 4-component vector of float Position)
0:? 'Index' ( in uint VertexIndex)
// Module Version 10000
// Generated by (magic number): 8000b
// Id's are bound by 41
Capability Shader
Capability SampledBuffer
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint Vertex 4 "RealEntrypoint" 34 37
Source HLSL 500
Name 4 "RealEntrypoint"
Name 12 "FakeEntrypoint(u1;"
Name 11 "Index"
Name 15 "@RealEntrypoint(u1;"
Name 14 "Index"
Name 19 "Position"
Name 27 "param"
Name 32 "Index"
Name 34 "Index"
Name 37 "@entryPointOutput"
Name 38 "param"
Decorate 19(Position) Binding 0
Decorate 19(Position) DescriptorSet 0
Decorate 34(Index) BuiltIn VertexIndex
Decorate 37(@entryPointOutput) BuiltIn Position
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)
17: TypeImage 8(float) Buffer sampled format:Rgba32f
18: TypePointer UniformConstant 17
19(Position): 18(ptr) Variable UniformConstant
22: TypeInt 32 1
33: TypePointer Input 6(int)
34(Index): 33(ptr) Variable Input
36: TypePointer Output 9(fvec4)
37(@entryPointOutput): 36(ptr) Variable Output
4(RealEntrypoint): 2 Function None 3
5: Label
32(Index): 7(ptr) Variable Function
38(param): 7(ptr) Variable Function
35: 6(int) Load 34(Index)
Store 32(Index) 35
39: 6(int) Load 32(Index)
Store 38(param) 39
40: 9(fvec4) FunctionCall 15(@RealEntrypoint(u1;) 38(param)
Store 37(@entryPointOutput) 40
Return
FunctionEnd
12(FakeEntrypoint(u1;): 9(fvec4) Function None 10
11(Index): 7(ptr) FunctionParameter
13: Label
20: 17 Load 19(Position)
21: 6(int) Load 11(Index)
23: 22(int) Bitcast 21
24: 9(fvec4) ImageFetch 20 23
ReturnValue 24
FunctionEnd
15(@RealEntrypoint(u1;): 9(fvec4) Function None 10
14(Index): 7(ptr) FunctionParameter
16: Label
27(param): 7(ptr) Variable Function
28: 6(int) Load 14(Index)
Store 27(param) 28
29: 9(fvec4) FunctionCall 12(FakeEntrypoint(u1;) 27(param)
ReturnValue 29
FunctionEnd
|