The memory model group agreed to these definitions for how to map GLSL barrier, memoryBarrier, etc. With HLSL following suit.
170 lines
8.8 KiB
Text
170 lines
8.8 KiB
Text
spv.400.tesc
|
|
// Module Version 10000
|
|
// Generated by (magic number): 80002
|
|
// Id's are bound by 92
|
|
|
|
Capability Tessellation
|
|
Capability TessellationPointSize
|
|
Capability ClipDistance
|
|
1: ExtInstImport "GLSL.std.450"
|
|
MemoryModel Logical GLSL450
|
|
EntryPoint TessellationControl 4 "main" 24 41 44 47 53 67 72 78 82 83 86 87 90 91
|
|
ExecutionMode 4 OutputVertices 4
|
|
Source GLSL 400
|
|
SourceExtension "GL_ARB_separate_shader_objects"
|
|
Name 4 "main"
|
|
Name 12 "a"
|
|
Name 17 "p"
|
|
Name 20 "gl_PerVertex"
|
|
MemberName 20(gl_PerVertex) 0 "gl_Position"
|
|
MemberName 20(gl_PerVertex) 1 "gl_PointSize"
|
|
MemberName 20(gl_PerVertex) 2 "gl_ClipDistance"
|
|
Name 24 "gl_in"
|
|
Name 31 "ps"
|
|
Name 35 "cd"
|
|
Name 39 "pvi"
|
|
Name 41 "gl_PatchVerticesIn"
|
|
Name 43 "pid"
|
|
Name 44 "gl_PrimitiveID"
|
|
Name 46 "iid"
|
|
Name 47 "gl_InvocationID"
|
|
Name 50 "gl_PerVertex"
|
|
MemberName 50(gl_PerVertex) 0 "gl_Position"
|
|
MemberName 50(gl_PerVertex) 1 "gl_PointSize"
|
|
MemberName 50(gl_PerVertex) 2 "gl_ClipDistance"
|
|
Name 53 "gl_out"
|
|
Name 67 "gl_TessLevelOuter"
|
|
Name 72 "gl_TessLevelInner"
|
|
Name 77 "outa"
|
|
Name 78 "patchOut"
|
|
Name 82 "inb"
|
|
Name 83 "ind"
|
|
Name 86 "ivla"
|
|
Name 87 "ivlb"
|
|
Name 90 "ovla"
|
|
Name 91 "ovlb"
|
|
MemberDecorate 20(gl_PerVertex) 0 BuiltIn Position
|
|
MemberDecorate 20(gl_PerVertex) 1 BuiltIn PointSize
|
|
MemberDecorate 20(gl_PerVertex) 2 BuiltIn ClipDistance
|
|
Decorate 20(gl_PerVertex) Block
|
|
Decorate 41(gl_PatchVerticesIn) BuiltIn PatchVertices
|
|
Decorate 44(gl_PrimitiveID) BuiltIn PrimitiveId
|
|
Decorate 47(gl_InvocationID) BuiltIn InvocationId
|
|
MemberDecorate 50(gl_PerVertex) 0 BuiltIn Position
|
|
MemberDecorate 50(gl_PerVertex) 1 BuiltIn PointSize
|
|
MemberDecorate 50(gl_PerVertex) 2 BuiltIn ClipDistance
|
|
Decorate 50(gl_PerVertex) Block
|
|
Decorate 67(gl_TessLevelOuter) Patch
|
|
Decorate 67(gl_TessLevelOuter) BuiltIn TessLevelOuter
|
|
Decorate 72(gl_TessLevelInner) Patch
|
|
Decorate 72(gl_TessLevelInner) BuiltIn TessLevelInner
|
|
Decorate 78(patchOut) Patch
|
|
Decorate 86(ivla) Location 3
|
|
Decorate 87(ivlb) Location 4
|
|
Decorate 90(ovla) Location 3
|
|
Decorate 91(ovlb) Location 4
|
|
2: TypeVoid
|
|
3: TypeFunction 2
|
|
6: TypeInt 32 0
|
|
7: 6(int) Constant 2
|
|
8: 6(int) Constant 4
|
|
9: 6(int) Constant 0
|
|
10: TypeInt 32 1
|
|
11: TypePointer Function 10(int)
|
|
13: 10(int) Constant 5392
|
|
14: TypeFloat 32
|
|
15: TypeVector 14(float) 4
|
|
16: TypePointer Function 15(fvec4)
|
|
18: 6(int) Constant 3
|
|
19: TypeArray 14(float) 18
|
|
20(gl_PerVertex): TypeStruct 15(fvec4) 14(float) 19
|
|
21: 6(int) Constant 32
|
|
22: TypeArray 20(gl_PerVertex) 21
|
|
23: TypePointer Input 22
|
|
24(gl_in): 23(ptr) Variable Input
|
|
25: 10(int) Constant 1
|
|
26: 10(int) Constant 0
|
|
27: TypePointer Input 15(fvec4)
|
|
30: TypePointer Function 14(float)
|
|
32: TypePointer Input 14(float)
|
|
36: 10(int) Constant 2
|
|
40: TypePointer Input 10(int)
|
|
41(gl_PatchVerticesIn): 40(ptr) Variable Input
|
|
44(gl_PrimitiveID): 40(ptr) Variable Input
|
|
47(gl_InvocationID): 40(ptr) Variable Input
|
|
49: TypeArray 14(float) 7
|
|
50(gl_PerVertex): TypeStruct 15(fvec4) 14(float) 49
|
|
51: TypeArray 50(gl_PerVertex) 8
|
|
52: TypePointer Output 51
|
|
53(gl_out): 52(ptr) Variable Output
|
|
56: TypePointer Output 15(fvec4)
|
|
60: TypePointer Output 14(float)
|
|
65: TypeArray 14(float) 8
|
|
66: TypePointer Output 65
|
|
67(gl_TessLevelOuter): 66(ptr) Variable Output
|
|
68: 10(int) Constant 3
|
|
69: 14(float) Constant 1078774989
|
|
71: TypePointer Output 49
|
|
72(gl_TessLevelInner): 71(ptr) Variable Output
|
|
73: 14(float) Constant 1067869798
|
|
75: TypeArray 10(int) 8
|
|
76: TypePointer Private 75
|
|
77(outa): 76(ptr) Variable Private
|
|
78(patchOut): 56(ptr) Variable Output
|
|
79: TypeVector 14(float) 2
|
|
80: TypeArray 79(fvec2) 21
|
|
81: TypePointer Input 80
|
|
82(inb): 81(ptr) Variable Input
|
|
83(ind): 81(ptr) Variable Input
|
|
84: TypeArray 15(fvec4) 21
|
|
85: TypePointer Input 84
|
|
86(ivla): 85(ptr) Variable Input
|
|
87(ivlb): 85(ptr) Variable Input
|
|
88: TypeArray 15(fvec4) 8
|
|
89: TypePointer Output 88
|
|
90(ovla): 89(ptr) Variable Output
|
|
91(ovlb): 89(ptr) Variable Output
|
|
4(main): 2 Function None 3
|
|
5: Label
|
|
12(a): 11(ptr) Variable Function
|
|
17(p): 16(ptr) Variable Function
|
|
31(ps): 30(ptr) Variable Function
|
|
35(cd): 30(ptr) Variable Function
|
|
39(pvi): 11(ptr) Variable Function
|
|
43(pid): 11(ptr) Variable Function
|
|
46(iid): 11(ptr) Variable Function
|
|
ControlBarrier 7 8 9
|
|
Store 12(a) 13
|
|
28: 27(ptr) AccessChain 24(gl_in) 25 26
|
|
29: 15(fvec4) Load 28
|
|
Store 17(p) 29
|
|
33: 32(ptr) AccessChain 24(gl_in) 25 25
|
|
34: 14(float) Load 33
|
|
Store 31(ps) 34
|
|
37: 32(ptr) AccessChain 24(gl_in) 25 36 36
|
|
38: 14(float) Load 37
|
|
Store 35(cd) 38
|
|
42: 10(int) Load 41(gl_PatchVerticesIn)
|
|
Store 39(pvi) 42
|
|
45: 10(int) Load 44(gl_PrimitiveID)
|
|
Store 43(pid) 45
|
|
48: 10(int) Load 47(gl_InvocationID)
|
|
Store 46(iid) 48
|
|
54: 10(int) Load 47(gl_InvocationID)
|
|
55: 15(fvec4) Load 17(p)
|
|
57: 56(ptr) AccessChain 53(gl_out) 54 26
|
|
Store 57 55
|
|
58: 10(int) Load 47(gl_InvocationID)
|
|
59: 14(float) Load 31(ps)
|
|
61: 60(ptr) AccessChain 53(gl_out) 58 25
|
|
Store 61 59
|
|
62: 10(int) Load 47(gl_InvocationID)
|
|
63: 14(float) Load 35(cd)
|
|
64: 60(ptr) AccessChain 53(gl_out) 62 36 25
|
|
Store 64 63
|
|
70: 60(ptr) AccessChain 67(gl_TessLevelOuter) 68
|
|
Store 70 69
|
|
74: 60(ptr) AccessChain 72(gl_TessLevelInner) 25
|
|
Store 74 73
|
|
Return
|
|
FunctionEnd
|