blob: fcb9f18f49174e0be72350b68be761be8bb00cb9 (
plain)
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): 8000a
// 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) DescriptorSet 0
Decorate 19(Position) Binding 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
|