HLSL: Make the entry-point shadow function have non-IO params and return.

This also removes an no longer needed makeTemporary() and rationalizes
makeTypeNonIo()'s interface.
This commit is contained in:
John Kessenich
2017-02-01 18:09:17 -07:00
parent 5d3023af03
commit abd8dca86d
24 changed files with 1146 additions and 1346 deletions

View File

@@ -1,7 +1,7 @@
hlsl.samplelevel.basic.dx10.vert
Shader version: 450
0:? Sequence
0:27 Function Definition: @main( (temp structure{temp 4-component vector of float Position Pos})
0:27 Function Definition: @main( (temp structure{temp 4-component vector of float Pos})
0:27 Function Parameters:
0:? Sequence
0:30 Sequence
@@ -169,8 +169,8 @@ Shader version: 450
0:27 Sequence
0:27 move second child to first child (temp 4-component vector of float)
0:? '@entryPointOutput_Pos' (out 4-component vector of float Position)
0:27 Pos: direct index for structure (temp 4-component vector of float Position)
0:27 Function Call: @main( (temp structure{temp 4-component vector of float Position Pos})
0:27 Pos: direct index for structure (temp 4-component vector of float)
0:27 Function Call: @main( (temp structure{temp 4-component vector of float Pos})
0:27 Constant:
0:27 0 (const int)
0:? Linker Objects
@@ -196,7 +196,7 @@ Linked vertex stage:
Shader version: 450
0:? Sequence
0:27 Function Definition: @main( (temp structure{temp 4-component vector of float Position Pos})
0:27 Function Definition: @main( (temp structure{temp 4-component vector of float Pos})
0:27 Function Parameters:
0:? Sequence
0:30 Sequence
@@ -364,8 +364,8 @@ Shader version: 450
0:27 Sequence
0:27 move second child to first child (temp 4-component vector of float)
0:? '@entryPointOutput_Pos' (out 4-component vector of float Position)
0:27 Pos: direct index for structure (temp 4-component vector of float Position)
0:27 Function Call: @main( (temp structure{temp 4-component vector of float Position Pos})
0:27 Pos: direct index for structure (temp 4-component vector of float)
0:27 Function Call: @main( (temp structure{temp 4-component vector of float Pos})
0:27 Constant:
0:27 0 (const int)
0:? Linker Objects
@@ -387,13 +387,13 @@ Shader version: 450
// Module Version 10000
// Generated by (magic number): 80001
// Id's are bound by 171
// Id's are bound by 165
Capability Shader
Capability Sampled1D
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint Vertex 4 "main" 164 170
EntryPoint Vertex 4 "main" 158 164
Name 4 "main"
Name 8 "VS_OUTPUT"
MemberName 8(VS_OUTPUT) 0 "Pos"
@@ -423,15 +423,12 @@ Shader version: 450
Name 133 "g_tTexcdi4"
Name 139 "txval42"
Name 142 "g_tTexcdu4"
Name 148 "VS_OUTPUT"
MemberName 148(VS_OUTPUT) 0 "Pos"
Name 150 "vsout"
Name 164 "@entryPointOutput_Pos"
Name 167 "g_tTex1df4a"
Name 168 "PerVertex_out"
MemberName 168(PerVertex_out) 0 "@entryPointOutput_Pos"
Name 170 "PerVertex_out"
MemberDecorate 8(VS_OUTPUT) 0 BuiltIn Position
Name 149 "vsout"
Name 158 "@entryPointOutput_Pos"
Name 161 "g_tTex1df4a"
Name 162 "PerVertex_out"
MemberName 162(PerVertex_out) 0 "@entryPointOutput_Pos"
Name 164 "PerVertex_out"
Decorate 16(g_tTex1df4) DescriptorSet 0
Decorate 16(g_tTex1df4) Binding 0
Decorate 20(g_sSamp) DescriptorSet 0
@@ -447,11 +444,11 @@ Shader version: 450
Decorate 124(g_tTexcdf4) DescriptorSet 0
Decorate 133(g_tTexcdi4) DescriptorSet 0
Decorate 142(g_tTexcdu4) DescriptorSet 0
Decorate 164(@entryPointOutput_Pos) BuiltIn Position
Decorate 167(g_tTex1df4a) DescriptorSet 0
Decorate 167(g_tTex1df4a) Binding 1
MemberDecorate 168(PerVertex_out) 0 BuiltIn Position
Decorate 168(PerVertex_out) Block
Decorate 158(@entryPointOutput_Pos) BuiltIn Position
Decorate 161(g_tTex1df4a) DescriptorSet 0
Decorate 161(g_tTex1df4a) Binding 1
MemberDecorate 162(PerVertex_out) 0 BuiltIn Position
Decorate 162(PerVertex_out) Block
2: TypeVoid
3: TypeFunction 2
6: TypeFloat 32
@@ -534,23 +531,21 @@ Shader version: 450
141: TypePointer UniformConstant 140
142(g_tTexcdu4): 141(ptr) Variable UniformConstant
145: TypeSampledImage 140
148(VS_OUTPUT): TypeStruct 7(fvec4)
149: TypePointer Function 148(VS_OUTPUT)
151: 27(int) Constant 0
152: 6(float) Constant 0
153: 7(fvec4) ConstantComposite 152 152 152 152
156: TypePointer Function 8(VS_OUTPUT)
163: TypePointer Output 7(fvec4)
164(@entryPointOutput_Pos): 163(ptr) Variable Output
167(g_tTex1df4a): 15(ptr) Variable UniformConstant
168(PerVertex_out): TypeStruct 7(fvec4)
169: TypePointer Output 168(PerVertex_out)
170(PerVertex_out): 169(ptr) Variable Output
148: TypePointer Function 8(VS_OUTPUT)
150: 27(int) Constant 0
151: 6(float) Constant 0
152: 7(fvec4) ConstantComposite 151 151 151 151
157: TypePointer Output 7(fvec4)
158(@entryPointOutput_Pos): 157(ptr) Variable Output
161(g_tTex1df4a): 15(ptr) Variable UniformConstant
162(PerVertex_out): TypeStruct 7(fvec4)
163: TypePointer Output 162(PerVertex_out)
164(PerVertex_out): 163(ptr) Variable Output
4(main): 2 Function None 3
5: Label
165:8(VS_OUTPUT) FunctionCall 10(@main()
166: 7(fvec4) CompositeExtract 165 0
Store 164(@entryPointOutput_Pos) 166
159:8(VS_OUTPUT) FunctionCall 10(@main()
160: 7(fvec4) CompositeExtract 159 0
Store 158(@entryPointOutput_Pos) 160
Return
FunctionEnd
10(@main():8(VS_OUTPUT) Function None 9
@@ -567,8 +562,7 @@ Shader version: 450
121(txval40): 12(ptr) Variable Function
130(txval41): 29(ptr) Variable Function
139(txval42): 42(ptr) Variable Function
150(vsout): 149(ptr) Variable Function
157: 156(ptr) Variable Function
149(vsout): 148(ptr) Variable Function
17: 14 Load 16(g_tTex1df4)
21: 18 Load 20(g_sSamp)
23: 22 SampledImage 17 21
@@ -629,12 +623,8 @@ Shader version: 450
146: 145 SampledImage 143 144
147: 41(ivec4) ImageSampleExplicitLod 146 119 Lod 25
Store 139(txval42) 147
154: 12(ptr) AccessChain 150(vsout) 151
Store 154 153
155:148(VS_OUTPUT) Load 150(vsout)
158: 7(fvec4) CompositeExtract 155 0
159: 12(ptr) AccessChain 157 151
Store 159 158
160:8(VS_OUTPUT) Load 157
ReturnValue 160
153: 12(ptr) AccessChain 149(vsout) 150
Store 153 152
154:8(VS_OUTPUT) Load 149(vsout)
ReturnValue 154
FunctionEnd