SPV: Fix 'location' inheritance bug.

This commit is contained in:
John Kessenich
2016-02-19 12:21:50 -07:00
parent 5047c6f7a7
commit 0967748fbc
4 changed files with 37 additions and 14 deletions

View File

@@ -1,5 +1,5 @@
spv.430.vert
Warning, version 430 is not yet complete; most version-specific features are present, but some are missing.
Warning, version 450 is not yet complete; most version-specific features are present, but some are missing.
Linked vertex stage:
@@ -7,14 +7,14 @@ Linked vertex stage:
// Module Version 10000
// Generated by (magic number): 80001
// Id's are bound by 63
// Id's are bound by 66
Capability Shader
Capability ClipDistance
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint Vertex 4 "main" 12 23 34 38 41 42 62
Source GLSL 430
EntryPoint Vertex 4 "main" 12 23 34 38 41 42 62 65
Source GLSL 450
Name 4 "main"
Name 10 "gl_PerVertex"
MemberName 10(gl_PerVertex) 0 "gl_ClipDistance"
@@ -42,6 +42,9 @@ Linked vertex stage:
MemberName 60(SS) 1 "s"
MemberName 60(SS) 2 "c"
Name 62 "var"
Name 63 "MS"
MemberName 63(MS) 0 "f"
Name 65 "outMS"
MemberDecorate 10(gl_PerVertex) 0 BuiltIn ClipDistance
Decorate 10(gl_PerVertex) Block
Decorate 34(badorder3) Flat
@@ -72,6 +75,8 @@ Linked vertex stage:
MemberDecorate 60(SS) 1 Location 1
MemberDecorate 60(SS) 2 Flat
MemberDecorate 60(SS) 2 Location 4
MemberDecorate 63(MS) 0 Location 17
Decorate 63(MS) Block
2: TypeVoid
3: TypeFunction 2
6: TypeFloat 32
@@ -121,6 +126,9 @@ Linked vertex stage:
60(SS): TypeStruct 19(fvec4) 59(S) 19(fvec4)
61: TypePointer Output 60(SS)
62(var): 61(ptr) Variable Output
63(MS): TypeStruct 6(float)
64: TypePointer Output 63(MS)
65(outMS): 64(ptr) Variable Output
4(main): 2 Function None 3
5: Label
18: 17(ptr) AccessChain 12 14 15