Don't remove SPIR-V blocks before codegen.
A removed block releases its instructions, so Module::idToInstruction suddenly contains dangling references. The original motivation for block removal was to skip some unreachable blocks, but that's already achieved by InReadableOrder.cpp. Also updated stale comments.
This commit is contained in:
@@ -1412,9 +1412,11 @@ bool TGlslangToSpvTraverser::visitLoop(glslang::TVisit /* visit */, glslang::TIn
|
|||||||
builder.createBranch(&blocks.head);
|
builder.createBranch(&blocks.head);
|
||||||
} else {
|
} else {
|
||||||
// Spec requires back edges to target header blocks, and every header
|
// Spec requires back edges to target header blocks, and every header
|
||||||
// block must dominate its merge block. Create an empty header block
|
// block must dominate its merge block. Make a header block first to
|
||||||
// here to ensure these conditions are met even when body contains
|
// ensure these conditions are met. By definition, it will contain
|
||||||
// non-trivial control flow.
|
// OpLoopMerge, followed by a block-ending branch. But we don't want to
|
||||||
|
// put any other body instructions in it, since the body may have
|
||||||
|
// arbitrary instructions, including merges of its own.
|
||||||
builder.setBuildPoint(&blocks.head);
|
builder.setBuildPoint(&blocks.head);
|
||||||
builder.createLoopMerge(&blocks.merge, &blocks.continue_target, spv::LoopControlMaskNone);
|
builder.createLoopMerge(&blocks.merge, &blocks.continue_target, spv::LoopControlMaskNone);
|
||||||
builder.createBranch(&blocks.body);
|
builder.createBranch(&blocks.body);
|
||||||
@@ -1435,12 +1437,9 @@ bool TGlslangToSpvTraverser::visitLoop(glslang::TVisit /* visit */, glslang::TIn
|
|||||||
builder.accessChainLoad(convertGlslangToSpvType(node->getTest()->getType()));
|
builder.accessChainLoad(convertGlslangToSpvType(node->getTest()->getType()));
|
||||||
builder.createConditionalBranch(condition, &blocks.head, &blocks.merge);
|
builder.createConditionalBranch(condition, &blocks.head, &blocks.merge);
|
||||||
} else {
|
} else {
|
||||||
// TODO: unless there was a break instruction somewhere in the body,
|
// TODO: unless there was a break/return/discard instruction
|
||||||
// this is an infinite loop, so we should abort code generation with
|
// somewhere in the body, this is an infinite loop, so we should
|
||||||
// a warning. As it stands now, nothing will jump to the merge
|
// issue a warning.
|
||||||
// block, and it may be dropped as unreachable by the SPIR-V dumper.
|
|
||||||
// That, in turn, will result in a non-existing %ID in the LoopMerge
|
|
||||||
// above.
|
|
||||||
builder.createBranch(&blocks.head);
|
builder.createBranch(&blocks.head);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -855,24 +855,10 @@ void Builder::leaveFunction()
|
|||||||
|
|
||||||
// If our function did not contain a return, add a return void now.
|
// If our function did not contain a return, add a return void now.
|
||||||
if (! block->isTerminated()) {
|
if (! block->isTerminated()) {
|
||||||
|
if (function.getReturnType() == makeVoidType())
|
||||||
// Whether we're in an unreachable (non-entry) block.
|
makeReturn(true);
|
||||||
bool unreachable = function.getEntryBlock() != block && block->getPredecessors().empty();
|
else {
|
||||||
|
makeReturn(true, createUndefined(function.getReturnType()));
|
||||||
if (unreachable) {
|
|
||||||
// Given that this block is at the end of a function, it must be right after an
|
|
||||||
// explicit return, just remove it.
|
|
||||||
function.removeBlock(block);
|
|
||||||
} else {
|
|
||||||
// We'll add a return instruction at the end of the current block,
|
|
||||||
// which for a non-void function is really error recovery (?), as the source
|
|
||||||
// being translated should have had an explicit return, which would have been
|
|
||||||
// followed by an unreachable block, which was handled above.
|
|
||||||
if (function.getReturnType() == makeVoidType())
|
|
||||||
makeReturn(true);
|
|
||||||
else {
|
|
||||||
makeReturn(true, createUndefined(function.getReturnType()));
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -205,12 +205,6 @@ public:
|
|||||||
|
|
||||||
void dump(std::vector<unsigned int>& out) const
|
void dump(std::vector<unsigned int>& out) const
|
||||||
{
|
{
|
||||||
// skip the degenerate unreachable blocks
|
|
||||||
// TODO: code gen: skip all unreachable blocks (transitive closure)
|
|
||||||
// (but, until that's done safer to keep non-degenerate unreachable blocks, in case others depend on something)
|
|
||||||
if (unreachable && instructions.size() <= 2)
|
|
||||||
return;
|
|
||||||
|
|
||||||
instructions[0]->dump(out);
|
instructions[0]->dump(out);
|
||||||
for (int i = 0; i < (int)localVariables.size(); ++i)
|
for (int i = 0; i < (int)localVariables.size(); ++i)
|
||||||
localVariables[i]->dump(out);
|
localVariables[i]->dump(out);
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ Linked fragment stage:
|
|||||||
|
|
||||||
// Module Version 10000
|
// Module Version 10000
|
||||||
// Generated by (magic number): 80001
|
// Generated by (magic number): 80001
|
||||||
// Id's are bound by 47
|
// Id's are bound by 48
|
||||||
|
|
||||||
Capability Shader
|
Capability Shader
|
||||||
1: ExtInstImport "GLSL.std.450"
|
1: ExtInstImport "GLSL.std.450"
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ Linked fragment stage:
|
|||||||
|
|
||||||
// Module Version 10000
|
// Module Version 10000
|
||||||
// Generated by (magic number): 80001
|
// Generated by (magic number): 80001
|
||||||
// Id's are bound by 100
|
// Id's are bound by 101
|
||||||
|
|
||||||
Capability Shader
|
Capability Shader
|
||||||
1: ExtInstImport "GLSL.std.450"
|
1: ExtInstImport "GLSL.std.450"
|
||||||
@@ -23,40 +23,40 @@ Linked fragment stage:
|
|||||||
Name 43 "k"
|
Name 43 "k"
|
||||||
Name 55 "sampR"
|
Name 55 "sampR"
|
||||||
Name 63 "sampB"
|
Name 63 "sampB"
|
||||||
Name 86 "samp2Da"
|
Name 87 "samp2Da"
|
||||||
Name 91 "bn"
|
Name 92 "bn"
|
||||||
MemberName 91(bn) 0 "matra"
|
MemberName 92(bn) 0 "matra"
|
||||||
MemberName 91(bn) 1 "matca"
|
MemberName 92(bn) 1 "matca"
|
||||||
MemberName 91(bn) 2 "matr"
|
MemberName 92(bn) 2 "matr"
|
||||||
MemberName 91(bn) 3 "matc"
|
MemberName 92(bn) 3 "matc"
|
||||||
MemberName 91(bn) 4 "matrdef"
|
MemberName 92(bn) 4 "matrdef"
|
||||||
Name 93 ""
|
Name 94 ""
|
||||||
Name 96 "bi"
|
Name 97 "bi"
|
||||||
MemberName 96(bi) 0 "v"
|
MemberName 97(bi) 0 "v"
|
||||||
Name 99 "bname"
|
Name 100 "bname"
|
||||||
Decorate 16(gl_FrontFacing) BuiltIn FrontFacing
|
Decorate 16(gl_FrontFacing) BuiltIn FrontFacing
|
||||||
Decorate 33(gl_ClipDistance) BuiltIn ClipDistance
|
Decorate 33(gl_ClipDistance) BuiltIn ClipDistance
|
||||||
Decorate 89 ArrayStride 64
|
|
||||||
Decorate 90 ArrayStride 64
|
Decorate 90 ArrayStride 64
|
||||||
MemberDecorate 91(bn) 0 RowMajor
|
Decorate 91 ArrayStride 64
|
||||||
MemberDecorate 91(bn) 0 Offset 0
|
MemberDecorate 92(bn) 0 RowMajor
|
||||||
MemberDecorate 91(bn) 0 MatrixStride 16
|
MemberDecorate 92(bn) 0 Offset 0
|
||||||
MemberDecorate 91(bn) 1 ColMajor
|
MemberDecorate 92(bn) 0 MatrixStride 16
|
||||||
MemberDecorate 91(bn) 1 Offset 256
|
MemberDecorate 92(bn) 1 ColMajor
|
||||||
MemberDecorate 91(bn) 1 MatrixStride 16
|
MemberDecorate 92(bn) 1 Offset 256
|
||||||
MemberDecorate 91(bn) 2 RowMajor
|
MemberDecorate 92(bn) 1 MatrixStride 16
|
||||||
MemberDecorate 91(bn) 2 Offset 512
|
MemberDecorate 92(bn) 2 RowMajor
|
||||||
MemberDecorate 91(bn) 2 MatrixStride 16
|
MemberDecorate 92(bn) 2 Offset 512
|
||||||
MemberDecorate 91(bn) 3 ColMajor
|
MemberDecorate 92(bn) 2 MatrixStride 16
|
||||||
MemberDecorate 91(bn) 3 Offset 576
|
MemberDecorate 92(bn) 3 ColMajor
|
||||||
MemberDecorate 91(bn) 3 MatrixStride 16
|
MemberDecorate 92(bn) 3 Offset 576
|
||||||
MemberDecorate 91(bn) 4 RowMajor
|
MemberDecorate 92(bn) 3 MatrixStride 16
|
||||||
MemberDecorate 91(bn) 4 Offset 640
|
MemberDecorate 92(bn) 4 RowMajor
|
||||||
MemberDecorate 91(bn) 4 MatrixStride 16
|
MemberDecorate 92(bn) 4 Offset 640
|
||||||
Decorate 91(bn) Block
|
MemberDecorate 92(bn) 4 MatrixStride 16
|
||||||
Decorate 95 ArrayStride 16
|
Decorate 92(bn) Block
|
||||||
MemberDecorate 96(bi) 0 Offset 0
|
Decorate 96 ArrayStride 16
|
||||||
Decorate 96(bi) Block
|
MemberDecorate 97(bi) 0 Offset 0
|
||||||
|
Decorate 97(bi) Block
|
||||||
2: TypeVoid
|
2: TypeVoid
|
||||||
3: TypeFunction 2
|
3: TypeFunction 2
|
||||||
6: TypeFloat 32
|
6: TypeFloat 32
|
||||||
@@ -100,24 +100,24 @@ Linked fragment stage:
|
|||||||
69: TypeVector 6(float) 2
|
69: TypeVector 6(float) 2
|
||||||
72: 6(float) Constant 1120403456
|
72: 6(float) Constant 1120403456
|
||||||
74: 29(int) Constant 3
|
74: 29(int) Constant 3
|
||||||
82: TypeImage 6(float) 2D sampled format:Unknown
|
83: TypeImage 6(float) 2D sampled format:Unknown
|
||||||
83: TypeSampledImage 82
|
84: TypeSampledImage 83
|
||||||
84: TypeArray 83 74
|
85: TypeArray 84 74
|
||||||
85: TypePointer UniformConstant 84
|
86: TypePointer UniformConstant 85
|
||||||
86(samp2Da): 85(ptr) Variable UniformConstant
|
87(samp2Da): 86(ptr) Variable UniformConstant
|
||||||
87: TypeMatrix 26(fvec4) 4
|
88: TypeMatrix 26(fvec4) 4
|
||||||
88: 29(int) Constant 4
|
89: 29(int) Constant 4
|
||||||
89: TypeArray 87 88
|
90: TypeArray 88 89
|
||||||
90: TypeArray 87 88
|
91: TypeArray 88 89
|
||||||
91(bn): TypeStruct 89 90 87 87 87
|
92(bn): TypeStruct 90 91 88 88 88
|
||||||
92: TypePointer Uniform 91(bn)
|
93: TypePointer Uniform 92(bn)
|
||||||
93: 92(ptr) Variable Uniform
|
94: 93(ptr) Variable Uniform
|
||||||
94: TypeVector 6(float) 3
|
95: TypeVector 6(float) 3
|
||||||
95: TypeArray 94(fvec3) 50
|
96: TypeArray 95(fvec3) 50
|
||||||
96(bi): TypeStruct 95
|
97(bi): TypeStruct 96
|
||||||
97: TypeArray 96(bi) 88
|
98: TypeArray 97(bi) 89
|
||||||
98: TypePointer Uniform 97
|
99: TypePointer Uniform 98
|
||||||
99(bname): 98(ptr) Variable Uniform
|
100(bname): 99(ptr) Variable Uniform
|
||||||
4(main): 2 Function None 3
|
4(main): 2 Function None 3
|
||||||
5: Label
|
5: Label
|
||||||
13: 12(ptr) Variable Function
|
13: 12(ptr) Variable Function
|
||||||
|
|||||||
@@ -7,34 +7,34 @@ Linked fragment stage:
|
|||||||
|
|
||||||
// Module Version 10000
|
// Module Version 10000
|
||||||
// Generated by (magic number): 80001
|
// Generated by (magic number): 80001
|
||||||
// Id's are bound by 103
|
// Id's are bound by 104
|
||||||
|
|
||||||
Capability Shader
|
Capability Shader
|
||||||
1: ExtInstImport "GLSL.std.450"
|
1: ExtInstImport "GLSL.std.450"
|
||||||
MemoryModel Logical GLSL450
|
MemoryModel Logical GLSL450
|
||||||
EntryPoint Fragment 4 "main" 38 43 77
|
EntryPoint Fragment 4 "main" 39 44 78
|
||||||
ExecutionMode 4 OriginLowerLeft
|
ExecutionMode 4 OriginLowerLeft
|
||||||
Source GLSL 430
|
Source GLSL 430
|
||||||
Name 4 "main"
|
Name 4 "main"
|
||||||
Name 17 "foo(f1[5][7];"
|
Name 17 "foo(f1[5][7];"
|
||||||
Name 16 "a"
|
Name 16 "a"
|
||||||
Name 20 "r"
|
Name 20 "r"
|
||||||
Name 38 "outfloat"
|
Name 39 "outfloat"
|
||||||
Name 41 "g4"
|
Name 42 "g4"
|
||||||
Name 43 "g5"
|
Name 44 "g5"
|
||||||
Name 44 "param"
|
Name 45 "param"
|
||||||
Name 47 "u"
|
Name 48 "u"
|
||||||
Name 51 "param"
|
Name 52 "param"
|
||||||
Name 65 "many"
|
Name 66 "many"
|
||||||
Name 67 "i"
|
Name 68 "i"
|
||||||
Name 69 "j"
|
Name 70 "j"
|
||||||
Name 71 "k"
|
Name 72 "k"
|
||||||
Name 77 "infloat"
|
Name 78 "infloat"
|
||||||
Name 93 "uAofA"
|
Name 94 "uAofA"
|
||||||
MemberName 93(uAofA) 0 "f"
|
MemberName 94(uAofA) 0 "f"
|
||||||
Name 97 "nameAofA"
|
Name 98 "nameAofA"
|
||||||
Decorate 93(uAofA) GLSLShared
|
Decorate 94(uAofA) GLSLShared
|
||||||
Decorate 93(uAofA) Block
|
Decorate 94(uAofA) Block
|
||||||
2: TypeVoid
|
2: TypeVoid
|
||||||
3: TypeFunction 2
|
3: TypeFunction 2
|
||||||
6: TypeFloat 32
|
6: TypeFloat 32
|
||||||
@@ -53,82 +53,82 @@ Linked fragment stage:
|
|||||||
25: 21(int) Constant 0
|
25: 21(int) Constant 0
|
||||||
28: 21(int) Constant 1
|
28: 21(int) Constant 1
|
||||||
32: 21(int) Constant 3
|
32: 21(int) Constant 3
|
||||||
37: TypePointer Output 6(float)
|
38: TypePointer Output 6(float)
|
||||||
38(outfloat): 37(ptr) Variable Output
|
39(outfloat): 38(ptr) Variable Output
|
||||||
39: 6(float) Constant 0
|
40: 6(float) Constant 0
|
||||||
40: TypePointer Private 14
|
41: TypePointer Private 14
|
||||||
41(g4): 40(ptr) Variable Private
|
42(g4): 41(ptr) Variable Private
|
||||||
42: TypePointer Input 11
|
43: TypePointer Input 11
|
||||||
43(g5): 42(ptr) Variable Input
|
44(g5): 43(ptr) Variable Input
|
||||||
48: 6(float) Constant 1077936128
|
49: 6(float) Constant 1077936128
|
||||||
49: TypePointer Function 6(float)
|
50: TypePointer Function 6(float)
|
||||||
54: 7(int) Constant 6
|
55: 7(int) Constant 6
|
||||||
55: TypeArray 6(float) 54
|
56: TypeArray 6(float) 55
|
||||||
56: TypeArray 55 10
|
57: TypeArray 56 10
|
||||||
57: TypeArray 56 13
|
58: TypeArray 57 13
|
||||||
58: 7(int) Constant 3
|
59: 7(int) Constant 3
|
||||||
59: TypeArray 57 58
|
60: TypeArray 58 59
|
||||||
60: 7(int) Constant 2
|
61: 7(int) Constant 2
|
||||||
61: TypeArray 59 60
|
62: TypeArray 60 61
|
||||||
62: 7(int) Constant 1
|
63: 7(int) Constant 1
|
||||||
63: TypeArray 61 62
|
64: TypeArray 62 63
|
||||||
64: TypePointer Private 63
|
65: TypePointer Private 64
|
||||||
65(many): 64(ptr) Variable Private
|
66(many): 65(ptr) Variable Private
|
||||||
66: TypePointer UniformConstant 21(int)
|
67: TypePointer UniformConstant 21(int)
|
||||||
67(i): 66(ptr) Variable UniformConstant
|
68(i): 67(ptr) Variable UniformConstant
|
||||||
69(j): 66(ptr) Variable UniformConstant
|
70(j): 67(ptr) Variable UniformConstant
|
||||||
71(k): 66(ptr) Variable UniformConstant
|
72(k): 67(ptr) Variable UniformConstant
|
||||||
76: TypePointer Input 6(float)
|
77: TypePointer Input 6(float)
|
||||||
77(infloat): 76(ptr) Variable Input
|
78(infloat): 77(ptr) Variable Input
|
||||||
79: TypePointer Private 6(float)
|
80: TypePointer Private 6(float)
|
||||||
91: TypeArray 6(float) 13
|
92: TypeArray 6(float) 13
|
||||||
92: TypeArray 91 60
|
93: TypeArray 92 61
|
||||||
93(uAofA): TypeStruct 92
|
94(uAofA): TypeStruct 93
|
||||||
94: TypeArray 93(uAofA) 10
|
95: TypeArray 94(uAofA) 10
|
||||||
95: TypeArray 94 58
|
96: TypeArray 95 59
|
||||||
96: TypePointer Uniform 95
|
97: TypePointer Uniform 96
|
||||||
97(nameAofA): 96(ptr) Variable Uniform
|
98(nameAofA): 97(ptr) Variable Uniform
|
||||||
98: TypePointer Uniform 6(float)
|
99: TypePointer Uniform 6(float)
|
||||||
4(main): 2 Function None 3
|
4(main): 2 Function None 3
|
||||||
5: Label
|
5: Label
|
||||||
44(param): 12(ptr) Variable Function
|
45(param): 12(ptr) Variable Function
|
||||||
47(u): 12(ptr) Variable Function
|
48(u): 12(ptr) Variable Function
|
||||||
51(param): 12(ptr) Variable Function
|
52(param): 12(ptr) Variable Function
|
||||||
Store 38(outfloat) 39
|
Store 39(outfloat) 40
|
||||||
45: 11 Load 43(g5)
|
46: 11 Load 44(g5)
|
||||||
Store 44(param) 45
|
Store 45(param) 46
|
||||||
46: 14 FunctionCall 17(foo(f1[5][7];) 44(param)
|
47: 14 FunctionCall 17(foo(f1[5][7];) 45(param)
|
||||||
Store 41(g4) 46
|
Store 42(g4) 47
|
||||||
50: 49(ptr) AccessChain 47(u) 22 22
|
51: 50(ptr) AccessChain 48(u) 22 22
|
||||||
Store 50 48
|
Store 51 49
|
||||||
52: 11 Load 47(u)
|
53: 11 Load 48(u)
|
||||||
Store 51(param) 52
|
Store 52(param) 53
|
||||||
53: 14 FunctionCall 17(foo(f1[5][7];) 51(param)
|
54: 14 FunctionCall 17(foo(f1[5][7];) 52(param)
|
||||||
68: 21(int) Load 67(i)
|
69: 21(int) Load 68(i)
|
||||||
70: 21(int) Load 69(j)
|
71: 21(int) Load 70(j)
|
||||||
72: 21(int) Load 71(k)
|
73: 21(int) Load 72(k)
|
||||||
73: 21(int) Load 67(i)
|
74: 21(int) Load 68(i)
|
||||||
74: 21(int) Load 69(j)
|
75: 21(int) Load 70(j)
|
||||||
75: 21(int) Load 71(k)
|
76: 21(int) Load 72(k)
|
||||||
78: 6(float) Load 77(infloat)
|
79: 6(float) Load 78(infloat)
|
||||||
80: 79(ptr) AccessChain 65(many) 68 70 72 73 74 75
|
81: 80(ptr) AccessChain 66(many) 69 71 73 74 75 76
|
||||||
Store 80 78
|
Store 81 79
|
||||||
81: 21(int) Load 69(j)
|
82: 21(int) Load 70(j)
|
||||||
82: 21(int) Load 69(j)
|
83: 21(int) Load 70(j)
|
||||||
83: 21(int) Load 69(j)
|
84: 21(int) Load 70(j)
|
||||||
84: 21(int) Load 69(j)
|
85: 21(int) Load 70(j)
|
||||||
85: 21(int) Load 69(j)
|
86: 21(int) Load 70(j)
|
||||||
86: 21(int) Load 69(j)
|
87: 21(int) Load 70(j)
|
||||||
87: 79(ptr) AccessChain 65(many) 81 82 83 84 85 86
|
88: 80(ptr) AccessChain 66(many) 82 83 84 85 86 87
|
||||||
88: 6(float) Load 87
|
89: 6(float) Load 88
|
||||||
89: 6(float) Load 38(outfloat)
|
90: 6(float) Load 39(outfloat)
|
||||||
90: 6(float) FAdd 89 88
|
91: 6(float) FAdd 90 89
|
||||||
Store 38(outfloat) 90
|
Store 39(outfloat) 91
|
||||||
99: 98(ptr) AccessChain 97(nameAofA) 28 22 25 25 32
|
100: 99(ptr) AccessChain 98(nameAofA) 28 22 25 25 32
|
||||||
100: 6(float) Load 99
|
101: 6(float) Load 100
|
||||||
101: 6(float) Load 38(outfloat)
|
102: 6(float) Load 39(outfloat)
|
||||||
102: 6(float) FAdd 101 100
|
103: 6(float) FAdd 102 101
|
||||||
Store 38(outfloat) 102
|
Store 39(outfloat) 103
|
||||||
Return
|
Return
|
||||||
FunctionEnd
|
FunctionEnd
|
||||||
17(foo(f1[5][7];): 14 Function None 15
|
17(foo(f1[5][7];): 14 Function None 15
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ Linked compute stage:
|
|||||||
TBD functionality: Is atomic_uint an opaque handle in the uniform storage class, or an addresses in the atomic storage class?
|
TBD functionality: Is atomic_uint an opaque handle in the uniform storage class, or an addresses in the atomic storage class?
|
||||||
// Module Version 10000
|
// Module Version 10000
|
||||||
// Generated by (magic number): 80001
|
// Generated by (magic number): 80001
|
||||||
// Id's are bound by 74
|
// Id's are bound by 75
|
||||||
|
|
||||||
Capability Shader
|
Capability Shader
|
||||||
1: ExtInstImport "GLSL.std.450"
|
1: ExtInstImport "GLSL.std.450"
|
||||||
@@ -20,28 +20,28 @@ TBD functionality: Is atomic_uint an opaque handle in the uniform storage class,
|
|||||||
Name 10 "func(au1;"
|
Name 10 "func(au1;"
|
||||||
Name 9 "c"
|
Name 9 "c"
|
||||||
Name 12 "atoms("
|
Name 12 "atoms("
|
||||||
Name 20 "counter"
|
Name 21 "counter"
|
||||||
Name 21 "param"
|
Name 22 "param"
|
||||||
Name 24 "val"
|
Name 25 "val"
|
||||||
Name 28 "countArr"
|
Name 29 "countArr"
|
||||||
Name 35 "origi"
|
Name 36 "origi"
|
||||||
Name 37 "atomi"
|
Name 38 "atomi"
|
||||||
Name 40 "origu"
|
Name 41 "origu"
|
||||||
Name 42 "atomu"
|
Name 43 "atomu"
|
||||||
Name 44 "value"
|
Name 45 "value"
|
||||||
Name 61 "dataSSB"
|
Name 62 "dataSSB"
|
||||||
MemberName 61(dataSSB) 0 "f"
|
MemberName 62(dataSSB) 0 "f"
|
||||||
MemberName 61(dataSSB) 1 "n_frames_rendered"
|
MemberName 62(dataSSB) 1 "n_frames_rendered"
|
||||||
Name 63 "result"
|
Name 64 "result"
|
||||||
Name 71 "arrX"
|
Name 72 "arrX"
|
||||||
Name 72 "arrY"
|
Name 73 "arrY"
|
||||||
Name 73 "arrZ"
|
Name 74 "arrZ"
|
||||||
Decorate 20(counter) Binding 0
|
Decorate 21(counter) Binding 0
|
||||||
Decorate 28(countArr) Binding 0
|
Decorate 29(countArr) Binding 0
|
||||||
MemberDecorate 61(dataSSB) 0 Offset 0
|
MemberDecorate 62(dataSSB) 0 Offset 0
|
||||||
MemberDecorate 61(dataSSB) 1 Offset 16
|
MemberDecorate 62(dataSSB) 1 Offset 16
|
||||||
Decorate 61(dataSSB) BufferBlock
|
Decorate 62(dataSSB) BufferBlock
|
||||||
Decorate 63(result) Binding 0
|
Decorate 64(result) Binding 0
|
||||||
2: TypeVoid
|
2: TypeVoid
|
||||||
3: TypeFunction 2
|
3: TypeFunction 2
|
||||||
6: TypeInt 32 0
|
6: TypeInt 32 0
|
||||||
@@ -49,51 +49,51 @@ TBD functionality: Is atomic_uint an opaque handle in the uniform storage class,
|
|||||||
8: TypeFunction 6(int) 7(ptr)
|
8: TypeFunction 6(int) 7(ptr)
|
||||||
14: 6(int) Constant 1
|
14: 6(int) Constant 1
|
||||||
15: 6(int) Constant 0
|
15: 6(int) Constant 0
|
||||||
18: 6(int) Constant 1024
|
19: 6(int) Constant 1024
|
||||||
19: TypePointer AtomicCounter 6(int)
|
20: TypePointer AtomicCounter 6(int)
|
||||||
20(counter): 19(ptr) Variable AtomicCounter
|
21(counter): 20(ptr) Variable AtomicCounter
|
||||||
25: 6(int) Constant 4
|
26: 6(int) Constant 4
|
||||||
26: TypeArray 6(int) 25
|
27: TypeArray 6(int) 26
|
||||||
27: TypePointer AtomicCounter 26
|
28: TypePointer AtomicCounter 27
|
||||||
28(countArr): 27(ptr) Variable AtomicCounter
|
29(countArr): 28(ptr) Variable AtomicCounter
|
||||||
29: TypeInt 32 1
|
30: TypeInt 32 1
|
||||||
30: 29(int) Constant 2
|
31: 30(int) Constant 2
|
||||||
34: TypePointer Function 29(int)
|
35: TypePointer Function 30(int)
|
||||||
36: TypePointer Workgroup 29(int)
|
37: TypePointer Workgroup 30(int)
|
||||||
37(atomi): 36(ptr) Variable Workgroup
|
38(atomi): 37(ptr) Variable Workgroup
|
||||||
38: 29(int) Constant 3
|
39: 30(int) Constant 3
|
||||||
41: TypePointer Workgroup 6(int)
|
42: TypePointer Workgroup 6(int)
|
||||||
42(atomu): 41(ptr) Variable Workgroup
|
43(atomu): 42(ptr) Variable Workgroup
|
||||||
43: TypePointer UniformConstant 6(int)
|
44: TypePointer UniformConstant 6(int)
|
||||||
44(value): 43(ptr) Variable UniformConstant
|
45(value): 44(ptr) Variable UniformConstant
|
||||||
47: 6(int) Constant 7
|
48: 6(int) Constant 7
|
||||||
52: 29(int) Constant 7
|
53: 30(int) Constant 7
|
||||||
56: 6(int) Constant 10
|
57: 6(int) Constant 10
|
||||||
59: TypeFloat 32
|
60: TypeFloat 32
|
||||||
60: TypeVector 29(int) 4
|
61: TypeVector 30(int) 4
|
||||||
61(dataSSB): TypeStruct 59(float) 60(ivec4)
|
62(dataSSB): TypeStruct 60(float) 61(ivec4)
|
||||||
62: TypePointer Uniform 61(dataSSB)
|
63: TypePointer Uniform 62(dataSSB)
|
||||||
63(result): 62(ptr) Variable Uniform
|
64(result): 63(ptr) Variable Uniform
|
||||||
64: 29(int) Constant 1
|
65: 30(int) Constant 1
|
||||||
65: 6(int) Constant 2
|
66: 6(int) Constant 2
|
||||||
66: TypePointer Uniform 29(int)
|
67: TypePointer Uniform 30(int)
|
||||||
69: TypeArray 29(int) 14
|
70: TypeArray 30(int) 14
|
||||||
70: TypePointer Private 69
|
71: TypePointer Private 70
|
||||||
71(arrX): 70(ptr) Variable Private
|
72(arrX): 71(ptr) Variable Private
|
||||||
72(arrY): 70(ptr) Variable Private
|
73(arrY): 71(ptr) Variable Private
|
||||||
73(arrZ): 70(ptr) Variable Private
|
74(arrZ): 71(ptr) Variable Private
|
||||||
4(main): 2 Function None 3
|
4(main): 2 Function None 3
|
||||||
5: Label
|
5: Label
|
||||||
21(param): 7(ptr) Variable Function
|
22(param): 7(ptr) Variable Function
|
||||||
24(val): 7(ptr) Variable Function
|
25(val): 7(ptr) Variable Function
|
||||||
MemoryBarrier 14 18
|
MemoryBarrier 14 19
|
||||||
22: 6(int) Load 20(counter)
|
23: 6(int) Load 21(counter)
|
||||||
Store 21(param) 22
|
Store 22(param) 23
|
||||||
23: 6(int) FunctionCall 10(func(au1;) 21(param)
|
24: 6(int) FunctionCall 10(func(au1;) 22(param)
|
||||||
31: 19(ptr) AccessChain 28(countArr) 30
|
32: 20(ptr) AccessChain 29(countArr) 31
|
||||||
32: 6(int) AtomicLoad 31 14 15
|
33: 6(int) AtomicLoad 32 14 15
|
||||||
Store 24(val) 32
|
Store 25(val) 33
|
||||||
33: 6(int) AtomicIDecrement 20(counter) 14 15
|
34: 6(int) AtomicIDecrement 21(counter) 14 15
|
||||||
Return
|
Return
|
||||||
FunctionEnd
|
FunctionEnd
|
||||||
10(func(au1;): 6(int) Function None 8
|
10(func(au1;): 6(int) Function None 8
|
||||||
@@ -104,29 +104,29 @@ TBD functionality: Is atomic_uint an opaque handle in the uniform storage class,
|
|||||||
FunctionEnd
|
FunctionEnd
|
||||||
12(atoms(): 2 Function None 3
|
12(atoms(): 2 Function None 3
|
||||||
13: Label
|
13: Label
|
||||||
35(origi): 34(ptr) Variable Function
|
36(origi): 35(ptr) Variable Function
|
||||||
40(origu): 7(ptr) Variable Function
|
41(origu): 7(ptr) Variable Function
|
||||||
39: 29(int) AtomicIAdd 37(atomi) 14 15 38
|
40: 30(int) AtomicIAdd 38(atomi) 14 15 39
|
||||||
Store 35(origi) 39
|
Store 36(origi) 40
|
||||||
45: 6(int) Load 44(value)
|
46: 6(int) Load 45(value)
|
||||||
46: 6(int) AtomicAnd 42(atomu) 14 15 45
|
47: 6(int) AtomicAnd 43(atomu) 14 15 46
|
||||||
Store 40(origu) 46
|
Store 41(origu) 47
|
||||||
48: 6(int) AtomicOr 42(atomu) 14 15 47
|
49: 6(int) AtomicOr 43(atomu) 14 15 48
|
||||||
Store 40(origu) 48
|
Store 41(origu) 49
|
||||||
49: 6(int) AtomicXor 42(atomu) 14 15 47
|
50: 6(int) AtomicXor 43(atomu) 14 15 48
|
||||||
Store 40(origu) 49
|
Store 41(origu) 50
|
||||||
50: 6(int) Load 44(value)
|
51: 6(int) Load 45(value)
|
||||||
51: 6(int) AtomicUMin 42(atomu) 14 15 50
|
52: 6(int) AtomicUMin 43(atomu) 14 15 51
|
||||||
Store 40(origu) 51
|
Store 41(origu) 52
|
||||||
53: 29(int) AtomicSMax 37(atomi) 14 15 52
|
54: 30(int) AtomicSMax 38(atomi) 14 15 53
|
||||||
Store 35(origi) 53
|
Store 36(origi) 54
|
||||||
54: 29(int) Load 35(origi)
|
55: 30(int) Load 36(origi)
|
||||||
55: 29(int) AtomicExchange 37(atomi) 14 15 54
|
56: 30(int) AtomicExchange 38(atomi) 14 15 55
|
||||||
Store 35(origi) 55
|
Store 36(origi) 56
|
||||||
57: 6(int) Load 44(value)
|
58: 6(int) Load 45(value)
|
||||||
58: 6(int) AtomicCompareExchange 42(atomu) 14 15 15 57 56
|
59: 6(int) AtomicCompareExchange 43(atomu) 14 15 15 58 57
|
||||||
Store 40(origu) 58
|
Store 41(origu) 59
|
||||||
67: 66(ptr) AccessChain 63(result) 64 65
|
68: 67(ptr) AccessChain 64(result) 65 66
|
||||||
68: 29(int) AtomicIAdd 67 14 15 64
|
69: 30(int) AtomicIAdd 68 14 15 65
|
||||||
Return
|
Return
|
||||||
FunctionEnd
|
FunctionEnd
|
||||||
|
|||||||
@@ -7,86 +7,86 @@ Linked vertex stage:
|
|||||||
|
|
||||||
// Module Version 10000
|
// Module Version 10000
|
||||||
// Generated by (magic number): 80001
|
// Generated by (magic number): 80001
|
||||||
// Id's are bound by 49
|
// Id's are bound by 50
|
||||||
|
|
||||||
Capability Shader
|
Capability Shader
|
||||||
1: ExtInstImport "GLSL.std.450"
|
1: ExtInstImport "GLSL.std.450"
|
||||||
MemoryModel Logical GLSL450
|
MemoryModel Logical GLSL450
|
||||||
EntryPoint Vertex 4 "main" 23 47 48
|
EntryPoint Vertex 4 "main" 24 48 49
|
||||||
Source GLSL 450
|
Source GLSL 450
|
||||||
Name 4 "main"
|
Name 4 "main"
|
||||||
Name 10 "foo(b1;"
|
Name 10 "foo(b1;"
|
||||||
Name 9 "b"
|
Name 9 "b"
|
||||||
Name 21 "gl_PerVertex"
|
Name 22 "gl_PerVertex"
|
||||||
MemberName 21(gl_PerVertex) 0 "gl_Position"
|
MemberName 22(gl_PerVertex) 0 "gl_Position"
|
||||||
MemberName 21(gl_PerVertex) 1 "gl_PointSize"
|
MemberName 22(gl_PerVertex) 1 "gl_PointSize"
|
||||||
MemberName 21(gl_PerVertex) 2 "gl_ClipDistance"
|
MemberName 22(gl_PerVertex) 2 "gl_ClipDistance"
|
||||||
MemberName 21(gl_PerVertex) 3 "gl_CullDistance"
|
MemberName 22(gl_PerVertex) 3 "gl_CullDistance"
|
||||||
Name 23 ""
|
Name 24 ""
|
||||||
Name 28 "ubname"
|
Name 29 "ubname"
|
||||||
MemberName 28(ubname) 0 "b"
|
MemberName 29(ubname) 0 "b"
|
||||||
Name 30 "ubinst"
|
Name 31 "ubinst"
|
||||||
Name 31 "param"
|
Name 32 "param"
|
||||||
Name 47 "gl_VertexID"
|
Name 48 "gl_VertexID"
|
||||||
Name 48 "gl_InstanceID"
|
Name 49 "gl_InstanceID"
|
||||||
MemberDecorate 21(gl_PerVertex) 0 BuiltIn Position
|
MemberDecorate 22(gl_PerVertex) 0 BuiltIn Position
|
||||||
MemberDecorate 21(gl_PerVertex) 1 BuiltIn PointSize
|
MemberDecorate 22(gl_PerVertex) 1 BuiltIn PointSize
|
||||||
MemberDecorate 21(gl_PerVertex) 2 BuiltIn ClipDistance
|
MemberDecorate 22(gl_PerVertex) 2 BuiltIn ClipDistance
|
||||||
MemberDecorate 21(gl_PerVertex) 3 BuiltIn CullDistance
|
MemberDecorate 22(gl_PerVertex) 3 BuiltIn CullDistance
|
||||||
Decorate 21(gl_PerVertex) Block
|
Decorate 22(gl_PerVertex) Block
|
||||||
Decorate 28(ubname) GLSLShared
|
Decorate 29(ubname) GLSLShared
|
||||||
Decorate 28(ubname) Block
|
Decorate 29(ubname) Block
|
||||||
Decorate 47(gl_VertexID) BuiltIn VertexId
|
Decorate 48(gl_VertexID) BuiltIn VertexId
|
||||||
Decorate 48(gl_InstanceID) BuiltIn InstanceId
|
Decorate 49(gl_InstanceID) BuiltIn InstanceId
|
||||||
2: TypeVoid
|
2: TypeVoid
|
||||||
3: TypeFunction 2
|
3: TypeFunction 2
|
||||||
6: TypeBool
|
6: TypeBool
|
||||||
7: TypePointer Function 6(bool)
|
7: TypePointer Function 6(bool)
|
||||||
8: TypeFunction 6(bool) 7(ptr)
|
8: TypeFunction 6(bool) 7(ptr)
|
||||||
13: 6(bool) ConstantFalse
|
13: 6(bool) ConstantFalse
|
||||||
16: TypeFloat 32
|
17: TypeFloat 32
|
||||||
17: TypeVector 16(float) 4
|
18: TypeVector 17(float) 4
|
||||||
18: TypeInt 32 0
|
19: TypeInt 32 0
|
||||||
19: 18(int) Constant 1
|
20: 19(int) Constant 1
|
||||||
20: TypeArray 16(float) 19
|
21: TypeArray 17(float) 20
|
||||||
21(gl_PerVertex): TypeStruct 17(fvec4) 16(float) 20 20
|
22(gl_PerVertex): TypeStruct 18(fvec4) 17(float) 21 21
|
||||||
22: TypePointer Output 21(gl_PerVertex)
|
23: TypePointer Output 22(gl_PerVertex)
|
||||||
23: 22(ptr) Variable Output
|
24: 23(ptr) Variable Output
|
||||||
24: TypeInt 32 1
|
25: TypeInt 32 1
|
||||||
25: 24(int) Constant 0
|
26: 25(int) Constant 0
|
||||||
26: TypePointer Function 17(fvec4)
|
27: TypePointer Function 18(fvec4)
|
||||||
28(ubname): TypeStruct 6(bool)
|
29(ubname): TypeStruct 6(bool)
|
||||||
29: TypePointer Uniform 28(ubname)
|
30: TypePointer Uniform 29(ubname)
|
||||||
30(ubinst): 29(ptr) Variable Uniform
|
31(ubinst): 30(ptr) Variable Uniform
|
||||||
32: TypePointer Uniform 6(bool)
|
33: TypePointer Uniform 6(bool)
|
||||||
38: 16(float) Constant 0
|
39: 17(float) Constant 0
|
||||||
39: 17(fvec4) ConstantComposite 38 38 38 38
|
40: 18(fvec4) ConstantComposite 39 39 39 39
|
||||||
41: 16(float) Constant 1065353216
|
42: 17(float) Constant 1065353216
|
||||||
42: 17(fvec4) ConstantComposite 41 41 41 41
|
43: 18(fvec4) ConstantComposite 42 42 42 42
|
||||||
44: TypePointer Output 17(fvec4)
|
45: TypePointer Output 18(fvec4)
|
||||||
46: TypePointer Input 24(int)
|
47: TypePointer Input 25(int)
|
||||||
47(gl_VertexID): 46(ptr) Variable Input
|
48(gl_VertexID): 47(ptr) Variable Input
|
||||||
48(gl_InstanceID): 46(ptr) Variable Input
|
49(gl_InstanceID): 47(ptr) Variable Input
|
||||||
4(main): 2 Function None 3
|
4(main): 2 Function None 3
|
||||||
5: Label
|
5: Label
|
||||||
27: 26(ptr) Variable Function
|
28: 27(ptr) Variable Function
|
||||||
31(param): 7(ptr) Variable Function
|
32(param): 7(ptr) Variable Function
|
||||||
33: 32(ptr) AccessChain 30(ubinst) 25
|
34: 33(ptr) AccessChain 31(ubinst) 26
|
||||||
34: 6(bool) Load 33
|
35: 6(bool) Load 34
|
||||||
Store 31(param) 34
|
Store 32(param) 35
|
||||||
35: 6(bool) FunctionCall 10(foo(b1;) 31(param)
|
36: 6(bool) FunctionCall 10(foo(b1;) 32(param)
|
||||||
SelectionMerge 37 None
|
SelectionMerge 38 None
|
||||||
BranchConditional 35 36 40
|
BranchConditional 36 37 41
|
||||||
36: Label
|
37: Label
|
||||||
Store 27 39
|
Store 28 40
|
||||||
Branch 37
|
Branch 38
|
||||||
40: Label
|
41: Label
|
||||||
Store 27 42
|
Store 28 43
|
||||||
Branch 37
|
Branch 38
|
||||||
37: Label
|
38: Label
|
||||||
43: 17(fvec4) Load 27
|
44: 18(fvec4) Load 28
|
||||||
45: 44(ptr) AccessChain 23 25
|
46: 45(ptr) AccessChain 24 26
|
||||||
Store 45 43
|
Store 46 44
|
||||||
Return
|
Return
|
||||||
FunctionEnd
|
FunctionEnd
|
||||||
10(foo(b1;): 6(bool) Function None 8
|
10(foo(b1;): 6(bool) Function None 8
|
||||||
|
|||||||
@@ -50,4 +50,6 @@ Linked vertex stage:
|
|||||||
19: 6(int) IAdd 17 18
|
19: 6(int) IAdd 17 18
|
||||||
Store 8(i) 19
|
Store 8(i) 19
|
||||||
Branch 10
|
Branch 10
|
||||||
|
12: Label
|
||||||
|
Return
|
||||||
FunctionEnd
|
FunctionEnd
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ Linked fragment stage:
|
|||||||
|
|
||||||
// Module Version 10000
|
// Module Version 10000
|
||||||
// Generated by (magic number): 80001
|
// Generated by (magic number): 80001
|
||||||
// Id's are bound by 60
|
// Id's are bound by 61
|
||||||
|
|
||||||
Capability Shader
|
Capability Shader
|
||||||
1: ExtInstImport "GLSL.std.450"
|
1: ExtInstImport "GLSL.std.450"
|
||||||
@@ -24,13 +24,13 @@ Linked fragment stage:
|
|||||||
Name 27 "f"
|
Name 27 "f"
|
||||||
Name 30 "gl_FragColor"
|
Name 30 "gl_FragColor"
|
||||||
Name 36 "d"
|
Name 36 "d"
|
||||||
Name 59 "bigColor"
|
Name 60 "bigColor"
|
||||||
Decorate 18(color) RelaxedPrecision
|
Decorate 18(color) RelaxedPrecision
|
||||||
Decorate 20(BaseColor) RelaxedPrecision
|
Decorate 20(BaseColor) RelaxedPrecision
|
||||||
Decorate 27(f) RelaxedPrecision
|
Decorate 27(f) RelaxedPrecision
|
||||||
Decorate 30(gl_FragColor) RelaxedPrecision
|
Decorate 30(gl_FragColor) RelaxedPrecision
|
||||||
Decorate 36(d) RelaxedPrecision
|
Decorate 36(d) RelaxedPrecision
|
||||||
Decorate 59(bigColor) RelaxedPrecision
|
Decorate 60(bigColor) RelaxedPrecision
|
||||||
2: TypeVoid
|
2: TypeVoid
|
||||||
3: TypeFunction 2
|
3: TypeFunction 2
|
||||||
8: TypeFloat 32
|
8: TypeFloat 32
|
||||||
@@ -52,8 +52,8 @@ Linked fragment stage:
|
|||||||
49: TypeInt 32 0
|
49: TypeInt 32 0
|
||||||
50: 49(int) Constant 0
|
50: 49(int) Constant 0
|
||||||
53: 49(int) Constant 1
|
53: 49(int) Constant 1
|
||||||
58: TypePointer UniformConstant 12(fvec4)
|
59: TypePointer UniformConstant 12(fvec4)
|
||||||
59(bigColor): 58(ptr) Variable UniformConstant
|
60(bigColor): 59(ptr) Variable UniformConstant
|
||||||
4(main): 2 Function None 3
|
4(main): 2 Function None 3
|
||||||
5: Label
|
5: Label
|
||||||
18(color): 13(ptr) Variable Function
|
18(color): 13(ptr) Variable Function
|
||||||
|
|||||||
@@ -7,12 +7,12 @@ Linked fragment stage:
|
|||||||
|
|
||||||
// Module Version 10000
|
// Module Version 10000
|
||||||
// Generated by (magic number): 80001
|
// Generated by (magic number): 80001
|
||||||
// Id's are bound by 76
|
// Id's are bound by 77
|
||||||
|
|
||||||
Capability Shader
|
Capability Shader
|
||||||
1: ExtInstImport "GLSL.std.450"
|
1: ExtInstImport "GLSL.std.450"
|
||||||
MemoryModel Logical GLSL450
|
MemoryModel Logical GLSL450
|
||||||
EntryPoint Fragment 4 "main" 57 68
|
EntryPoint Fragment 4 "main" 58 69
|
||||||
ExecutionMode 4 OriginLowerLeft
|
ExecutionMode 4 OriginLowerLeft
|
||||||
Source GLSL 130
|
Source GLSL 130
|
||||||
Name 4 "main"
|
Name 4 "main"
|
||||||
@@ -22,14 +22,14 @@ Linked fragment stage:
|
|||||||
Name 16 "unreachableReturn("
|
Name 16 "unreachableReturn("
|
||||||
Name 18 "missingReturn("
|
Name 18 "missingReturn("
|
||||||
Name 21 "h"
|
Name 21 "h"
|
||||||
Name 34 "d"
|
Name 35 "d"
|
||||||
Name 55 "color"
|
Name 56 "color"
|
||||||
Name 57 "BaseColor"
|
Name 58 "BaseColor"
|
||||||
Name 58 "param"
|
Name 59 "param"
|
||||||
Name 63 "f"
|
Name 64 "f"
|
||||||
Name 65 "g"
|
Name 66 "g"
|
||||||
Name 68 "gl_FragColor"
|
Name 69 "gl_FragColor"
|
||||||
Name 75 "bigColor"
|
Name 76 "bigColor"
|
||||||
2: TypeVoid
|
2: TypeVoid
|
||||||
3: TypeFunction 2
|
3: TypeFunction 2
|
||||||
6: TypeFloat 32
|
6: TypeFloat 32
|
||||||
@@ -44,42 +44,42 @@ Linked fragment stage:
|
|||||||
24: 23(int) Constant 0
|
24: 23(int) Constant 0
|
||||||
25: TypePointer Function 6(float)
|
25: TypePointer Function 6(float)
|
||||||
28: 23(int) Constant 1
|
28: 23(int) Constant 1
|
||||||
33: TypePointer UniformConstant 6(float)
|
34: TypePointer UniformConstant 6(float)
|
||||||
34(d): 33(ptr) Variable UniformConstant
|
35(d): 34(ptr) Variable UniformConstant
|
||||||
36: 6(float) Constant 1082549862
|
37: 6(float) Constant 1082549862
|
||||||
37: TypeBool
|
38: TypeBool
|
||||||
41: 6(float) Constant 1067030938
|
42: 6(float) Constant 1067030938
|
||||||
44: 6(float) Constant 1083179008
|
45: 6(float) Constant 1083179008
|
||||||
52: 6(float) Constant 1081711002
|
53: 6(float) Constant 1081711002
|
||||||
56: TypePointer Input 7(fvec4)
|
57: TypePointer Input 7(fvec4)
|
||||||
57(BaseColor): 56(ptr) Variable Input
|
58(BaseColor): 57(ptr) Variable Input
|
||||||
67: TypePointer Output 7(fvec4)
|
68: TypePointer Output 7(fvec4)
|
||||||
68(gl_FragColor): 67(ptr) Variable Output
|
69(gl_FragColor): 68(ptr) Variable Output
|
||||||
74: TypePointer UniformConstant 7(fvec4)
|
75: TypePointer UniformConstant 7(fvec4)
|
||||||
75(bigColor): 74(ptr) Variable UniformConstant
|
76(bigColor): 75(ptr) Variable UniformConstant
|
||||||
4(main): 2 Function None 3
|
4(main): 2 Function None 3
|
||||||
5: Label
|
5: Label
|
||||||
55(color): 8(ptr) Variable Function
|
56(color): 8(ptr) Variable Function
|
||||||
58(param): 8(ptr) Variable Function
|
59(param): 8(ptr) Variable Function
|
||||||
63(f): 25(ptr) Variable Function
|
64(f): 25(ptr) Variable Function
|
||||||
65(g): 25(ptr) Variable Function
|
66(g): 25(ptr) Variable Function
|
||||||
Store 21(h) 22
|
Store 21(h) 22
|
||||||
59: 7(fvec4) Load 57(BaseColor)
|
60: 7(fvec4) Load 58(BaseColor)
|
||||||
Store 58(param) 59
|
Store 59(param) 60
|
||||||
60: 6(float) FunctionCall 11(foo(vf4;) 58(param)
|
61: 6(float) FunctionCall 11(foo(vf4;) 59(param)
|
||||||
61: 7(fvec4) CompositeConstruct 60 60 60 60
|
62: 7(fvec4) CompositeConstruct 61 61 61 61
|
||||||
Store 55(color) 61
|
Store 56(color) 62
|
||||||
62: 2 FunctionCall 13(bar()
|
63: 2 FunctionCall 13(bar()
|
||||||
64: 6(float) FunctionCall 16(unreachableReturn()
|
65: 6(float) FunctionCall 16(unreachableReturn()
|
||||||
Store 63(f) 64
|
Store 64(f) 65
|
||||||
66: 6(float) FunctionCall 18(missingReturn()
|
67: 6(float) FunctionCall 18(missingReturn()
|
||||||
Store 65(g) 66
|
Store 66(g) 67
|
||||||
69: 7(fvec4) Load 55(color)
|
70: 7(fvec4) Load 56(color)
|
||||||
70: 6(float) Load 63(f)
|
71: 6(float) Load 64(f)
|
||||||
71: 7(fvec4) VectorTimesScalar 69 70
|
72: 7(fvec4) VectorTimesScalar 70 71
|
||||||
72: 6(float) Load 21(h)
|
73: 6(float) Load 21(h)
|
||||||
73: 7(fvec4) VectorTimesScalar 71 72
|
74: 7(fvec4) VectorTimesScalar 72 73
|
||||||
Store 68(gl_FragColor) 73
|
Store 69(gl_FragColor) 74
|
||||||
Return
|
Return
|
||||||
FunctionEnd
|
FunctionEnd
|
||||||
11(foo(vf4;): 6(float) Function None 9
|
11(foo(vf4;): 6(float) Function None 9
|
||||||
@@ -98,29 +98,29 @@ Linked fragment stage:
|
|||||||
FunctionEnd
|
FunctionEnd
|
||||||
16(unreachableReturn(): 6(float) Function None 15
|
16(unreachableReturn(): 6(float) Function None 15
|
||||||
17: Label
|
17: Label
|
||||||
35: 6(float) Load 34(d)
|
36: 6(float) Load 35(d)
|
||||||
38: 37(bool) FOrdLessThan 35 36
|
39: 38(bool) FOrdLessThan 36 37
|
||||||
SelectionMerge 40 None
|
SelectionMerge 41 None
|
||||||
BranchConditional 38 39 43
|
BranchConditional 39 40 44
|
||||||
39: Label
|
40: Label
|
||||||
ReturnValue 41
|
ReturnValue 42
|
||||||
43: Label
|
44: Label
|
||||||
ReturnValue 44
|
ReturnValue 45
|
||||||
40: Label
|
41: Label
|
||||||
46: 6(float) Undef
|
47: 6(float) Undef
|
||||||
ReturnValue 46
|
ReturnValue 47
|
||||||
FunctionEnd
|
FunctionEnd
|
||||||
18(missingReturn(): 6(float) Function None 15
|
18(missingReturn(): 6(float) Function None 15
|
||||||
19: Label
|
19: Label
|
||||||
47: 6(float) Load 34(d)
|
48: 6(float) Load 35(d)
|
||||||
48: 37(bool) FOrdLessThan 47 44
|
49: 38(bool) FOrdLessThan 48 45
|
||||||
SelectionMerge 50 None
|
SelectionMerge 51 None
|
||||||
BranchConditional 48 49 50
|
BranchConditional 49 50 51
|
||||||
49: Label
|
50: Label
|
||||||
51: 6(float) Load 34(d)
|
52: 6(float) Load 35(d)
|
||||||
Store 21(h) 51
|
Store 21(h) 52
|
||||||
ReturnValue 52
|
ReturnValue 53
|
||||||
50: Label
|
51: Label
|
||||||
54: 6(float) Undef
|
55: 6(float) Undef
|
||||||
ReturnValue 54
|
ReturnValue 55
|
||||||
FunctionEnd
|
FunctionEnd
|
||||||
|
|||||||
@@ -7,12 +7,12 @@ Linked fragment stage:
|
|||||||
|
|
||||||
// Module Version 10000
|
// Module Version 10000
|
||||||
// Generated by (magic number): 80001
|
// Generated by (magic number): 80001
|
||||||
// Id's are bound by 153
|
// Id's are bound by 156
|
||||||
|
|
||||||
Capability Shader
|
Capability Shader
|
||||||
1: ExtInstImport "GLSL.std.450"
|
1: ExtInstImport "GLSL.std.450"
|
||||||
MemoryModel Logical GLSL450
|
MemoryModel Logical GLSL450
|
||||||
EntryPoint Fragment 4 "main" 149
|
EntryPoint Fragment 4 "main" 152
|
||||||
ExecutionMode 4 OriginLowerLeft
|
ExecutionMode 4 OriginLowerLeft
|
||||||
Source GLSL 400
|
Source GLSL 400
|
||||||
Name 4 "main"
|
Name 4 "main"
|
||||||
@@ -29,25 +29,25 @@ Linked fragment stage:
|
|||||||
Name 24 "r"
|
Name 24 "r"
|
||||||
Name 28 "foo3("
|
Name 28 "foo3("
|
||||||
Name 30 "sum"
|
Name 30 "sum"
|
||||||
Name 74 "u"
|
Name 76 "u"
|
||||||
Name 86 "t"
|
Name 89 "t"
|
||||||
Name 89 "s"
|
Name 92 "s"
|
||||||
MemberName 89(s) 0 "t"
|
MemberName 92(s) 0 "t"
|
||||||
Name 91 "f"
|
Name 94 "f"
|
||||||
Name 95 "color"
|
Name 98 "color"
|
||||||
Name 101 "e"
|
Name 104 "e"
|
||||||
Name 102 "param"
|
|
||||||
Name 103 "param"
|
|
||||||
Name 104 "param"
|
|
||||||
Name 105 "param"
|
Name 105 "param"
|
||||||
Name 120 "ret"
|
Name 106 "param"
|
||||||
Name 122 "tempReturn"
|
Name 107 "param"
|
||||||
Name 127 "tempArg"
|
Name 108 "param"
|
||||||
Name 128 "param"
|
Name 123 "ret"
|
||||||
Name 129 "param"
|
Name 125 "tempReturn"
|
||||||
Name 130 "param"
|
Name 130 "tempArg"
|
||||||
Name 133 "arg"
|
Name 131 "param"
|
||||||
Name 149 "gl_FragColor"
|
Name 132 "param"
|
||||||
|
Name 133 "param"
|
||||||
|
Name 136 "arg"
|
||||||
|
Name 152 "gl_FragColor"
|
||||||
2: TypeVoid
|
2: TypeVoid
|
||||||
3: TypeFunction 2
|
3: TypeFunction 2
|
||||||
6: TypeInt 32 1
|
6: TypeInt 32 1
|
||||||
@@ -61,103 +61,103 @@ Linked fragment stage:
|
|||||||
27: TypeFunction 6(int)
|
27: TypeFunction 6(int)
|
||||||
38: 6(int) Constant 64
|
38: 6(int) Constant 64
|
||||||
43: 6(int) Constant 1024
|
43: 6(int) Constant 1024
|
||||||
61: 17(float) Constant 1077936128
|
62: 17(float) Constant 1077936128
|
||||||
65: 17(float) Constant 1084227584
|
66: 17(float) Constant 1084227584
|
||||||
66: TypeInt 32 0
|
67: TypeInt 32 0
|
||||||
67: 66(int) Constant 1
|
68: 67(int) Constant 1
|
||||||
73: TypePointer UniformConstant 17(float)
|
75: TypePointer UniformConstant 17(float)
|
||||||
74(u): 73(ptr) Variable UniformConstant
|
76(u): 75(ptr) Variable UniformConstant
|
||||||
76: 17(float) Constant 1078774989
|
78: 17(float) Constant 1078774989
|
||||||
77: TypeBool
|
79: TypeBool
|
||||||
82: 6(int) Constant 1000000
|
84: 6(int) Constant 1000000
|
||||||
84: 6(int) Constant 2000000
|
86: 6(int) Constant 2000000
|
||||||
87: 6(int) Constant 2
|
90: 6(int) Constant 2
|
||||||
88: TypeVector 6(int) 4
|
91: TypeVector 6(int) 4
|
||||||
89(s): TypeStruct 88(ivec4)
|
92(s): TypeStruct 91(ivec4)
|
||||||
90: TypePointer Function 89(s)
|
93: TypePointer Function 92(s)
|
||||||
92: 6(int) Constant 0
|
95: 6(int) Constant 0
|
||||||
93: 6(int) Constant 32
|
96: 6(int) Constant 32
|
||||||
96: 6(int) Constant 1
|
99: 6(int) Constant 1
|
||||||
100: 6(int) Constant 8
|
103: 6(int) Constant 8
|
||||||
112: 6(int) Constant 128
|
115: 6(int) Constant 128
|
||||||
121: TypePointer Private 6(int)
|
124: TypePointer Private 6(int)
|
||||||
122(tempReturn): 121(ptr) Variable Private
|
125(tempReturn): 124(ptr) Variable Private
|
||||||
123: 17(float) Constant 1082130432
|
126: 17(float) Constant 1082130432
|
||||||
124: 17(float) Constant 1065353216
|
127: 17(float) Constant 1065353216
|
||||||
125: 17(float) Constant 1073741824
|
128: 17(float) Constant 1073741824
|
||||||
126: 19(fvec3) ConstantComposite 124 125 61
|
129: 19(fvec3) ConstantComposite 127 128 62
|
||||||
147: TypeVector 17(float) 4
|
150: TypeVector 17(float) 4
|
||||||
148: TypePointer Output 147(fvec4)
|
151: TypePointer Output 150(fvec4)
|
||||||
149(gl_FragColor): 148(ptr) Variable Output
|
152(gl_FragColor): 151(ptr) Variable Output
|
||||||
4(main): 2 Function None 3
|
4(main): 2 Function None 3
|
||||||
5: Label
|
5: Label
|
||||||
86(t): 7(ptr) Variable Function
|
89(t): 7(ptr) Variable Function
|
||||||
91(f): 90(ptr) Variable Function
|
94(f): 93(ptr) Variable Function
|
||||||
95(color): 7(ptr) Variable Function
|
98(color): 7(ptr) Variable Function
|
||||||
101(e): 7(ptr) Variable Function
|
104(e): 7(ptr) Variable Function
|
||||||
102(param): 7(ptr) Variable Function
|
|
||||||
103(param): 7(ptr) Variable Function
|
|
||||||
104(param): 7(ptr) Variable Function
|
|
||||||
105(param): 7(ptr) Variable Function
|
105(param): 7(ptr) Variable Function
|
||||||
120(ret): 18(ptr) Variable Function
|
106(param): 7(ptr) Variable Function
|
||||||
127(tempArg): 7(ptr) Variable Function
|
107(param): 7(ptr) Variable Function
|
||||||
128(param): 18(ptr) Variable Function
|
108(param): 7(ptr) Variable Function
|
||||||
129(param): 20(ptr) Variable Function
|
123(ret): 18(ptr) Variable Function
|
||||||
130(param): 7(ptr) Variable Function
|
130(tempArg): 7(ptr) Variable Function
|
||||||
133(arg): 18(ptr) Variable Function
|
131(param): 18(ptr) Variable Function
|
||||||
Store 86(t) 87
|
132(param): 20(ptr) Variable Function
|
||||||
94: 7(ptr) AccessChain 91(f) 92 67
|
133(param): 7(ptr) Variable Function
|
||||||
Store 94 93
|
136(arg): 18(ptr) Variable Function
|
||||||
97: 6(int) Load 86(t)
|
Store 89(t) 90
|
||||||
98: 6(int) Load 86(t)
|
97: 7(ptr) AccessChain 94(f) 95 68
|
||||||
99: 6(int) IAdd 97 98
|
Store 97 96
|
||||||
Store 102(param) 96
|
100: 6(int) Load 89(t)
|
||||||
Store 103(param) 99
|
101: 6(int) Load 89(t)
|
||||||
106: 7(ptr) AccessChain 91(f) 92 67
|
102: 6(int) IAdd 100 101
|
||||||
107: 6(int) Load 106
|
Store 105(param) 99
|
||||||
Store 105(param) 107
|
Store 106(param) 102
|
||||||
108: 6(int) FunctionCall 15(foo(i1;i1;i1;i1;i1;i1;) 102(param) 87 103(param) 100 104(param) 105(param)
|
109: 7(ptr) AccessChain 94(f) 95 68
|
||||||
109: 6(int) Load 104(param)
|
110: 6(int) Load 109
|
||||||
Store 101(e) 109
|
Store 108(param) 110
|
||||||
110: 6(int) Load 105(param)
|
111: 6(int) FunctionCall 15(foo(i1;i1;i1;i1;i1;i1;) 105(param) 90 106(param) 103 107(param) 108(param)
|
||||||
111: 7(ptr) AccessChain 91(f) 92 67
|
112: 6(int) Load 107(param)
|
||||||
Store 111 110
|
Store 104(e) 112
|
||||||
Store 95(color) 108
|
113: 6(int) Load 108(param)
|
||||||
113: 6(int) Load 101(e)
|
114: 7(ptr) AccessChain 94(f) 95 68
|
||||||
114: 7(ptr) AccessChain 91(f) 92 67
|
Store 114 113
|
||||||
115: 6(int) Load 114
|
Store 98(color) 111
|
||||||
116: 6(int) IAdd 113 115
|
116: 6(int) Load 104(e)
|
||||||
117: 6(int) IMul 112 116
|
117: 7(ptr) AccessChain 94(f) 95 68
|
||||||
118: 6(int) Load 95(color)
|
118: 6(int) Load 117
|
||||||
119: 6(int) IAdd 118 117
|
119: 6(int) IAdd 116 118
|
||||||
Store 95(color) 119
|
120: 6(int) IMul 115 119
|
||||||
Store 128(param) 123
|
121: 6(int) Load 98(color)
|
||||||
Store 129(param) 126
|
122: 6(int) IAdd 121 120
|
||||||
131: 6(int) FunctionCall 25(foo2(f1;vf3;i1;) 128(param) 129(param) 130(param)
|
Store 98(color) 122
|
||||||
132: 6(int) Load 130(param)
|
Store 131(param) 126
|
||||||
Store 127(tempArg) 132
|
Store 132(param) 129
|
||||||
Store 122(tempReturn) 131
|
134: 6(int) FunctionCall 25(foo2(f1;vf3;i1;) 131(param) 132(param) 133(param)
|
||||||
134: 6(int) Load 127(tempArg)
|
135: 6(int) Load 133(param)
|
||||||
135: 17(float) ConvertSToF 134
|
Store 130(tempArg) 135
|
||||||
Store 133(arg) 135
|
Store 125(tempReturn) 134
|
||||||
136: 6(int) Load 122(tempReturn)
|
137: 6(int) Load 130(tempArg)
|
||||||
137: 17(float) ConvertSToF 136
|
138: 17(float) ConvertSToF 137
|
||||||
Store 120(ret) 137
|
Store 136(arg) 138
|
||||||
138: 17(float) Load 120(ret)
|
139: 6(int) Load 125(tempReturn)
|
||||||
139: 17(float) Load 133(arg)
|
140: 17(float) ConvertSToF 139
|
||||||
140: 17(float) FAdd 138 139
|
Store 123(ret) 140
|
||||||
141: 6(int) ConvertFToS 140
|
141: 17(float) Load 123(ret)
|
||||||
142: 6(int) Load 95(color)
|
142: 17(float) Load 136(arg)
|
||||||
143: 6(int) IAdd 142 141
|
143: 17(float) FAdd 141 142
|
||||||
Store 95(color) 143
|
144: 6(int) ConvertFToS 143
|
||||||
144: 6(int) FunctionCall 28(foo3()
|
145: 6(int) Load 98(color)
|
||||||
145: 6(int) Load 95(color)
|
|
||||||
146: 6(int) IAdd 145 144
|
146: 6(int) IAdd 145 144
|
||||||
Store 95(color) 146
|
Store 98(color) 146
|
||||||
150: 6(int) Load 95(color)
|
147: 6(int) FunctionCall 28(foo3()
|
||||||
151: 17(float) ConvertSToF 150
|
148: 6(int) Load 98(color)
|
||||||
152: 147(fvec4) CompositeConstruct 151 151 151 151
|
149: 6(int) IAdd 148 147
|
||||||
Store 149(gl_FragColor) 152
|
Store 98(color) 149
|
||||||
|
153: 6(int) Load 98(color)
|
||||||
|
154: 17(float) ConvertSToF 153
|
||||||
|
155: 150(fvec4) CompositeConstruct 154 154 154 154
|
||||||
|
Store 152(gl_FragColor) 155
|
||||||
Return
|
Return
|
||||||
FunctionEnd
|
FunctionEnd
|
||||||
15(foo(i1;i1;i1;i1;i1;i1;): 6(int) Function None 8
|
15(foo(i1;i1;i1;i1;i1;i1;): 6(int) Function None 8
|
||||||
@@ -209,24 +209,24 @@ Linked fragment stage:
|
|||||||
23(b): 20(ptr) FunctionParameter
|
23(b): 20(ptr) FunctionParameter
|
||||||
24(r): 7(ptr) FunctionParameter
|
24(r): 7(ptr) FunctionParameter
|
||||||
26: Label
|
26: Label
|
||||||
62: 17(float) Load 22(a)
|
63: 17(float) Load 22(a)
|
||||||
63: 17(float) FMul 61 62
|
64: 17(float) FMul 62 63
|
||||||
64: 6(int) ConvertFToS 63
|
65: 6(int) ConvertFToS 64
|
||||||
Store 24(r) 64
|
Store 24(r) 65
|
||||||
68: 18(ptr) AccessChain 23(b) 67
|
69: 18(ptr) AccessChain 23(b) 68
|
||||||
69: 17(float) Load 68
|
70: 17(float) Load 69
|
||||||
70: 17(float) FMul 65 69
|
71: 17(float) FMul 66 70
|
||||||
71: 6(int) ConvertFToS 70
|
72: 6(int) ConvertFToS 71
|
||||||
ReturnValue 71
|
ReturnValue 72
|
||||||
FunctionEnd
|
FunctionEnd
|
||||||
28(foo3(): 6(int) Function None 27
|
28(foo3(): 6(int) Function None 27
|
||||||
29: Label
|
29: Label
|
||||||
75: 17(float) Load 74(u)
|
77: 17(float) Load 76(u)
|
||||||
78: 77(bool) FOrdGreaterThan 75 76
|
80: 79(bool) FOrdGreaterThan 77 78
|
||||||
SelectionMerge 80 None
|
SelectionMerge 82 None
|
||||||
BranchConditional 78 79 80
|
BranchConditional 80 81 82
|
||||||
79: Label
|
81: Label
|
||||||
Kill
|
Kill
|
||||||
80: Label
|
82: Label
|
||||||
ReturnValue 84
|
ReturnValue 86
|
||||||
FunctionEnd
|
FunctionEnd
|
||||||
|
|||||||
@@ -5,12 +5,12 @@ Linked vertex stage:
|
|||||||
|
|
||||||
// Module Version 10000
|
// Module Version 10000
|
||||||
// Generated by (magic number): 80001
|
// Generated by (magic number): 80001
|
||||||
// Id's are bound by 93
|
// Id's are bound by 96
|
||||||
|
|
||||||
Capability Shader
|
Capability Shader
|
||||||
1: ExtInstImport "GLSL.std.450"
|
1: ExtInstImport "GLSL.std.450"
|
||||||
MemoryModel Logical GLSL450
|
MemoryModel Logical GLSL450
|
||||||
EntryPoint Vertex 4 "main" 69 73 92
|
EntryPoint Vertex 4 "main" 72 76 95
|
||||||
Source GLSL 130
|
Source GLSL 130
|
||||||
Name 4 "main"
|
Name 4 "main"
|
||||||
Name 14 "xf(mf33;vf3;"
|
Name 14 "xf(mf33;vf3;"
|
||||||
@@ -21,18 +21,18 @@ Linked vertex stage:
|
|||||||
Name 26 "mxv(mf44;vf3;"
|
Name 26 "mxv(mf44;vf3;"
|
||||||
Name 24 "m4"
|
Name 24 "m4"
|
||||||
Name 25 "v"
|
Name 25 "v"
|
||||||
Name 63 "param"
|
Name 65 "param"
|
||||||
Name 69 "gl_Position"
|
Name 72 "gl_Position"
|
||||||
Name 71 "m4"
|
Name 74 "m4"
|
||||||
Name 73 "v3"
|
Name 76 "v3"
|
||||||
Name 74 "param"
|
Name 77 "param"
|
||||||
Name 76 "param"
|
Name 79 "param"
|
||||||
Name 80 "m3"
|
Name 83 "m3"
|
||||||
Name 81 "param"
|
Name 84 "param"
|
||||||
Name 83 "param"
|
Name 86 "param"
|
||||||
Name 92 "gl_VertexID"
|
Name 95 "gl_VertexID"
|
||||||
Decorate 69(gl_Position) BuiltIn Position
|
Decorate 72(gl_Position) BuiltIn Position
|
||||||
Decorate 92(gl_VertexID) BuiltIn VertexId
|
Decorate 95(gl_VertexID) BuiltIn VertexId
|
||||||
2: TypeVoid
|
2: TypeVoid
|
||||||
3: TypeFunction 2
|
3: TypeFunction 2
|
||||||
6: TypeFloat 32
|
6: TypeFloat 32
|
||||||
@@ -46,45 +46,45 @@ Linked vertex stage:
|
|||||||
18: TypePointer Function 17
|
18: TypePointer Function 17
|
||||||
19: TypeFunction 8 18(ptr)
|
19: TypeFunction 8 18(ptr)
|
||||||
23: TypeFunction 7(fvec3) 18(ptr) 10(ptr)
|
23: TypeFunction 7(fvec3) 18(ptr) 10(ptr)
|
||||||
32: TypeInt 32 1
|
33: TypeInt 32 1
|
||||||
33: 32(int) Constant 0
|
34: 33(int) Constant 0
|
||||||
34: TypePointer Function 16(fvec4)
|
35: TypePointer Function 16(fvec4)
|
||||||
38: 32(int) Constant 1
|
39: 33(int) Constant 1
|
||||||
42: 32(int) Constant 2
|
43: 33(int) Constant 2
|
||||||
46: 6(float) Constant 1065353216
|
47: 6(float) Constant 1065353216
|
||||||
47: 6(float) Constant 0
|
48: 6(float) Constant 0
|
||||||
68: TypePointer Output 16(fvec4)
|
71: TypePointer Output 16(fvec4)
|
||||||
69(gl_Position): 68(ptr) Variable Output
|
72(gl_Position): 71(ptr) Variable Output
|
||||||
70: TypePointer UniformConstant 17
|
73: TypePointer UniformConstant 17
|
||||||
71(m4): 70(ptr) Variable UniformConstant
|
74(m4): 73(ptr) Variable UniformConstant
|
||||||
72: TypePointer Input 7(fvec3)
|
75: TypePointer Input 7(fvec3)
|
||||||
73(v3): 72(ptr) Variable Input
|
76(v3): 75(ptr) Variable Input
|
||||||
79: TypePointer UniformConstant 8
|
82: TypePointer UniformConstant 8
|
||||||
80(m3): 79(ptr) Variable UniformConstant
|
83(m3): 82(ptr) Variable UniformConstant
|
||||||
91: TypePointer Input 32(int)
|
94: TypePointer Input 33(int)
|
||||||
92(gl_VertexID): 91(ptr) Variable Input
|
95(gl_VertexID): 94(ptr) Variable Input
|
||||||
4(main): 2 Function None 3
|
4(main): 2 Function None 3
|
||||||
5: Label
|
5: Label
|
||||||
74(param): 18(ptr) Variable Function
|
77(param): 18(ptr) Variable Function
|
||||||
76(param): 10(ptr) Variable Function
|
79(param): 10(ptr) Variable Function
|
||||||
81(param): 9(ptr) Variable Function
|
84(param): 9(ptr) Variable Function
|
||||||
83(param): 10(ptr) Variable Function
|
86(param): 10(ptr) Variable Function
|
||||||
75: 17 Load 71(m4)
|
78: 17 Load 74(m4)
|
||||||
Store 74(param) 75
|
Store 77(param) 78
|
||||||
77: 7(fvec3) Load 73(v3)
|
80: 7(fvec3) Load 76(v3)
|
||||||
Store 76(param) 77
|
Store 79(param) 80
|
||||||
78: 7(fvec3) FunctionCall 26(mxv(mf44;vf3;) 74(param) 76(param)
|
81: 7(fvec3) FunctionCall 26(mxv(mf44;vf3;) 77(param) 79(param)
|
||||||
82: 8 Load 80(m3)
|
85: 8 Load 83(m3)
|
||||||
Store 81(param) 82
|
Store 84(param) 85
|
||||||
84: 7(fvec3) Load 73(v3)
|
87: 7(fvec3) Load 76(v3)
|
||||||
Store 83(param) 84
|
Store 86(param) 87
|
||||||
85: 7(fvec3) FunctionCall 14(xf(mf33;vf3;) 81(param) 83(param)
|
88: 7(fvec3) FunctionCall 14(xf(mf33;vf3;) 84(param) 86(param)
|
||||||
86: 7(fvec3) FAdd 78 85
|
89: 7(fvec3) FAdd 81 88
|
||||||
87: 6(float) CompositeExtract 86 0
|
90: 6(float) CompositeExtract 89 0
|
||||||
88: 6(float) CompositeExtract 86 1
|
91: 6(float) CompositeExtract 89 1
|
||||||
89: 6(float) CompositeExtract 86 2
|
92: 6(float) CompositeExtract 89 2
|
||||||
90: 16(fvec4) CompositeConstruct 87 88 89 46
|
93: 16(fvec4) CompositeConstruct 90 91 92 47
|
||||||
Store 69(gl_Position) 90
|
Store 72(gl_Position) 93
|
||||||
Return
|
Return
|
||||||
FunctionEnd
|
FunctionEnd
|
||||||
14(xf(mf33;vf3;): 7(fvec3) Function None 11
|
14(xf(mf33;vf3;): 7(fvec3) Function None 11
|
||||||
@@ -99,39 +99,39 @@ Linked vertex stage:
|
|||||||
21(Mat3(mf44;): 8 Function None 19
|
21(Mat3(mf44;): 8 Function None 19
|
||||||
20(m): 18(ptr) FunctionParameter
|
20(m): 18(ptr) FunctionParameter
|
||||||
22: Label
|
22: Label
|
||||||
35: 34(ptr) AccessChain 20(m) 33
|
36: 35(ptr) AccessChain 20(m) 34
|
||||||
36: 16(fvec4) Load 35
|
37: 16(fvec4) Load 36
|
||||||
37: 7(fvec3) VectorShuffle 36 36 0 1 2
|
38: 7(fvec3) VectorShuffle 37 37 0 1 2
|
||||||
39: 34(ptr) AccessChain 20(m) 38
|
40: 35(ptr) AccessChain 20(m) 39
|
||||||
40: 16(fvec4) Load 39
|
41: 16(fvec4) Load 40
|
||||||
41: 7(fvec3) VectorShuffle 40 40 0 1 2
|
42: 7(fvec3) VectorShuffle 41 41 0 1 2
|
||||||
43: 34(ptr) AccessChain 20(m) 42
|
44: 35(ptr) AccessChain 20(m) 43
|
||||||
44: 16(fvec4) Load 43
|
45: 16(fvec4) Load 44
|
||||||
45: 7(fvec3) VectorShuffle 44 44 0 1 2
|
46: 7(fvec3) VectorShuffle 45 45 0 1 2
|
||||||
48: 6(float) CompositeExtract 37 0
|
49: 6(float) CompositeExtract 38 0
|
||||||
49: 6(float) CompositeExtract 37 1
|
50: 6(float) CompositeExtract 38 1
|
||||||
50: 6(float) CompositeExtract 37 2
|
51: 6(float) CompositeExtract 38 2
|
||||||
51: 6(float) CompositeExtract 41 0
|
52: 6(float) CompositeExtract 42 0
|
||||||
52: 6(float) CompositeExtract 41 1
|
53: 6(float) CompositeExtract 42 1
|
||||||
53: 6(float) CompositeExtract 41 2
|
54: 6(float) CompositeExtract 42 2
|
||||||
54: 6(float) CompositeExtract 45 0
|
55: 6(float) CompositeExtract 46 0
|
||||||
55: 6(float) CompositeExtract 45 1
|
56: 6(float) CompositeExtract 46 1
|
||||||
56: 6(float) CompositeExtract 45 2
|
57: 6(float) CompositeExtract 46 2
|
||||||
57: 7(fvec3) CompositeConstruct 48 49 50
|
58: 7(fvec3) CompositeConstruct 49 50 51
|
||||||
58: 7(fvec3) CompositeConstruct 51 52 53
|
59: 7(fvec3) CompositeConstruct 52 53 54
|
||||||
59: 7(fvec3) CompositeConstruct 54 55 56
|
60: 7(fvec3) CompositeConstruct 55 56 57
|
||||||
60: 8 CompositeConstruct 57 58 59
|
61: 8 CompositeConstruct 58 59 60
|
||||||
ReturnValue 60
|
ReturnValue 61
|
||||||
FunctionEnd
|
FunctionEnd
|
||||||
26(mxv(mf44;vf3;): 7(fvec3) Function None 23
|
26(mxv(mf44;vf3;): 7(fvec3) Function None 23
|
||||||
24(m4): 18(ptr) FunctionParameter
|
24(m4): 18(ptr) FunctionParameter
|
||||||
25(v): 10(ptr) FunctionParameter
|
25(v): 10(ptr) FunctionParameter
|
||||||
27: Label
|
27: Label
|
||||||
63(param): 18(ptr) Variable Function
|
65(param): 18(ptr) Variable Function
|
||||||
62: 7(fvec3) Load 25(v)
|
64: 7(fvec3) Load 25(v)
|
||||||
64: 17 Load 24(m4)
|
66: 17 Load 24(m4)
|
||||||
Store 63(param) 64
|
Store 65(param) 66
|
||||||
65: 8 FunctionCall 21(Mat3(mf44;) 63(param)
|
67: 8 FunctionCall 21(Mat3(mf44;) 65(param)
|
||||||
66: 7(fvec3) VectorTimesMatrix 62 65
|
68: 7(fvec3) VectorTimesMatrix 64 67
|
||||||
ReturnValue 66
|
ReturnValue 68
|
||||||
FunctionEnd
|
FunctionEnd
|
||||||
|
|||||||
@@ -5,12 +5,12 @@ Linked fragment stage:
|
|||||||
|
|
||||||
// Module Version 10000
|
// Module Version 10000
|
||||||
// Generated by (magic number): 80001
|
// Generated by (magic number): 80001
|
||||||
// Id's are bound by 112
|
// Id's are bound by 114
|
||||||
|
|
||||||
Capability Shader
|
Capability Shader
|
||||||
1: ExtInstImport "GLSL.std.450"
|
1: ExtInstImport "GLSL.std.450"
|
||||||
MemoryModel Logical GLSL450
|
MemoryModel Logical GLSL450
|
||||||
EntryPoint Fragment 4 "main" 23 57 59 71
|
EntryPoint Fragment 4 "main" 23 59 61 73
|
||||||
ExecutionMode 4 OriginLowerLeft
|
ExecutionMode 4 OriginLowerLeft
|
||||||
Source ESSL 300
|
Source ESSL 300
|
||||||
Name 4 "main"
|
Name 4 "main"
|
||||||
@@ -19,29 +19,29 @@ Linked fragment stage:
|
|||||||
Name 19 "boolfun(vb2;"
|
Name 19 "boolfun(vb2;"
|
||||||
Name 18 "bv2"
|
Name 18 "bv2"
|
||||||
Name 23 "highfin"
|
Name 23 "highfin"
|
||||||
Name 36 "sum"
|
Name 38 "sum"
|
||||||
Name 38 "uniform_medium"
|
Name 40 "uniform_medium"
|
||||||
Name 40 "uniform_high"
|
Name 42 "uniform_high"
|
||||||
Name 46 "uniform_low"
|
Name 48 "uniform_low"
|
||||||
Name 51 "arg1"
|
Name 53 "arg1"
|
||||||
Name 53 "arg2"
|
Name 55 "arg2"
|
||||||
Name 55 "d"
|
Name 57 "d"
|
||||||
Name 57 "lowfin"
|
Name 59 "lowfin"
|
||||||
Name 59 "mediumfin"
|
Name 61 "mediumfin"
|
||||||
Name 63 "global_highp"
|
Name 65 "global_highp"
|
||||||
Name 67 "local_highp"
|
Name 69 "local_highp"
|
||||||
Name 71 "mediumfout"
|
Name 73 "mediumfout"
|
||||||
Name 102 "ub2"
|
Name 104 "ub2"
|
||||||
Name 103 "param"
|
Name 105 "param"
|
||||||
Decorate 36(sum) RelaxedPrecision
|
Decorate 38(sum) RelaxedPrecision
|
||||||
Decorate 38(uniform_medium) RelaxedPrecision
|
Decorate 40(uniform_medium) RelaxedPrecision
|
||||||
Decorate 46(uniform_low) RelaxedPrecision
|
Decorate 48(uniform_low) RelaxedPrecision
|
||||||
Decorate 51(arg1) RelaxedPrecision
|
Decorate 53(arg1) RelaxedPrecision
|
||||||
Decorate 53(arg2) RelaxedPrecision
|
Decorate 55(arg2) RelaxedPrecision
|
||||||
Decorate 55(d) RelaxedPrecision
|
Decorate 57(d) RelaxedPrecision
|
||||||
Decorate 57(lowfin) RelaxedPrecision
|
Decorate 59(lowfin) RelaxedPrecision
|
||||||
Decorate 59(mediumfin) RelaxedPrecision
|
Decorate 61(mediumfin) RelaxedPrecision
|
||||||
Decorate 71(mediumfout) RelaxedPrecision
|
Decorate 73(mediumfout) RelaxedPrecision
|
||||||
2: TypeVoid
|
2: TypeVoid
|
||||||
3: TypeFunction 2
|
3: TypeFunction 2
|
||||||
6: TypeFloat 32
|
6: TypeFloat 32
|
||||||
@@ -56,105 +56,105 @@ Linked fragment stage:
|
|||||||
21: TypeVector 6(float) 4
|
21: TypeVector 6(float) 4
|
||||||
22: TypePointer Input 21(fvec4)
|
22: TypePointer Input 21(fvec4)
|
||||||
23(highfin): 22(ptr) Variable Input
|
23(highfin): 22(ptr) Variable Input
|
||||||
28: 14(bool) ConstantFalse
|
29: 14(bool) ConstantFalse
|
||||||
29: 14(bool) ConstantTrue
|
30: 14(bool) ConstantTrue
|
||||||
30: 15(bvec2) ConstantComposite 28 29
|
31: 15(bvec2) ConstantComposite 29 30
|
||||||
34: TypeInt 32 1
|
36: TypeInt 32 1
|
||||||
35: TypePointer Function 34(int)
|
37: TypePointer Function 36(int)
|
||||||
37: TypePointer UniformConstant 34(int)
|
39: TypePointer UniformConstant 36(int)
|
||||||
38(uniform_medium): 37(ptr) Variable UniformConstant
|
40(uniform_medium): 39(ptr) Variable UniformConstant
|
||||||
40(uniform_high): 37(ptr) Variable UniformConstant
|
42(uniform_high): 39(ptr) Variable UniformConstant
|
||||||
46(uniform_low): 37(ptr) Variable UniformConstant
|
48(uniform_low): 39(ptr) Variable UniformConstant
|
||||||
50: TypePointer Function 6(float)
|
52: TypePointer Function 6(float)
|
||||||
52: 6(float) Constant 1078774989
|
54: 6(float) Constant 1078774989
|
||||||
54: 6(float) Constant 1232730691
|
56: 6(float) Constant 1232730691
|
||||||
56: TypePointer Input 6(float)
|
58: TypePointer Input 6(float)
|
||||||
57(lowfin): 56(ptr) Variable Input
|
59(lowfin): 58(ptr) Variable Input
|
||||||
59(mediumfin): 56(ptr) Variable Input
|
61(mediumfin): 58(ptr) Variable Input
|
||||||
62: TypePointer Private 6(float)
|
64: TypePointer Private 6(float)
|
||||||
63(global_highp): 62(ptr) Variable Private
|
65(global_highp): 64(ptr) Variable Private
|
||||||
66: TypePointer Function 21(fvec4)
|
68: TypePointer Function 21(fvec4)
|
||||||
70: TypePointer Output 21(fvec4)
|
72: TypePointer Output 21(fvec4)
|
||||||
71(mediumfout): 70(ptr) Variable Output
|
73(mediumfout): 72(ptr) Variable Output
|
||||||
80: 34(int) Constant 4
|
82: 36(int) Constant 4
|
||||||
82: TypeVector 34(int) 2
|
84: TypeVector 36(int) 2
|
||||||
90: TypeInt 32 0
|
92: TypeInt 32 0
|
||||||
91: 90(int) Constant 0
|
93: 92(int) Constant 0
|
||||||
101: TypePointer UniformConstant 15(bvec2)
|
103: TypePointer UniformConstant 15(bvec2)
|
||||||
102(ub2): 101(ptr) Variable UniformConstant
|
104(ub2): 103(ptr) Variable UniformConstant
|
||||||
109: 6(float) Constant 1065353216
|
111: 6(float) Constant 1065353216
|
||||||
4(main): 2 Function None 3
|
4(main): 2 Function None 3
|
||||||
5: Label
|
5: Label
|
||||||
36(sum): 35(ptr) Variable Function
|
38(sum): 37(ptr) Variable Function
|
||||||
51(arg1): 50(ptr) Variable Function
|
53(arg1): 52(ptr) Variable Function
|
||||||
53(arg2): 50(ptr) Variable Function
|
55(arg2): 52(ptr) Variable Function
|
||||||
55(d): 50(ptr) Variable Function
|
57(d): 52(ptr) Variable Function
|
||||||
67(local_highp): 66(ptr) Variable Function
|
69(local_highp): 68(ptr) Variable Function
|
||||||
103(param): 16(ptr) Variable Function
|
105(param): 16(ptr) Variable Function
|
||||||
39: 34(int) Load 38(uniform_medium)
|
41: 36(int) Load 40(uniform_medium)
|
||||||
41: 34(int) Load 40(uniform_high)
|
43: 36(int) Load 42(uniform_high)
|
||||||
42: 34(int) IAdd 39 41
|
44: 36(int) IAdd 41 43
|
||||||
Store 36(sum) 42
|
Store 38(sum) 44
|
||||||
43: 34(int) Load 40(uniform_high)
|
45: 36(int) Load 42(uniform_high)
|
||||||
44: 34(int) Load 36(sum)
|
46: 36(int) Load 38(sum)
|
||||||
45: 34(int) IAdd 44 43
|
47: 36(int) IAdd 46 45
|
||||||
Store 36(sum) 45
|
Store 38(sum) 47
|
||||||
47: 34(int) Load 46(uniform_low)
|
49: 36(int) Load 48(uniform_low)
|
||||||
48: 34(int) Load 36(sum)
|
50: 36(int) Load 38(sum)
|
||||||
49: 34(int) IAdd 48 47
|
51: 36(int) IAdd 50 49
|
||||||
Store 36(sum) 49
|
Store 38(sum) 51
|
||||||
Store 51(arg1) 52
|
Store 53(arg1) 54
|
||||||
Store 53(arg2) 54
|
Store 55(arg2) 56
|
||||||
58: 6(float) Load 57(lowfin)
|
60: 6(float) Load 59(lowfin)
|
||||||
60: 6(float) Load 59(mediumfin)
|
62: 6(float) Load 61(mediumfin)
|
||||||
61: 6(float) ExtInst 1(GLSL.std.450) 67(Distance) 58 60
|
63: 6(float) ExtInst 1(GLSL.std.450) 67(Distance) 60 62
|
||||||
Store 55(d) 61
|
Store 57(d) 63
|
||||||
64: 21(fvec4) Load 23(highfin)
|
66: 21(fvec4) Load 23(highfin)
|
||||||
65: 6(float) ExtInst 1(GLSL.std.450) 66(Length) 64
|
67: 6(float) ExtInst 1(GLSL.std.450) 66(Length) 66
|
||||||
Store 63(global_highp) 65
|
Store 65(global_highp) 67
|
||||||
68: 6(float) Load 63(global_highp)
|
70: 6(float) Load 65(global_highp)
|
||||||
69: 21(fvec4) CompositeConstruct 68 68 68 68
|
71: 21(fvec4) CompositeConstruct 70 70 70 70
|
||||||
Store 67(local_highp) 69
|
Store 69(local_highp) 71
|
||||||
72: 6(float) Load 55(d)
|
74: 6(float) Load 57(d)
|
||||||
73: 6(float) ExtInst 1(GLSL.std.450) 13(Sin) 72
|
75: 6(float) ExtInst 1(GLSL.std.450) 13(Sin) 74
|
||||||
74: 21(fvec4) CompositeConstruct 73 73 73 73
|
|
||||||
75: 6(float) Load 53(arg2)
|
|
||||||
76: 21(fvec4) CompositeConstruct 75 75 75 75
|
76: 21(fvec4) CompositeConstruct 75 75 75 75
|
||||||
77: 21(fvec4) FAdd 74 76
|
77: 6(float) Load 55(arg2)
|
||||||
78: 21(fvec4) Load 67(local_highp)
|
78: 21(fvec4) CompositeConstruct 77 77 77 77
|
||||||
79: 21(fvec4) FAdd 77 78
|
79: 21(fvec4) FAdd 76 78
|
||||||
Store 71(mediumfout) 79
|
80: 21(fvec4) Load 69(local_highp)
|
||||||
81: 34(int) Load 46(uniform_low)
|
81: 21(fvec4) FAdd 79 80
|
||||||
83: 82(ivec2) CompositeConstruct 81 81
|
Store 73(mediumfout) 81
|
||||||
84: 34(int) Load 40(uniform_high)
|
83: 36(int) Load 48(uniform_low)
|
||||||
85: 82(ivec2) CompositeConstruct 84 84
|
85: 84(ivec2) CompositeConstruct 83 83
|
||||||
86: 82(ivec2) IMul 83 85
|
86: 36(int) Load 42(uniform_high)
|
||||||
87: 34(int) Load 40(uniform_high)
|
87: 84(ivec2) CompositeConstruct 86 86
|
||||||
88: 82(ivec2) CompositeConstruct 87 87
|
88: 84(ivec2) IMul 85 87
|
||||||
89: 82(ivec2) IAdd 86 88
|
89: 36(int) Load 42(uniform_high)
|
||||||
92: 34(int) CompositeExtract 89 0
|
90: 84(ivec2) CompositeConstruct 89 89
|
||||||
93: 34(int) IAdd 80 92
|
91: 84(ivec2) IAdd 88 90
|
||||||
94: 34(int) Load 36(sum)
|
94: 36(int) CompositeExtract 91 0
|
||||||
95: 34(int) IAdd 94 93
|
95: 36(int) IAdd 82 94
|
||||||
Store 36(sum) 95
|
96: 36(int) Load 38(sum)
|
||||||
96: 34(int) Load 36(sum)
|
97: 36(int) IAdd 96 95
|
||||||
97: 6(float) ConvertSToF 96
|
Store 38(sum) 97
|
||||||
98: 21(fvec4) CompositeConstruct 97 97 97 97
|
98: 36(int) Load 38(sum)
|
||||||
99: 21(fvec4) Load 71(mediumfout)
|
99: 6(float) ConvertSToF 98
|
||||||
100: 21(fvec4) FAdd 99 98
|
100: 21(fvec4) CompositeConstruct 99 99 99 99
|
||||||
Store 71(mediumfout) 100
|
101: 21(fvec4) Load 73(mediumfout)
|
||||||
104: 15(bvec2) Load 102(ub2)
|
102: 21(fvec4) FAdd 101 100
|
||||||
Store 103(param) 104
|
Store 73(mediumfout) 102
|
||||||
105: 14(bool) FunctionCall 19(boolfun(vb2;) 103(param)
|
106: 15(bvec2) Load 104(ub2)
|
||||||
SelectionMerge 107 None
|
Store 105(param) 106
|
||||||
BranchConditional 105 106 107
|
107: 14(bool) FunctionCall 19(boolfun(vb2;) 105(param)
|
||||||
106: Label
|
SelectionMerge 109 None
|
||||||
108: 21(fvec4) Load 71(mediumfout)
|
BranchConditional 107 108 109
|
||||||
110: 21(fvec4) CompositeConstruct 109 109 109 109
|
108: Label
|
||||||
111: 21(fvec4) FAdd 108 110
|
110: 21(fvec4) Load 73(mediumfout)
|
||||||
Store 71(mediumfout) 111
|
112: 21(fvec4) CompositeConstruct 111 111 111 111
|
||||||
Branch 107
|
113: 21(fvec4) FAdd 110 112
|
||||||
107: Label
|
Store 73(mediumfout) 113
|
||||||
|
Branch 109
|
||||||
|
109: Label
|
||||||
Return
|
Return
|
||||||
FunctionEnd
|
FunctionEnd
|
||||||
12(foo(vf3;): 9(fvec2) Function None 10
|
12(foo(vf3;): 9(fvec2) Function None 10
|
||||||
@@ -167,8 +167,8 @@ Linked fragment stage:
|
|||||||
19(boolfun(vb2;): 14(bool) Function None 17
|
19(boolfun(vb2;): 14(bool) Function None 17
|
||||||
18(bv2): 16(ptr) FunctionParameter
|
18(bv2): 16(ptr) FunctionParameter
|
||||||
20: Label
|
20: Label
|
||||||
27: 15(bvec2) Load 18(bv2)
|
28: 15(bvec2) Load 18(bv2)
|
||||||
31: 15(bvec2) LogicalEqual 27 30
|
32: 15(bvec2) LogicalEqual 28 31
|
||||||
32: 14(bool) All 31
|
33: 14(bool) All 32
|
||||||
ReturnValue 32
|
ReturnValue 33
|
||||||
FunctionEnd
|
FunctionEnd
|
||||||
|
|||||||
@@ -7,26 +7,26 @@ Linked fragment stage:
|
|||||||
|
|
||||||
// Module Version 10000
|
// Module Version 10000
|
||||||
// Generated by (magic number): 80001
|
// Generated by (magic number): 80001
|
||||||
// Id's are bound by 143
|
// Id's are bound by 144
|
||||||
|
|
||||||
Capability Shader
|
Capability Shader
|
||||||
1: ExtInstImport "GLSL.std.450"
|
1: ExtInstImport "GLSL.std.450"
|
||||||
MemoryModel Logical GLSL450
|
MemoryModel Logical GLSL450
|
||||||
EntryPoint Fragment 4 "main" 12 23
|
EntryPoint Fragment 4 "main" 12 24
|
||||||
ExecutionMode 4 OriginLowerLeft
|
ExecutionMode 4 OriginLowerLeft
|
||||||
Source GLSL 400
|
Source GLSL 400
|
||||||
Name 4 "main"
|
Name 4 "main"
|
||||||
Name 8 "foo("
|
Name 8 "foo("
|
||||||
Name 12 "of1"
|
Name 12 "of1"
|
||||||
Name 23 "of4"
|
Name 24 "of4"
|
||||||
Name 26 "ub"
|
Name 27 "ub"
|
||||||
Name 30 "ui"
|
Name 31 "ui"
|
||||||
Name 40 "uba"
|
Name 41 "uba"
|
||||||
Name 109 "uf"
|
Name 110 "uf"
|
||||||
Name 136 "uiv4"
|
Name 137 "uiv4"
|
||||||
Name 138 "uv4"
|
Name 139 "uv4"
|
||||||
Name 141 "ub41"
|
Name 142 "ub41"
|
||||||
Name 142 "ub42"
|
Name 143 "ub42"
|
||||||
2: TypeVoid
|
2: TypeVoid
|
||||||
3: TypeFunction 2
|
3: TypeFunction 2
|
||||||
6: TypeBool
|
6: TypeBool
|
||||||
@@ -36,190 +36,190 @@ Linked fragment stage:
|
|||||||
12(of1): 11(ptr) Variable Output
|
12(of1): 11(ptr) Variable Output
|
||||||
14: 10(float) Constant 1065353216
|
14: 10(float) Constant 1065353216
|
||||||
17: 10(float) Constant 1092616192
|
17: 10(float) Constant 1092616192
|
||||||
20: 10(float) Constant 0
|
21: 10(float) Constant 0
|
||||||
21: TypeVector 10(float) 4
|
22: TypeVector 10(float) 4
|
||||||
22: TypePointer Output 21(fvec4)
|
23: TypePointer Output 22(fvec4)
|
||||||
23(of4): 22(ptr) Variable Output
|
24(of4): 23(ptr) Variable Output
|
||||||
24: 21(fvec4) ConstantComposite 20 20 20 20
|
25: 22(fvec4) ConstantComposite 21 21 21 21
|
||||||
25: TypePointer UniformConstant 6(bool)
|
26: TypePointer UniformConstant 6(bool)
|
||||||
26(ub): 25(ptr) Variable UniformConstant
|
27(ub): 26(ptr) Variable UniformConstant
|
||||||
28: TypeInt 32 1
|
29: TypeInt 32 1
|
||||||
29: TypePointer UniformConstant 28(int)
|
30: TypePointer UniformConstant 29(int)
|
||||||
30(ui): 29(ptr) Variable UniformConstant
|
31(ui): 30(ptr) Variable UniformConstant
|
||||||
32: 28(int) Constant 2
|
33: 29(int) Constant 2
|
||||||
40(uba): 25(ptr) Variable UniformConstant
|
41(uba): 26(ptr) Variable UniformConstant
|
||||||
108: TypePointer UniformConstant 10(float)
|
109: TypePointer UniformConstant 10(float)
|
||||||
109(uf): 108(ptr) Variable UniformConstant
|
110(uf): 109(ptr) Variable UniformConstant
|
||||||
112: 10(float) Constant 1082130432
|
113: 10(float) Constant 1082130432
|
||||||
134: TypeVector 28(int) 4
|
135: TypeVector 29(int) 4
|
||||||
135: TypePointer UniformConstant 134(ivec4)
|
136: TypePointer UniformConstant 135(ivec4)
|
||||||
136(uiv4): 135(ptr) Variable UniformConstant
|
137(uiv4): 136(ptr) Variable UniformConstant
|
||||||
137: TypePointer UniformConstant 21(fvec4)
|
138: TypePointer UniformConstant 22(fvec4)
|
||||||
138(uv4): 137(ptr) Variable UniformConstant
|
139(uv4): 138(ptr) Variable UniformConstant
|
||||||
139: TypeVector 6(bool) 4
|
140: TypeVector 6(bool) 4
|
||||||
140: TypePointer UniformConstant 139(bvec4)
|
141: TypePointer UniformConstant 140(bvec4)
|
||||||
141(ub41): 140(ptr) Variable UniformConstant
|
142(ub41): 141(ptr) Variable UniformConstant
|
||||||
142(ub42): 140(ptr) Variable UniformConstant
|
143(ub42): 141(ptr) Variable UniformConstant
|
||||||
4(main): 2 Function None 3
|
4(main): 2 Function None 3
|
||||||
5: Label
|
5: Label
|
||||||
Store 12(of1) 20
|
Store 12(of1) 21
|
||||||
Store 23(of4) 24
|
Store 24(of4) 25
|
||||||
27: 6(bool) Load 26(ub)
|
28: 6(bool) Load 27(ub)
|
||||||
31: 28(int) Load 30(ui)
|
32: 29(int) Load 31(ui)
|
||||||
33: 6(bool) SGreaterThan 31 32
|
34: 6(bool) SGreaterThan 32 33
|
||||||
34: 6(bool) LogicalOr 27 33
|
35: 6(bool) LogicalOr 28 34
|
||||||
SelectionMerge 36 None
|
SelectionMerge 37 None
|
||||||
BranchConditional 34 35 36
|
BranchConditional 35 36 37
|
||||||
35: Label
|
36: Label
|
||||||
37: 10(float) Load 12(of1)
|
38: 10(float) Load 12(of1)
|
||||||
38: 10(float) FAdd 37 14
|
39: 10(float) FAdd 38 14
|
||||||
Store 12(of1) 38
|
Store 12(of1) 39
|
||||||
Branch 36
|
Branch 37
|
||||||
36: Label
|
37: Label
|
||||||
39: 6(bool) Load 26(ub)
|
40: 6(bool) Load 27(ub)
|
||||||
41: 6(bool) Load 40(uba)
|
42: 6(bool) Load 41(uba)
|
||||||
42: 6(bool) LogicalNot 41
|
43: 6(bool) LogicalNot 42
|
||||||
43: 6(bool) LogicalAnd 39 42
|
44: 6(bool) LogicalAnd 40 43
|
||||||
SelectionMerge 45 None
|
SelectionMerge 46 None
|
||||||
BranchConditional 43 44 45
|
BranchConditional 44 45 46
|
||||||
44: Label
|
45: Label
|
||||||
46: 10(float) Load 12(of1)
|
47: 10(float) Load 12(of1)
|
||||||
47: 10(float) FAdd 46 14
|
48: 10(float) FAdd 47 14
|
||||||
Store 12(of1) 47
|
Store 12(of1) 48
|
||||||
Branch 45
|
Branch 46
|
||||||
45: Label
|
46: Label
|
||||||
48: 6(bool) Load 26(ub)
|
49: 6(bool) Load 27(ub)
|
||||||
49: 6(bool) LogicalNot 48
|
50: 6(bool) LogicalNot 49
|
||||||
SelectionMerge 51 None
|
SelectionMerge 52 None
|
||||||
BranchConditional 49 50 51
|
BranchConditional 50 51 52
|
||||||
50: Label
|
51: Label
|
||||||
52: 6(bool) FunctionCall 8(foo()
|
53: 6(bool) FunctionCall 8(foo()
|
||||||
Branch 51
|
Branch 52
|
||||||
51: Label
|
52: Label
|
||||||
53: 6(bool) Phi 48 45 52 50
|
54: 6(bool) Phi 49 46 53 51
|
||||||
SelectionMerge 55 None
|
SelectionMerge 56 None
|
||||||
BranchConditional 53 54 55
|
BranchConditional 54 55 56
|
||||||
54: Label
|
55: Label
|
||||||
56: 10(float) Load 12(of1)
|
57: 10(float) Load 12(of1)
|
||||||
57: 10(float) FAdd 56 14
|
58: 10(float) FAdd 57 14
|
||||||
Store 12(of1) 57
|
Store 12(of1) 58
|
||||||
Branch 55
|
Branch 56
|
||||||
55: Label
|
56: Label
|
||||||
58: 6(bool) Load 26(ub)
|
59: 6(bool) Load 27(ub)
|
||||||
SelectionMerge 60 None
|
SelectionMerge 61 None
|
||||||
BranchConditional 58 59 60
|
BranchConditional 59 60 61
|
||||||
59: Label
|
60: Label
|
||||||
61: 6(bool) FunctionCall 8(foo()
|
62: 6(bool) FunctionCall 8(foo()
|
||||||
Branch 60
|
Branch 61
|
||||||
60: Label
|
61: Label
|
||||||
62: 6(bool) Phi 58 55 61 59
|
63: 6(bool) Phi 59 56 62 60
|
||||||
SelectionMerge 64 None
|
SelectionMerge 65 None
|
||||||
BranchConditional 62 63 64
|
BranchConditional 63 64 65
|
||||||
63: Label
|
64: Label
|
||||||
65: 10(float) Load 12(of1)
|
66: 10(float) Load 12(of1)
|
||||||
66: 10(float) FAdd 65 14
|
67: 10(float) FAdd 66 14
|
||||||
Store 12(of1) 66
|
Store 12(of1) 67
|
||||||
Branch 64
|
Branch 65
|
||||||
64: Label
|
65: Label
|
||||||
67: 6(bool) FunctionCall 8(foo()
|
68: 6(bool) FunctionCall 8(foo()
|
||||||
68: 6(bool) Load 26(ub)
|
69: 6(bool) Load 27(ub)
|
||||||
69: 6(bool) LogicalOr 67 68
|
70: 6(bool) LogicalOr 68 69
|
||||||
SelectionMerge 71 None
|
SelectionMerge 72 None
|
||||||
BranchConditional 69 70 71
|
BranchConditional 70 71 72
|
||||||
70: Label
|
71: Label
|
||||||
72: 10(float) Load 12(of1)
|
73: 10(float) Load 12(of1)
|
||||||
73: 10(float) FAdd 72 14
|
74: 10(float) FAdd 73 14
|
||||||
Store 12(of1) 73
|
Store 12(of1) 74
|
||||||
Branch 71
|
Branch 72
|
||||||
71: Label
|
72: Label
|
||||||
74: 6(bool) FunctionCall 8(foo()
|
75: 6(bool) FunctionCall 8(foo()
|
||||||
75: 6(bool) Load 26(ub)
|
76: 6(bool) Load 27(ub)
|
||||||
76: 6(bool) LogicalAnd 74 75
|
77: 6(bool) LogicalAnd 75 76
|
||||||
SelectionMerge 78 None
|
SelectionMerge 79 None
|
||||||
BranchConditional 76 77 78
|
BranchConditional 77 78 79
|
||||||
77: Label
|
78: Label
|
||||||
79: 10(float) Load 12(of1)
|
80: 10(float) Load 12(of1)
|
||||||
80: 10(float) FAdd 79 14
|
81: 10(float) FAdd 80 14
|
||||||
Store 12(of1) 80
|
Store 12(of1) 81
|
||||||
Branch 78
|
Branch 79
|
||||||
78: Label
|
79: Label
|
||||||
81: 6(bool) Load 26(ub)
|
82: 6(bool) Load 27(ub)
|
||||||
82: 6(bool) LogicalNot 81
|
83: 6(bool) LogicalNot 82
|
||||||
SelectionMerge 84 None
|
SelectionMerge 85 None
|
||||||
BranchConditional 82 83 84
|
BranchConditional 83 84 85
|
||||||
83: Label
|
84: Label
|
||||||
85: 10(float) Load 12(of1)
|
86: 10(float) Load 12(of1)
|
||||||
86: 10(float) FAdd 85 14
|
87: 10(float) FAdd 86 14
|
||||||
Store 12(of1) 86
|
Store 12(of1) 87
|
||||||
87: 6(bool) FOrdGreaterThan 86 14
|
88: 6(bool) FOrdGreaterThan 87 14
|
||||||
Branch 84
|
Branch 85
|
||||||
84: Label
|
85: Label
|
||||||
88: 6(bool) Phi 81 78 87 83
|
89: 6(bool) Phi 82 79 88 84
|
||||||
SelectionMerge 90 None
|
SelectionMerge 91 None
|
||||||
BranchConditional 88 89 90
|
BranchConditional 89 90 91
|
||||||
89: Label
|
90: Label
|
||||||
91: 21(fvec4) Load 23(of4)
|
92: 22(fvec4) Load 24(of4)
|
||||||
92: 21(fvec4) CompositeConstruct 14 14 14 14
|
93: 22(fvec4) CompositeConstruct 14 14 14 14
|
||||||
93: 21(fvec4) FAdd 91 92
|
94: 22(fvec4) FAdd 92 93
|
||||||
Store 23(of4) 93
|
Store 24(of4) 94
|
||||||
Branch 90
|
Branch 91
|
||||||
90: Label
|
91: Label
|
||||||
94: 10(float) Load 12(of1)
|
95: 10(float) Load 12(of1)
|
||||||
95: 10(float) FAdd 94 14
|
96: 10(float) FAdd 95 14
|
||||||
Store 12(of1) 95
|
Store 12(of1) 96
|
||||||
96: 6(bool) FOrdGreaterThan 95 14
|
97: 6(bool) FOrdGreaterThan 96 14
|
||||||
97: 6(bool) Load 26(ub)
|
98: 6(bool) Load 27(ub)
|
||||||
98: 6(bool) LogicalOr 96 97
|
99: 6(bool) LogicalOr 97 98
|
||||||
SelectionMerge 100 None
|
SelectionMerge 101 None
|
||||||
BranchConditional 98 99 100
|
BranchConditional 99 100 101
|
||||||
99: Label
|
100: Label
|
||||||
101: 21(fvec4) Load 23(of4)
|
102: 22(fvec4) Load 24(of4)
|
||||||
102: 21(fvec4) CompositeConstruct 14 14 14 14
|
103: 22(fvec4) CompositeConstruct 14 14 14 14
|
||||||
103: 21(fvec4) FAdd 101 102
|
104: 22(fvec4) FAdd 102 103
|
||||||
Store 23(of4) 103
|
Store 24(of4) 104
|
||||||
Branch 100
|
Branch 101
|
||||||
100: Label
|
101: Label
|
||||||
104: 6(bool) Load 26(ub)
|
105: 6(bool) Load 27(ub)
|
||||||
105: 6(bool) LogicalNot 104
|
106: 6(bool) LogicalNot 105
|
||||||
SelectionMerge 107 None
|
SelectionMerge 108 None
|
||||||
BranchConditional 105 106 107
|
BranchConditional 106 107 108
|
||||||
106: Label
|
107: Label
|
||||||
110: 10(float) Load 109(uf)
|
111: 10(float) Load 110(uf)
|
||||||
111: 10(float) ExtInst 1(GLSL.std.450) 13(Sin) 110
|
112: 10(float) ExtInst 1(GLSL.std.450) 13(Sin) 111
|
||||||
113: 10(float) FMul 111 112
|
114: 10(float) FMul 112 113
|
||||||
114: 10(float) Load 12(of1)
|
115: 10(float) Load 12(of1)
|
||||||
115: 6(bool) FOrdGreaterThan 113 114
|
116: 6(bool) FOrdGreaterThan 114 115
|
||||||
Branch 107
|
Branch 108
|
||||||
107: Label
|
108: Label
|
||||||
116: 6(bool) Phi 104 100 115 106
|
117: 6(bool) Phi 105 101 116 107
|
||||||
SelectionMerge 118 None
|
SelectionMerge 119 None
|
||||||
BranchConditional 116 117 118
|
BranchConditional 117 118 119
|
||||||
117: Label
|
118: Label
|
||||||
119: 10(float) Load 12(of1)
|
120: 10(float) Load 12(of1)
|
||||||
120: 10(float) FAdd 119 14
|
121: 10(float) FAdd 120 14
|
||||||
Store 12(of1) 120
|
Store 12(of1) 121
|
||||||
Branch 118
|
Branch 119
|
||||||
118: Label
|
119: Label
|
||||||
121: 6(bool) Load 26(ub)
|
122: 6(bool) Load 27(ub)
|
||||||
SelectionMerge 123 None
|
SelectionMerge 124 None
|
||||||
BranchConditional 121 122 123
|
BranchConditional 122 123 124
|
||||||
122: Label
|
123: Label
|
||||||
124: 10(float) Load 109(uf)
|
125: 10(float) Load 110(uf)
|
||||||
125: 10(float) ExtInst 1(GLSL.std.450) 13(Sin) 124
|
126: 10(float) ExtInst 1(GLSL.std.450) 13(Sin) 125
|
||||||
126: 10(float) FMul 125 112
|
127: 10(float) FMul 126 113
|
||||||
127: 10(float) Load 12(of1)
|
128: 10(float) Load 12(of1)
|
||||||
128: 6(bool) FOrdGreaterThan 126 127
|
129: 6(bool) FOrdGreaterThan 127 128
|
||||||
Branch 123
|
Branch 124
|
||||||
123: Label
|
124: Label
|
||||||
129: 6(bool) Phi 121 118 128 122
|
130: 6(bool) Phi 122 119 129 123
|
||||||
SelectionMerge 131 None
|
SelectionMerge 132 None
|
||||||
BranchConditional 129 130 131
|
BranchConditional 130 131 132
|
||||||
130: Label
|
131: Label
|
||||||
132: 10(float) Load 12(of1)
|
133: 10(float) Load 12(of1)
|
||||||
133: 10(float) FAdd 132 14
|
134: 10(float) FAdd 133 14
|
||||||
Store 12(of1) 133
|
Store 12(of1) 134
|
||||||
Branch 131
|
Branch 132
|
||||||
131: Label
|
132: Label
|
||||||
Return
|
Return
|
||||||
FunctionEnd
|
FunctionEnd
|
||||||
8(foo(): 6(bool) Function None 7
|
8(foo(): 6(bool) Function None 7
|
||||||
|
|||||||
@@ -7,20 +7,20 @@ Linked fragment stage:
|
|||||||
|
|
||||||
// Module Version 10000
|
// Module Version 10000
|
||||||
// Generated by (magic number): 80001
|
// Generated by (magic number): 80001
|
||||||
// Id's are bound by 22
|
// Id's are bound by 23
|
||||||
|
|
||||||
Capability Shader
|
Capability Shader
|
||||||
1: ExtInstImport "GLSL.std.450"
|
1: ExtInstImport "GLSL.std.450"
|
||||||
MemoryModel Logical GLSL450
|
MemoryModel Logical GLSL450
|
||||||
EntryPoint Fragment 4 "main" 12 16
|
EntryPoint Fragment 4 "main" 12 17
|
||||||
ExecutionMode 4 OriginLowerLeft
|
ExecutionMode 4 OriginLowerLeft
|
||||||
Source GLSL 150
|
Source GLSL 150
|
||||||
Name 4 "main"
|
Name 4 "main"
|
||||||
Name 9 "foo("
|
Name 9 "foo("
|
||||||
Name 12 "BaseColor"
|
Name 12 "BaseColor"
|
||||||
Name 16 "gl_FragColor"
|
Name 17 "gl_FragColor"
|
||||||
Name 19 "bigColor"
|
Name 20 "bigColor"
|
||||||
Name 21 "d"
|
Name 22 "d"
|
||||||
2: TypeVoid
|
2: TypeVoid
|
||||||
3: TypeFunction 2
|
3: TypeFunction 2
|
||||||
6: TypeFloat 32
|
6: TypeFloat 32
|
||||||
@@ -28,16 +28,16 @@ Linked fragment stage:
|
|||||||
8: TypeFunction 7(fvec4)
|
8: TypeFunction 7(fvec4)
|
||||||
11: TypePointer Input 7(fvec4)
|
11: TypePointer Input 7(fvec4)
|
||||||
12(BaseColor): 11(ptr) Variable Input
|
12(BaseColor): 11(ptr) Variable Input
|
||||||
15: TypePointer Output 7(fvec4)
|
16: TypePointer Output 7(fvec4)
|
||||||
16(gl_FragColor): 15(ptr) Variable Output
|
17(gl_FragColor): 16(ptr) Variable Output
|
||||||
18: TypePointer UniformConstant 7(fvec4)
|
19: TypePointer UniformConstant 7(fvec4)
|
||||||
19(bigColor): 18(ptr) Variable UniformConstant
|
20(bigColor): 19(ptr) Variable UniformConstant
|
||||||
20: TypePointer UniformConstant 6(float)
|
21: TypePointer UniformConstant 6(float)
|
||||||
21(d): 20(ptr) Variable UniformConstant
|
22(d): 21(ptr) Variable UniformConstant
|
||||||
4(main): 2 Function None 3
|
4(main): 2 Function None 3
|
||||||
5: Label
|
5: Label
|
||||||
17: 7(fvec4) FunctionCall 9(foo()
|
18: 7(fvec4) FunctionCall 9(foo()
|
||||||
Store 16(gl_FragColor) 17
|
Store 17(gl_FragColor) 18
|
||||||
Return
|
Return
|
||||||
FunctionEnd
|
FunctionEnd
|
||||||
9(foo(): 7(fvec4) Function None 8
|
9(foo(): 7(fvec4) Function None 8
|
||||||
|
|||||||
@@ -10,12 +10,12 @@ Linked fragment stage:
|
|||||||
|
|
||||||
// Module Version 10000
|
// Module Version 10000
|
||||||
// Generated by (magic number): 80001
|
// Generated by (magic number): 80001
|
||||||
// Id's are bound by 265
|
// Id's are bound by 267
|
||||||
|
|
||||||
Capability Shader
|
Capability Shader
|
||||||
1: ExtInstImport "GLSL.std.450"
|
1: ExtInstImport "GLSL.std.450"
|
||||||
MemoryModel Logical GLSL450
|
MemoryModel Logical GLSL450
|
||||||
EntryPoint Fragment 4 "main" 73 223
|
EntryPoint Fragment 4 "main" 75 225
|
||||||
ExecutionMode 4 OriginLowerLeft
|
ExecutionMode 4 OriginLowerLeft
|
||||||
Source ESSL 310
|
Source ESSL 310
|
||||||
Name 4 "main"
|
Name 4 "main"
|
||||||
@@ -27,30 +27,30 @@ Linked fragment stage:
|
|||||||
Name 17 "v1"
|
Name 17 "v1"
|
||||||
Name 18 "v2"
|
Name 18 "v2"
|
||||||
Name 19 "i1"
|
Name 19 "i1"
|
||||||
Name 58 "local"
|
Name 60 "local"
|
||||||
Name 60 "c"
|
Name 62 "c"
|
||||||
Name 71 "f"
|
Name 73 "f"
|
||||||
Name 73 "x"
|
Name 75 "x"
|
||||||
Name 127 "d"
|
Name 129 "d"
|
||||||
Name 153 "i"
|
Name 155 "i"
|
||||||
Name 172 "j"
|
Name 174 "j"
|
||||||
Name 223 "color"
|
Name 225 "color"
|
||||||
Name 229 "v"
|
Name 231 "v"
|
||||||
Name 230 "param"
|
|
||||||
Name 232 "param"
|
Name 232 "param"
|
||||||
Name 234 "param"
|
Name 234 "param"
|
||||||
Name 242 "param"
|
Name 236 "param"
|
||||||
Name 244 "param"
|
Name 244 "param"
|
||||||
Name 246 "param"
|
Name 246 "param"
|
||||||
Decorate 58(local) RelaxedPrecision
|
Name 248 "param"
|
||||||
Decorate 60(c) RelaxedPrecision
|
Decorate 60(local) RelaxedPrecision
|
||||||
Decorate 71(f) RelaxedPrecision
|
Decorate 62(c) RelaxedPrecision
|
||||||
Decorate 73(x) RelaxedPrecision
|
Decorate 73(f) RelaxedPrecision
|
||||||
Decorate 127(d) RelaxedPrecision
|
Decorate 75(x) RelaxedPrecision
|
||||||
Decorate 153(i) RelaxedPrecision
|
Decorate 129(d) RelaxedPrecision
|
||||||
Decorate 172(j) RelaxedPrecision
|
Decorate 155(i) RelaxedPrecision
|
||||||
Decorate 223(color) RelaxedPrecision
|
Decorate 174(j) RelaxedPrecision
|
||||||
Decorate 229(v) RelaxedPrecision
|
Decorate 225(color) RelaxedPrecision
|
||||||
|
Decorate 231(v) RelaxedPrecision
|
||||||
2: TypeVoid
|
2: TypeVoid
|
||||||
3: TypeFunction 2
|
3: TypeFunction 2
|
||||||
6: TypeFloat 32
|
6: TypeFloat 32
|
||||||
@@ -61,291 +61,291 @@ Linked fragment stage:
|
|||||||
11: TypeFunction 7(fvec4) 8(ptr) 8(ptr) 10(ptr)
|
11: TypeFunction 7(fvec4) 8(ptr) 8(ptr) 10(ptr)
|
||||||
36: 6(float) Constant 0
|
36: 6(float) Constant 0
|
||||||
37: 7(fvec4) ConstantComposite 36 36 36 36
|
37: 7(fvec4) ConstantComposite 36 36 36 36
|
||||||
47: 6(float) Constant 1065353216
|
48: 6(float) Constant 1065353216
|
||||||
48: 7(fvec4) ConstantComposite 47 47 47 47
|
49: 7(fvec4) ConstantComposite 48 48 48 48
|
||||||
59: TypePointer UniformConstant 9(int)
|
61: TypePointer UniformConstant 9(int)
|
||||||
60(c): 59(ptr) Variable UniformConstant
|
62(c): 61(ptr) Variable UniformConstant
|
||||||
63: 9(int) Constant 1
|
65: 9(int) Constant 1
|
||||||
70: TypePointer Function 6(float)
|
72: TypePointer Function 6(float)
|
||||||
72: TypePointer Input 6(float)
|
74: TypePointer Input 6(float)
|
||||||
73(x): 72(ptr) Variable Input
|
75(x): 74(ptr) Variable Input
|
||||||
127(d): 59(ptr) Variable UniformConstant
|
129(d): 61(ptr) Variable UniformConstant
|
||||||
154: 9(int) Constant 0
|
156: 9(int) Constant 0
|
||||||
160: 9(int) Constant 10
|
162: 9(int) Constant 10
|
||||||
161: TypeBool
|
163: TypeBool
|
||||||
173: 9(int) Constant 20
|
175: 9(int) Constant 20
|
||||||
179: 9(int) Constant 30
|
181: 9(int) Constant 30
|
||||||
184: 6(float) Constant 1120429670
|
186: 6(float) Constant 1120429670
|
||||||
204: 6(float) Constant 1079739679
|
206: 6(float) Constant 1079739679
|
||||||
222: TypePointer Output 6(float)
|
224: TypePointer Output 6(float)
|
||||||
223(color): 222(ptr) Variable Output
|
225(color): 224(ptr) Variable Output
|
||||||
228: TypePointer UniformConstant 7(fvec4)
|
230: TypePointer UniformConstant 7(fvec4)
|
||||||
229(v): 228(ptr) Variable UniformConstant
|
231(v): 230(ptr) Variable UniformConstant
|
||||||
237: TypeInt 32 0
|
239: TypeInt 32 0
|
||||||
238: 237(int) Constant 1
|
240: 239(int) Constant 1
|
||||||
249: 237(int) Constant 2
|
251: 239(int) Constant 2
|
||||||
4(main): 2 Function None 3
|
4(main): 2 Function None 3
|
||||||
5: Label
|
5: Label
|
||||||
58(local): 10(ptr) Variable Function
|
60(local): 10(ptr) Variable Function
|
||||||
71(f): 70(ptr) Variable Function
|
73(f): 72(ptr) Variable Function
|
||||||
153(i): 10(ptr) Variable Function
|
155(i): 10(ptr) Variable Function
|
||||||
172(j): 10(ptr) Variable Function
|
174(j): 10(ptr) Variable Function
|
||||||
230(param): 8(ptr) Variable Function
|
|
||||||
232(param): 8(ptr) Variable Function
|
232(param): 8(ptr) Variable Function
|
||||||
234(param): 10(ptr) Variable Function
|
234(param): 8(ptr) Variable Function
|
||||||
242(param): 8(ptr) Variable Function
|
236(param): 10(ptr) Variable Function
|
||||||
244(param): 8(ptr) Variable Function
|
244(param): 8(ptr) Variable Function
|
||||||
246(param): 10(ptr) Variable Function
|
246(param): 8(ptr) Variable Function
|
||||||
61: 9(int) Load 60(c)
|
248(param): 10(ptr) Variable Function
|
||||||
Store 58(local) 61
|
63: 9(int) Load 62(c)
|
||||||
62: 9(int) Load 58(local)
|
Store 60(local) 63
|
||||||
64: 9(int) IAdd 62 63
|
64: 9(int) Load 60(local)
|
||||||
Store 58(local) 64
|
66: 9(int) IAdd 64 65
|
||||||
65: 9(int) Load 60(c)
|
Store 60(local) 66
|
||||||
SelectionMerge 69 None
|
67: 9(int) Load 62(c)
|
||||||
Switch 65 68
|
SelectionMerge 71 None
|
||||||
case 1: 66
|
Switch 67 70
|
||||||
case 2: 67
|
case 1: 68
|
||||||
|
case 2: 69
|
||||||
|
70: Label
|
||||||
|
82: 6(float) Load 75(x)
|
||||||
|
83: 6(float) ExtInst 1(GLSL.std.450) 15(Tan) 82
|
||||||
|
Store 73(f) 83
|
||||||
|
Branch 71
|
||||||
68: Label
|
68: Label
|
||||||
80: 6(float) Load 73(x)
|
76: 6(float) Load 75(x)
|
||||||
81: 6(float) ExtInst 1(GLSL.std.450) 15(Tan) 80
|
77: 6(float) ExtInst 1(GLSL.std.450) 13(Sin) 76
|
||||||
Store 71(f) 81
|
Store 73(f) 77
|
||||||
Branch 69
|
Branch 71
|
||||||
66: Label
|
69: Label
|
||||||
74: 6(float) Load 73(x)
|
79: 6(float) Load 75(x)
|
||||||
75: 6(float) ExtInst 1(GLSL.std.450) 13(Sin) 74
|
80: 6(float) ExtInst 1(GLSL.std.450) 14(Cos) 79
|
||||||
Store 71(f) 75
|
Store 73(f) 80
|
||||||
Branch 69
|
Branch 71
|
||||||
67: Label
|
71: Label
|
||||||
77: 6(float) Load 73(x)
|
85: 9(int) Load 62(c)
|
||||||
78: 6(float) ExtInst 1(GLSL.std.450) 14(Cos) 77
|
SelectionMerge 89 None
|
||||||
Store 71(f) 78
|
Switch 85 88
|
||||||
Branch 69
|
case 1: 86
|
||||||
69: Label
|
case 2: 87
|
||||||
83: 9(int) Load 60(c)
|
88: Label
|
||||||
SelectionMerge 87 None
|
99: 6(float) Load 75(x)
|
||||||
Switch 83 86
|
100: 6(float) ExtInst 1(GLSL.std.450) 15(Tan) 99
|
||||||
case 1: 84
|
101: 6(float) Load 73(f)
|
||||||
case 2: 85
|
102: 6(float) FAdd 101 100
|
||||||
|
Store 73(f) 102
|
||||||
|
Branch 89
|
||||||
86: Label
|
86: Label
|
||||||
97: 6(float) Load 73(x)
|
90: 6(float) Load 75(x)
|
||||||
98: 6(float) ExtInst 1(GLSL.std.450) 15(Tan) 97
|
91: 6(float) ExtInst 1(GLSL.std.450) 13(Sin) 90
|
||||||
99: 6(float) Load 71(f)
|
92: 6(float) Load 73(f)
|
||||||
100: 6(float) FAdd 99 98
|
93: 6(float) FAdd 92 91
|
||||||
Store 71(f) 100
|
Store 73(f) 93
|
||||||
Branch 87
|
Branch 87
|
||||||
84: Label
|
87: Label
|
||||||
88: 6(float) Load 73(x)
|
94: 6(float) Load 75(x)
|
||||||
89: 6(float) ExtInst 1(GLSL.std.450) 13(Sin) 88
|
95: 6(float) ExtInst 1(GLSL.std.450) 14(Cos) 94
|
||||||
90: 6(float) Load 71(f)
|
96: 6(float) Load 73(f)
|
||||||
91: 6(float) FAdd 90 89
|
97: 6(float) FAdd 96 95
|
||||||
Store 71(f) 91
|
Store 73(f) 97
|
||||||
Branch 85
|
Branch 89
|
||||||
85: Label
|
89: Label
|
||||||
92: 6(float) Load 73(x)
|
104: 9(int) Load 62(c)
|
||||||
93: 6(float) ExtInst 1(GLSL.std.450) 14(Cos) 92
|
SelectionMerge 107 None
|
||||||
94: 6(float) Load 71(f)
|
Switch 104 107
|
||||||
95: 6(float) FAdd 94 93
|
case 1: 105
|
||||||
Store 71(f) 95
|
case 2: 106
|
||||||
Branch 87
|
105: Label
|
||||||
87: Label
|
108: 6(float) Load 75(x)
|
||||||
102: 9(int) Load 60(c)
|
109: 6(float) ExtInst 1(GLSL.std.450) 13(Sin) 108
|
||||||
SelectionMerge 105 None
|
110: 6(float) Load 73(f)
|
||||||
Switch 102 105
|
111: 6(float) FAdd 110 109
|
||||||
case 1: 103
|
Store 73(f) 111
|
||||||
case 2: 104
|
Branch 107
|
||||||
103: Label
|
106: Label
|
||||||
106: 6(float) Load 73(x)
|
113: 6(float) Load 75(x)
|
||||||
107: 6(float) ExtInst 1(GLSL.std.450) 13(Sin) 106
|
114: 6(float) ExtInst 1(GLSL.std.450) 14(Cos) 113
|
||||||
108: 6(float) Load 71(f)
|
115: 6(float) Load 73(f)
|
||||||
109: 6(float) FAdd 108 107
|
116: 6(float) FAdd 115 114
|
||||||
Store 71(f) 109
|
Store 73(f) 116
|
||||||
Branch 105
|
Branch 107
|
||||||
104: Label
|
107: Label
|
||||||
111: 6(float) Load 73(x)
|
119: 9(int) Load 62(c)
|
||||||
112: 6(float) ExtInst 1(GLSL.std.450) 14(Cos) 111
|
SelectionMerge 123 None
|
||||||
113: 6(float) Load 71(f)
|
Switch 119 122
|
||||||
114: 6(float) FAdd 113 112
|
case 1: 120
|
||||||
Store 71(f) 114
|
case 2: 121
|
||||||
Branch 105
|
122: Label
|
||||||
105: Label
|
150: 6(float) Load 75(x)
|
||||||
117: 9(int) Load 60(c)
|
151: 6(float) ExtInst 1(GLSL.std.450) 15(Tan) 150
|
||||||
SelectionMerge 121 None
|
152: 6(float) Load 73(f)
|
||||||
Switch 117 120
|
153: 6(float) FAdd 152 151
|
||||||
case 1: 118
|
Store 73(f) 153
|
||||||
case 2: 119
|
Branch 123
|
||||||
120: Label
|
120: Label
|
||||||
148: 6(float) Load 73(x)
|
124: 6(float) Load 75(x)
|
||||||
149: 6(float) ExtInst 1(GLSL.std.450) 15(Tan) 148
|
125: 6(float) ExtInst 1(GLSL.std.450) 13(Sin) 124
|
||||||
150: 6(float) Load 71(f)
|
126: 6(float) Load 73(f)
|
||||||
151: 6(float) FAdd 150 149
|
127: 6(float) FAdd 126 125
|
||||||
Store 71(f) 151
|
Store 73(f) 127
|
||||||
Branch 121
|
Branch 123
|
||||||
118: Label
|
121: Label
|
||||||
122: 6(float) Load 73(x)
|
130: 9(int) Load 129(d)
|
||||||
123: 6(float) ExtInst 1(GLSL.std.450) 13(Sin) 122
|
SelectionMerge 133 None
|
||||||
124: 6(float) Load 71(f)
|
Switch 130 133
|
||||||
125: 6(float) FAdd 124 123
|
case 1: 131
|
||||||
Store 71(f) 125
|
case 2: 132
|
||||||
Branch 121
|
131: Label
|
||||||
119: Label
|
134: 6(float) Load 75(x)
|
||||||
128: 9(int) Load 127(d)
|
135: 6(float) Load 75(x)
|
||||||
SelectionMerge 131 None
|
|
||||||
Switch 128 131
|
|
||||||
case 1: 129
|
|
||||||
case 2: 130
|
|
||||||
129: Label
|
|
||||||
132: 6(float) Load 73(x)
|
|
||||||
133: 6(float) Load 73(x)
|
|
||||||
134: 6(float) FMul 132 133
|
|
||||||
135: 6(float) Load 73(x)
|
|
||||||
136: 6(float) FMul 134 135
|
136: 6(float) FMul 134 135
|
||||||
137: 6(float) Load 71(f)
|
137: 6(float) Load 75(x)
|
||||||
138: 6(float) FAdd 137 136
|
138: 6(float) FMul 136 137
|
||||||
Store 71(f) 138
|
139: 6(float) Load 73(f)
|
||||||
Branch 131
|
140: 6(float) FAdd 139 138
|
||||||
130: Label
|
Store 73(f) 140
|
||||||
140: 6(float) Load 73(x)
|
Branch 133
|
||||||
141: 6(float) Load 73(x)
|
132: Label
|
||||||
142: 6(float) FMul 140 141
|
142: 6(float) Load 75(x)
|
||||||
143: 6(float) Load 71(f)
|
143: 6(float) Load 75(x)
|
||||||
144: 6(float) FAdd 143 142
|
144: 6(float) FMul 142 143
|
||||||
Store 71(f) 144
|
145: 6(float) Load 73(f)
|
||||||
Branch 131
|
146: 6(float) FAdd 145 144
|
||||||
131: Label
|
Store 73(f) 146
|
||||||
Branch 121
|
Branch 133
|
||||||
121: Label
|
133: Label
|
||||||
Store 153(i) 154
|
Branch 123
|
||||||
Branch 155
|
123: Label
|
||||||
155: Label
|
Store 155(i) 156
|
||||||
159: 9(int) Load 153(i)
|
Branch 157
|
||||||
162: 161(bool) SLessThan 159 160
|
|
||||||
LoopMerge 157 158 None
|
|
||||||
BranchConditional 162 156 157
|
|
||||||
156: Label
|
|
||||||
163: 9(int) Load 60(c)
|
|
||||||
SelectionMerge 167 None
|
|
||||||
Switch 163 166
|
|
||||||
case 1: 164
|
|
||||||
case 2: 165
|
|
||||||
166: Label
|
|
||||||
198: 6(float) Load 73(x)
|
|
||||||
199: 6(float) ExtInst 1(GLSL.std.450) 15(Tan) 198
|
|
||||||
200: 6(float) Load 71(f)
|
|
||||||
201: 6(float) FAdd 200 199
|
|
||||||
Store 71(f) 201
|
|
||||||
Branch 167
|
|
||||||
164: Label
|
|
||||||
168: 6(float) Load 73(x)
|
|
||||||
169: 6(float) ExtInst 1(GLSL.std.450) 13(Sin) 168
|
|
||||||
170: 6(float) Load 71(f)
|
|
||||||
171: 6(float) FAdd 170 169
|
|
||||||
Store 71(f) 171
|
|
||||||
Store 172(j) 173
|
|
||||||
Branch 174
|
|
||||||
174: Label
|
|
||||||
178: 9(int) Load 172(j)
|
|
||||||
180: 161(bool) SLessThan 178 179
|
|
||||||
LoopMerge 176 177 None
|
|
||||||
BranchConditional 180 175 176
|
|
||||||
175: Label
|
|
||||||
181: 6(float) Load 71(f)
|
|
||||||
182: 6(float) FAdd 181 47
|
|
||||||
Store 71(f) 182
|
|
||||||
183: 6(float) Load 71(f)
|
|
||||||
185: 161(bool) FOrdLessThan 183 184
|
|
||||||
SelectionMerge 187 None
|
|
||||||
BranchConditional 185 186 187
|
|
||||||
186: Label
|
|
||||||
Branch 176
|
|
||||||
187: Label
|
|
||||||
Branch 177
|
|
||||||
177: Label
|
|
||||||
189: 9(int) Load 172(j)
|
|
||||||
190: 9(int) IAdd 189 63
|
|
||||||
Store 172(j) 190
|
|
||||||
Branch 174
|
|
||||||
176: Label
|
|
||||||
Branch 167
|
|
||||||
165: Label
|
|
||||||
192: 6(float) Load 73(x)
|
|
||||||
193: 6(float) ExtInst 1(GLSL.std.450) 14(Cos) 192
|
|
||||||
194: 6(float) Load 71(f)
|
|
||||||
195: 6(float) FAdd 194 193
|
|
||||||
Store 71(f) 195
|
|
||||||
Branch 167
|
|
||||||
167: Label
|
|
||||||
203: 6(float) Load 71(f)
|
|
||||||
205: 161(bool) FOrdLessThan 203 204
|
|
||||||
SelectionMerge 207 None
|
|
||||||
BranchConditional 205 206 207
|
|
||||||
206: Label
|
|
||||||
Branch 157
|
|
||||||
207: Label
|
|
||||||
Branch 158
|
|
||||||
158: Label
|
|
||||||
209: 9(int) Load 153(i)
|
|
||||||
210: 9(int) IAdd 209 63
|
|
||||||
Store 153(i) 210
|
|
||||||
Branch 155
|
|
||||||
157: Label
|
157: Label
|
||||||
211: 9(int) Load 60(c)
|
161: 9(int) Load 155(i)
|
||||||
SelectionMerge 214 None
|
164: 163(bool) SLessThan 161 162
|
||||||
Switch 211 214
|
LoopMerge 159 160 None
|
||||||
case 1: 212
|
BranchConditional 164 158 159
|
||||||
case 2: 213
|
158: Label
|
||||||
212: Label
|
165: 9(int) Load 62(c)
|
||||||
215: 6(float) Load 73(x)
|
SelectionMerge 169 None
|
||||||
216: 6(float) ExtInst 1(GLSL.std.450) 13(Sin) 215
|
Switch 165 168
|
||||||
217: 6(float) Load 71(f)
|
case 1: 166
|
||||||
218: 6(float) FAdd 217 216
|
case 2: 167
|
||||||
Store 71(f) 218
|
168: Label
|
||||||
Branch 214
|
200: 6(float) Load 75(x)
|
||||||
213: Label
|
201: 6(float) ExtInst 1(GLSL.std.450) 15(Tan) 200
|
||||||
Branch 214
|
202: 6(float) Load 73(f)
|
||||||
214: Label
|
203: 6(float) FAdd 202 201
|
||||||
224: 6(float) Load 71(f)
|
Store 73(f) 203
|
||||||
225: 9(int) Load 58(local)
|
Branch 169
|
||||||
226: 6(float) ConvertSToF 225
|
166: Label
|
||||||
227: 6(float) FAdd 224 226
|
170: 6(float) Load 75(x)
|
||||||
Store 223(color) 227
|
171: 6(float) ExtInst 1(GLSL.std.450) 13(Sin) 170
|
||||||
231: 7(fvec4) Load 229(v)
|
172: 6(float) Load 73(f)
|
||||||
Store 230(param) 231
|
173: 6(float) FAdd 172 171
|
||||||
233: 7(fvec4) Load 229(v)
|
Store 73(f) 173
|
||||||
|
Store 174(j) 175
|
||||||
|
Branch 176
|
||||||
|
176: Label
|
||||||
|
180: 9(int) Load 174(j)
|
||||||
|
182: 163(bool) SLessThan 180 181
|
||||||
|
LoopMerge 178 179 None
|
||||||
|
BranchConditional 182 177 178
|
||||||
|
177: Label
|
||||||
|
183: 6(float) Load 73(f)
|
||||||
|
184: 6(float) FAdd 183 48
|
||||||
|
Store 73(f) 184
|
||||||
|
185: 6(float) Load 73(f)
|
||||||
|
187: 163(bool) FOrdLessThan 185 186
|
||||||
|
SelectionMerge 189 None
|
||||||
|
BranchConditional 187 188 189
|
||||||
|
188: Label
|
||||||
|
Branch 178
|
||||||
|
189: Label
|
||||||
|
Branch 179
|
||||||
|
179: Label
|
||||||
|
191: 9(int) Load 174(j)
|
||||||
|
192: 9(int) IAdd 191 65
|
||||||
|
Store 174(j) 192
|
||||||
|
Branch 176
|
||||||
|
178: Label
|
||||||
|
Branch 169
|
||||||
|
167: Label
|
||||||
|
194: 6(float) Load 75(x)
|
||||||
|
195: 6(float) ExtInst 1(GLSL.std.450) 14(Cos) 194
|
||||||
|
196: 6(float) Load 73(f)
|
||||||
|
197: 6(float) FAdd 196 195
|
||||||
|
Store 73(f) 197
|
||||||
|
Branch 169
|
||||||
|
169: Label
|
||||||
|
205: 6(float) Load 73(f)
|
||||||
|
207: 163(bool) FOrdLessThan 205 206
|
||||||
|
SelectionMerge 209 None
|
||||||
|
BranchConditional 207 208 209
|
||||||
|
208: Label
|
||||||
|
Branch 159
|
||||||
|
209: Label
|
||||||
|
Branch 160
|
||||||
|
160: Label
|
||||||
|
211: 9(int) Load 155(i)
|
||||||
|
212: 9(int) IAdd 211 65
|
||||||
|
Store 155(i) 212
|
||||||
|
Branch 157
|
||||||
|
159: Label
|
||||||
|
213: 9(int) Load 62(c)
|
||||||
|
SelectionMerge 216 None
|
||||||
|
Switch 213 216
|
||||||
|
case 1: 214
|
||||||
|
case 2: 215
|
||||||
|
214: Label
|
||||||
|
217: 6(float) Load 75(x)
|
||||||
|
218: 6(float) ExtInst 1(GLSL.std.450) 13(Sin) 217
|
||||||
|
219: 6(float) Load 73(f)
|
||||||
|
220: 6(float) FAdd 219 218
|
||||||
|
Store 73(f) 220
|
||||||
|
Branch 216
|
||||||
|
215: Label
|
||||||
|
Branch 216
|
||||||
|
216: Label
|
||||||
|
226: 6(float) Load 73(f)
|
||||||
|
227: 9(int) Load 60(local)
|
||||||
|
228: 6(float) ConvertSToF 227
|
||||||
|
229: 6(float) FAdd 226 228
|
||||||
|
Store 225(color) 229
|
||||||
|
233: 7(fvec4) Load 231(v)
|
||||||
Store 232(param) 233
|
Store 232(param) 233
|
||||||
235: 9(int) Load 60(c)
|
235: 7(fvec4) Load 231(v)
|
||||||
Store 234(param) 235
|
Store 234(param) 235
|
||||||
236: 7(fvec4) FunctionCall 15(foo1(vf4;vf4;i1;) 230(param) 232(param) 234(param)
|
237: 9(int) Load 62(c)
|
||||||
239: 6(float) CompositeExtract 236 1
|
Store 236(param) 237
|
||||||
240: 6(float) Load 223(color)
|
238: 7(fvec4) FunctionCall 15(foo1(vf4;vf4;i1;) 232(param) 234(param) 236(param)
|
||||||
241: 6(float) FAdd 240 239
|
241: 6(float) CompositeExtract 238 1
|
||||||
Store 223(color) 241
|
242: 6(float) Load 225(color)
|
||||||
243: 7(fvec4) Load 229(v)
|
243: 6(float) FAdd 242 241
|
||||||
Store 242(param) 243
|
Store 225(color) 243
|
||||||
245: 7(fvec4) Load 229(v)
|
245: 7(fvec4) Load 231(v)
|
||||||
Store 244(param) 245
|
Store 244(param) 245
|
||||||
247: 9(int) Load 60(c)
|
247: 7(fvec4) Load 231(v)
|
||||||
Store 246(param) 247
|
Store 246(param) 247
|
||||||
248: 7(fvec4) FunctionCall 20(foo2(vf4;vf4;i1;) 242(param) 244(param) 246(param)
|
249: 9(int) Load 62(c)
|
||||||
250: 6(float) CompositeExtract 248 2
|
Store 248(param) 249
|
||||||
251: 6(float) Load 223(color)
|
250: 7(fvec4) FunctionCall 20(foo2(vf4;vf4;i1;) 244(param) 246(param) 248(param)
|
||||||
252: 6(float) FAdd 251 250
|
252: 6(float) CompositeExtract 250 2
|
||||||
Store 223(color) 252
|
253: 6(float) Load 225(color)
|
||||||
253: 9(int) Load 60(c)
|
254: 6(float) FAdd 253 252
|
||||||
SelectionMerge 256 None
|
Store 225(color) 254
|
||||||
Switch 253 255
|
255: 9(int) Load 62(c)
|
||||||
case 0: 254
|
SelectionMerge 258 None
|
||||||
255: Label
|
Switch 255 257
|
||||||
Branch 256
|
case 0: 256
|
||||||
254: Label
|
257: Label
|
||||||
Branch 256
|
Branch 258
|
||||||
256: Label
|
256: Label
|
||||||
260: 9(int) Load 60(c)
|
Branch 258
|
||||||
SelectionMerge 262 None
|
258: Label
|
||||||
Switch 260 261
|
262: 9(int) Load 62(c)
|
||||||
261: Label
|
SelectionMerge 264 None
|
||||||
Branch 262
|
Switch 262 263
|
||||||
262: Label
|
263: Label
|
||||||
|
Branch 264
|
||||||
|
264: Label
|
||||||
Return
|
Return
|
||||||
FunctionEnd
|
FunctionEnd
|
||||||
15(foo1(vf4;vf4;i1;): 7(fvec4) Function None 11
|
15(foo1(vf4;vf4;i1;): 7(fvec4) Function None 11
|
||||||
@@ -379,26 +379,26 @@ Linked fragment stage:
|
|||||||
18(v2): 8(ptr) FunctionParameter
|
18(v2): 8(ptr) FunctionParameter
|
||||||
19(i1): 10(ptr) FunctionParameter
|
19(i1): 10(ptr) FunctionParameter
|
||||||
21: Label
|
21: Label
|
||||||
39: 9(int) Load 19(i1)
|
40: 9(int) Load 19(i1)
|
||||||
SelectionMerge 44 None
|
SelectionMerge 45 None
|
||||||
Switch 39 44
|
Switch 40 45
|
||||||
case 0: 40
|
case 0: 41
|
||||||
case 2: 41
|
case 2: 42
|
||||||
case 1: 42
|
case 1: 43
|
||||||
case 3: 43
|
case 3: 44
|
||||||
40: Label
|
|
||||||
45: 7(fvec4) Load 17(v1)
|
|
||||||
ReturnValue 45
|
|
||||||
41: Label
|
41: Label
|
||||||
ReturnValue 48
|
46: 7(fvec4) Load 17(v1)
|
||||||
|
ReturnValue 46
|
||||||
42: Label
|
42: Label
|
||||||
50: 7(fvec4) Load 18(v2)
|
ReturnValue 49
|
||||||
ReturnValue 50
|
|
||||||
43: Label
|
43: Label
|
||||||
52: 7(fvec4) Load 17(v1)
|
51: 7(fvec4) Load 18(v2)
|
||||||
53: 7(fvec4) Load 18(v2)
|
ReturnValue 51
|
||||||
54: 7(fvec4) FMul 52 53
|
44: Label
|
||||||
ReturnValue 54
|
53: 7(fvec4) Load 17(v1)
|
||||||
44: Label
|
54: 7(fvec4) Load 18(v2)
|
||||||
|
55: 7(fvec4) FMul 53 54
|
||||||
|
ReturnValue 55
|
||||||
|
45: Label
|
||||||
ReturnValue 37
|
ReturnValue 37
|
||||||
FunctionEnd
|
FunctionEnd
|
||||||
|
|||||||
Reference in New Issue
Block a user