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.gather.basic.dx10.vert
Shader version: 450
0:? Sequence
0:28 Function Definition: @main( (temp structure{temp 4-component vector of float Position Pos})
0:28 Function Definition: @main( (temp structure{temp 4-component vector of float Pos})
0:28 Function Parameters:
0:? Sequence
0:33 Sequence
@ -85,8 +85,8 @@ Shader version: 450
0:28 Sequence
0:28 move second child to first child (temp 4-component vector of float)
0:? '@entryPointOutput_Pos' (out 4-component vector of float Position)
0:28 Pos: direct index for structure (temp 4-component vector of float Position)
0:28 Function Call: @main( (temp structure{temp 4-component vector of float Position Pos})
0:28 Pos: direct index for structure (temp 4-component vector of float)
0:28 Function Call: @main( (temp structure{temp 4-component vector of float Pos})
0:28 Constant:
0:28 0 (const int)
0:? Linker Objects
@ -113,7 +113,7 @@ Linked vertex stage:
Shader version: 450
0:? Sequence
0:28 Function Definition: @main( (temp structure{temp 4-component vector of float Position Pos})
0:28 Function Definition: @main( (temp structure{temp 4-component vector of float Pos})
0:28 Function Parameters:
0:? Sequence
0:33 Sequence
@ -197,8 +197,8 @@ Shader version: 450
0:28 Sequence
0:28 move second child to first child (temp 4-component vector of float)
0:? '@entryPointOutput_Pos' (out 4-component vector of float Position)
0:28 Pos: direct index for structure (temp 4-component vector of float Position)
0:28 Function Call: @main( (temp structure{temp 4-component vector of float Position Pos})
0:28 Pos: direct index for structure (temp 4-component vector of float)
0:28 Function Call: @main( (temp structure{temp 4-component vector of float Pos})
0:28 Constant:
0:28 0 (const int)
0:? Linker Objects
@ -221,13 +221,13 @@ Shader version: 450
// Module Version 10000
// Generated by (magic number): 80001
// Id's are bound by 135
// Id's are bound by 129
Capability Shader
Capability Sampled1D
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint Vertex 4 "main" 109 134
EntryPoint Vertex 4 "main" 103 128
Name 4 "main"
Name 8 "VS_OUTPUT"
MemberName 8(VS_OUTPUT) 0 "Pos"
@ -245,22 +245,19 @@ Shader version: 450
Name 74 "g_tTexcdi4"
Name 81 "txval42"
Name 84 "g_tTexcdu4"
Name 94 "VS_OUTPUT"
MemberName 94(VS_OUTPUT) 0 "Pos"
Name 96 "vsout"
Name 109 "@entryPointOutput_Pos"
Name 112 "g_sSamp2d"
Name 115 "g_tTex1df4a"
Name 116 "g_tTex1df4"
Name 119 "g_tTex1di4"
Name 122 "g_tTex1du4"
Name 125 "g_tTex3df4"
Name 128 "g_tTex3di4"
Name 131 "g_tTex3du4"
Name 132 "PerVertex_out"
MemberName 132(PerVertex_out) 0 "@entryPointOutput_Pos"
Name 134 "PerVertex_out"
MemberDecorate 8(VS_OUTPUT) 0 BuiltIn Position
Name 95 "vsout"
Name 103 "@entryPointOutput_Pos"
Name 106 "g_sSamp2d"
Name 109 "g_tTex1df4a"
Name 110 "g_tTex1df4"
Name 113 "g_tTex1di4"
Name 116 "g_tTex1du4"
Name 119 "g_tTex3df4"
Name 122 "g_tTex3di4"
Name 125 "g_tTex3du4"
Name 126 "PerVertex_out"
MemberName 126(PerVertex_out) 0 "@entryPointOutput_Pos"
Name 128 "PerVertex_out"
Decorate 16(g_tTex2df4) DescriptorSet 0
Decorate 20(g_sSamp) DescriptorSet 0
Decorate 20(g_sSamp) Binding 0
@ -269,19 +266,19 @@ Shader version: 450
Decorate 63(g_tTexcdf4) DescriptorSet 0
Decorate 74(g_tTexcdi4) DescriptorSet 0
Decorate 84(g_tTexcdu4) DescriptorSet 0
Decorate 109(@entryPointOutput_Pos) BuiltIn Position
Decorate 112(g_sSamp2d) DescriptorSet 0
Decorate 115(g_tTex1df4a) DescriptorSet 0
Decorate 115(g_tTex1df4a) Binding 1
Decorate 116(g_tTex1df4) DescriptorSet 0
Decorate 116(g_tTex1df4) Binding 0
Decorate 119(g_tTex1di4) DescriptorSet 0
Decorate 122(g_tTex1du4) DescriptorSet 0
Decorate 125(g_tTex3df4) DescriptorSet 0
Decorate 128(g_tTex3di4) DescriptorSet 0
Decorate 131(g_tTex3du4) DescriptorSet 0
MemberDecorate 132(PerVertex_out) 0 BuiltIn Position
Decorate 132(PerVertex_out) Block
Decorate 103(@entryPointOutput_Pos) BuiltIn Position
Decorate 106(g_sSamp2d) DescriptorSet 0
Decorate 109(g_tTex1df4a) DescriptorSet 0
Decorate 109(g_tTex1df4a) Binding 1
Decorate 110(g_tTex1df4) DescriptorSet 0
Decorate 110(g_tTex1df4) Binding 0
Decorate 113(g_tTex1di4) DescriptorSet 0
Decorate 116(g_tTex1du4) DescriptorSet 0
Decorate 119(g_tTex3df4) DescriptorSet 0
Decorate 122(g_tTex3di4) DescriptorSet 0
Decorate 125(g_tTex3du4) DescriptorSet 0
MemberDecorate 126(PerVertex_out) 0 BuiltIn Position
Decorate 126(PerVertex_out) Block
2: TypeVoid
3: TypeFunction 2
6: TypeFloat 32
@ -340,41 +337,39 @@ Shader version: 450
90: 6(float) Constant 1061997773
91: 6(float) Constant 1063675494
92: 68(fvec3) ConstantComposite 89 90 91
94(VS_OUTPUT): TypeStruct 7(fvec4)
95: TypePointer Function 94(VS_OUTPUT)
97: 6(float) Constant 0
98: 7(fvec4) ConstantComposite 97 97 97 97
101: TypePointer Function 8(VS_OUTPUT)
108: TypePointer Output 7(fvec4)
109(@entryPointOutput_Pos): 108(ptr) Variable Output
112(g_sSamp2d): 19(ptr) Variable UniformConstant
113: TypeImage 6(float) 1D sampled format:Unknown
114: TypePointer UniformConstant 113
115(g_tTex1df4a): 114(ptr) Variable UniformConstant
116(g_tTex1df4): 114(ptr) Variable UniformConstant
117: TypeImage 28(int) 1D sampled format:Unknown
94: TypePointer Function 8(VS_OUTPUT)
96: 6(float) Constant 0
97: 7(fvec4) ConstantComposite 96 96 96 96
102: TypePointer Output 7(fvec4)
103(@entryPointOutput_Pos): 102(ptr) Variable Output
106(g_sSamp2d): 19(ptr) Variable UniformConstant
107: TypeImage 6(float) 1D sampled format:Unknown
108: TypePointer UniformConstant 107
109(g_tTex1df4a): 108(ptr) Variable UniformConstant
110(g_tTex1df4): 108(ptr) Variable UniformConstant
111: TypeImage 28(int) 1D sampled format:Unknown
112: TypePointer UniformConstant 111
113(g_tTex1di4): 112(ptr) Variable UniformConstant
114: TypeImage 45(int) 1D sampled format:Unknown
115: TypePointer UniformConstant 114
116(g_tTex1du4): 115(ptr) Variable UniformConstant
117: TypeImage 6(float) 3D sampled format:Unknown
118: TypePointer UniformConstant 117
119(g_tTex1di4): 118(ptr) Variable UniformConstant
120: TypeImage 45(int) 1D sampled format:Unknown
119(g_tTex3df4): 118(ptr) Variable UniformConstant
120: TypeImage 28(int) 3D sampled format:Unknown
121: TypePointer UniformConstant 120
122(g_tTex1du4): 121(ptr) Variable UniformConstant
123: TypeImage 6(float) 3D sampled format:Unknown
122(g_tTex3di4): 121(ptr) Variable UniformConstant
123: TypeImage 45(int) 3D sampled format:Unknown
124: TypePointer UniformConstant 123
125(g_tTex3df4): 124(ptr) Variable UniformConstant
126: TypeImage 28(int) 3D sampled format:Unknown
127: TypePointer UniformConstant 126
128(g_tTex3di4): 127(ptr) Variable UniformConstant
129: TypeImage 45(int) 3D sampled format:Unknown
130: TypePointer UniformConstant 129
131(g_tTex3du4): 130(ptr) Variable UniformConstant
132(PerVertex_out): TypeStruct 7(fvec4)
133: TypePointer Output 132(PerVertex_out)
134(PerVertex_out): 133(ptr) Variable Output
125(g_tTex3du4): 124(ptr) Variable UniformConstant
126(PerVertex_out): TypeStruct 7(fvec4)
127: TypePointer Output 126(PerVertex_out)
128(PerVertex_out): 127(ptr) Variable Output
4(main): 2 Function None 3
5: Label
110:8(VS_OUTPUT) FunctionCall 10(@main()
111: 7(fvec4) CompositeExtract 110 0
Store 109(@entryPointOutput_Pos) 111
104:8(VS_OUTPUT) FunctionCall 10(@main()
105: 7(fvec4) CompositeExtract 104 0
Store 103(@entryPointOutput_Pos) 105
Return
FunctionEnd
10(@main():8(VS_OUTPUT) Function None 9
@ -385,8 +380,7 @@ Shader version: 450
60(txval40): 12(ptr) Variable Function
71(txval41): 32(ptr) Variable Function
81(txval42): 47(ptr) Variable Function
96(vsout): 95(ptr) Variable Function
102: 101(ptr) Variable Function
95(vsout): 94(ptr) Variable Function
17: 14 Load 16(g_tTex2df4)
21: 18 Load 20(g_sSamp)
23: 22 SampledImage 17 21
@ -417,12 +411,8 @@ Shader version: 450
88: 87 SampledImage 85 86
93: 46(ivec4) ImageGather 88 92 29
Store 81(txval42) 93
99: 12(ptr) AccessChain 96(vsout) 29
Store 99 98
100:94(VS_OUTPUT) Load 96(vsout)
103: 7(fvec4) CompositeExtract 100 0
104: 12(ptr) AccessChain 102 29
Store 104 103
105:8(VS_OUTPUT) Load 102
ReturnValue 105
98: 12(ptr) AccessChain 95(vsout) 29
Store 98 97
99:8(VS_OUTPUT) Load 95(vsout)
ReturnValue 99
FunctionEnd