SPV: Implement Vulkan version of GLSL (KHR_vulkan_glsl).

This commit is contained in:
John Kessenich
2016-02-15 20:58:50 -07:00
parent 019f08fcd8
commit 6c292d3ba7
200 changed files with 7841 additions and 5577 deletions

View File

@@ -7,14 +7,14 @@ Linked fragment stage:
// Module Version 10000
// Generated by (magic number): 80001
// Id's are bound by 101
// Id's are bound by 100
Capability Shader
Capability InterpolationFunction
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint Fragment 4 "main" 13 24 33 41 99
ExecutionMode 4 OriginLowerLeft
EntryPoint Fragment 4 "main" 13 24 33 41 47 72 98
ExecutionMode 4 OriginUpperLeft
Source GLSL 450
Name 4 "main"
Name 9 "f4"
@@ -23,8 +23,10 @@ Linked fragment stage:
Name 33 "if3"
Name 41 "if4"
Name 47 "samp"
Name 73 "offset"
Name 99 "fragColor"
Name 72 "offset"
Name 98 "fragColor"
Decorate 47(samp) Flat
Decorate 72(offset) Flat
2: TypeVoid
3: TypeFunction 2
6: TypeFloat 32
@@ -46,12 +48,11 @@ Linked fragment stage:
40: TypePointer Input 7(fvec4)
41(if4): 40(ptr) Variable Input
45: TypeInt 32 1
46: TypePointer UniformConstant 45(int)
47(samp): 46(ptr) Variable UniformConstant
72: TypePointer UniformConstant 22(fvec2)
73(offset): 72(ptr) Variable UniformConstant
98: TypePointer Output 7(fvec4)
99(fragColor): 98(ptr) Variable Output
46: TypePointer Input 45(int)
47(samp): 46(ptr) Variable Input
72(offset): 23(ptr) Variable Input
97: TypePointer Output 7(fvec4)
98(fragColor): 97(ptr) Variable Output
4(main): 2 Function None 3
5: Label
9(f4): 8(ptr) Variable Function
@@ -108,35 +109,35 @@ Linked fragment stage:
70: 7(fvec4) Load 9(f4)
71: 7(fvec4) FAdd 70 69
Store 9(f4) 71
74: 22(fvec2) Load 73(offset)
75: 6(float) ExtInst 1(GLSL.std.450) 78(InterpolateAtOffset) 13(if1) 74
76: 17(ptr) AccessChain 9(f4) 16
77: 6(float) Load 76
78: 6(float) FAdd 77 75
79: 17(ptr) AccessChain 9(f4) 16
Store 79 78
80: 22(fvec2) Load 73(offset)
81: 22(fvec2) ExtInst 1(GLSL.std.450) 78(InterpolateAtOffset) 24(if2) 80
82: 7(fvec4) Load 9(f4)
83: 22(fvec2) VectorShuffle 82 82 0 1
84: 22(fvec2) FAdd 83 81
85: 7(fvec4) Load 9(f4)
86: 7(fvec4) VectorShuffle 85 84 4 5 2 3
Store 9(f4) 86
87: 22(fvec2) Load 73(offset)
88: 31(fvec3) ExtInst 1(GLSL.std.450) 78(InterpolateAtOffset) 33(if3) 87
89: 7(fvec4) Load 9(f4)
90: 31(fvec3) VectorShuffle 89 89 0 1 2
91: 31(fvec3) FAdd 90 88
92: 7(fvec4) Load 9(f4)
93: 7(fvec4) VectorShuffle 92 91 4 5 6 3
Store 9(f4) 93
94: 22(fvec2) Load 73(offset)
95: 7(fvec4) ExtInst 1(GLSL.std.450) 78(InterpolateAtOffset) 41(if4) 94
96: 7(fvec4) Load 9(f4)
97: 7(fvec4) FAdd 96 95
Store 9(f4) 97
100: 7(fvec4) Load 9(f4)
Store 99(fragColor) 100
73: 22(fvec2) Load 72(offset)
74: 6(float) ExtInst 1(GLSL.std.450) 78(InterpolateAtOffset) 13(if1) 73
75: 17(ptr) AccessChain 9(f4) 16
76: 6(float) Load 75
77: 6(float) FAdd 76 74
78: 17(ptr) AccessChain 9(f4) 16
Store 78 77
79: 22(fvec2) Load 72(offset)
80: 22(fvec2) ExtInst 1(GLSL.std.450) 78(InterpolateAtOffset) 24(if2) 79
81: 7(fvec4) Load 9(f4)
82: 22(fvec2) VectorShuffle 81 81 0 1
83: 22(fvec2) FAdd 82 80
84: 7(fvec4) Load 9(f4)
85: 7(fvec4) VectorShuffle 84 83 4 5 2 3
Store 9(f4) 85
86: 22(fvec2) Load 72(offset)
87: 31(fvec3) ExtInst 1(GLSL.std.450) 78(InterpolateAtOffset) 33(if3) 86
88: 7(fvec4) Load 9(f4)
89: 31(fvec3) VectorShuffle 88 88 0 1 2
90: 31(fvec3) FAdd 89 87
91: 7(fvec4) Load 9(f4)
92: 7(fvec4) VectorShuffle 91 90 4 5 6 3
Store 9(f4) 92
93: 22(fvec2) Load 72(offset)
94: 7(fvec4) ExtInst 1(GLSL.std.450) 78(InterpolateAtOffset) 41(if4) 93
95: 7(fvec4) Load 9(f4)
96: 7(fvec4) FAdd 95 94
Store 9(f4) 96
99: 7(fvec4) Load 9(f4)
Store 98(fragColor) 99
Return
FunctionEnd