HLSL: Fix #1154: Support PointSize, as an attribute.

This commit is contained in:
John Kessenich
2017-12-06 07:33:36 -07:00
parent b0159f8565
commit cc951f8183
9 changed files with 255 additions and 5 deletions

View File

@@ -0,0 +1,69 @@
hlsl.PointSize.vert
Shader version: 500
0:? Sequence
0:2 Function Definition: @main( ( temp float)
0:2 Function Parameters:
0:? Sequence
0:3 Branch: Return with expression
0:3 Constant:
0:3 2.300000
0:2 Function Definition: main( ( temp void)
0:2 Function Parameters:
0:? Sequence
0:2 move second child to first child ( temp float)
0:? '@entryPointOutput' ( out float PointSize)
0:2 Function Call: @main( ( temp float)
0:? Linker Objects
0:? '@entryPointOutput' ( out float PointSize)
Linked vertex stage:
Shader version: 500
0:? Sequence
0:2 Function Definition: @main( ( temp float)
0:2 Function Parameters:
0:? Sequence
0:3 Branch: Return with expression
0:3 Constant:
0:3 2.300000
0:2 Function Definition: main( ( temp void)
0:2 Function Parameters:
0:? Sequence
0:2 move second child to first child ( temp float)
0:? '@entryPointOutput' ( out float PointSize)
0:2 Function Call: @main( ( temp float)
0:? Linker Objects
0:? '@entryPointOutput' ( out float PointSize)
// Module Version 10000
// Generated by (magic number): 80002
// Id's are bound by 16
Capability Shader
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint Vertex 4 "main" 14
Source HLSL 500
Name 4 "main"
Name 8 "@main("
Name 14 "@entryPointOutput"
Decorate 14(@entryPointOutput) BuiltIn PointSize
2: TypeVoid
3: TypeFunction 2
6: TypeFloat 32
7: TypeFunction 6(float)
10: 6(float) Constant 1075000115
13: TypePointer Output 6(float)
14(@entryPointOutput): 13(ptr) Variable Output
4(main): 2 Function None 3
5: Label
15: 6(float) FunctionCall 8(@main()
Store 14(@entryPointOutput) 15
Return
FunctionEnd
8(@main(): 6(float) Function None 7
9: Label
ReturnValue 10
FunctionEnd