Merge pull request #1603 from KhronosGroup/uint-array-length
SPV: Generate OpArrayLength with no signedness.
This commit is contained in:
commit
f9edfdab0e
@ -1825,6 +1825,12 @@ bool TGlslangToSpvTraverser::visitUnary(glslang::TVisit /* visit */, glslang::TI
|
|||||||
unsigned int member = node->getOperand()->getAsBinaryNode()->getRight()->getAsConstantUnion()->getConstArray()[0].getUConst();
|
unsigned int member = node->getOperand()->getAsBinaryNode()->getRight()->getAsConstantUnion()->getConstArray()[0].getUConst();
|
||||||
spv::Id length = builder.createArrayLength(builder.accessChainGetLValue(), member);
|
spv::Id length = builder.createArrayLength(builder.accessChainGetLValue(), member);
|
||||||
|
|
||||||
|
// GLSL semantics say the result of .length() is an int, while SPIR-V says
|
||||||
|
// signedness must be 0. So, convert from SPIR-V unsigned back to GLSL's
|
||||||
|
// AST expectation of a signed result.
|
||||||
|
if (glslangIntermediate->getSource() == glslang::EShSourceGlsl)
|
||||||
|
length = builder.createUnaryOp(spv::OpBitcast, builder.makeIntType(32), length);
|
||||||
|
|
||||||
builder.clearAccessChain();
|
builder.clearAccessChain();
|
||||||
builder.setAccessChainRValue(length);
|
builder.setAccessChainRValue(length);
|
||||||
|
|
||||||
|
2
SPIRV/SpvBuilder.cpp
Normal file → Executable file
2
SPIRV/SpvBuilder.cpp
Normal file → Executable file
@ -1293,7 +1293,7 @@ Id Builder::createAccessChain(StorageClass storageClass, Id base, const std::vec
|
|||||||
|
|
||||||
Id Builder::createArrayLength(Id base, unsigned int member)
|
Id Builder::createArrayLength(Id base, unsigned int member)
|
||||||
{
|
{
|
||||||
spv::Id intType = makeIntType(32);
|
spv::Id intType = makeUintType(32);
|
||||||
Instruction* length = new Instruction(getUniqueId(), intType, OpArrayLength);
|
Instruction* length = new Instruction(getUniqueId(), intType, OpArrayLength);
|
||||||
length->addIdOperand(base);
|
length->addIdOperand(base);
|
||||||
length->addImmediateOperand(member);
|
length->addImmediateOperand(member);
|
||||||
|
@ -323,10 +323,6 @@ gl_FragCoord origin is upper left
|
|||||||
0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float)
|
0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float)
|
||||||
0:? 'pos' (layout( location=0) flat in uint)
|
0:? 'pos' (layout( location=0) flat in uint)
|
||||||
|
|
||||||
error: SPIRV-Tools Validation Errors
|
|
||||||
error: OpStore Pointer <id> '14[size]'s type does not match Object <id> '20's type.
|
|
||||||
OpStore %size %20
|
|
||||||
|
|
||||||
// Module Version 10000
|
// Module Version 10000
|
||||||
// Generated by (magic number): 80007
|
// Generated by (magic number): 80007
|
||||||
// Id's are bound by 114
|
// Id's are bound by 114
|
||||||
@ -370,13 +366,13 @@ error: OpStore Pointer <id> '14[size]'s type does not match Object <id> '20's ty
|
|||||||
16(sbuf): TypeStruct 15
|
16(sbuf): TypeStruct 15
|
||||||
17: TypePointer Uniform 16(sbuf)
|
17: TypePointer Uniform 16(sbuf)
|
||||||
18(sbuf): 17(ptr) Variable Uniform
|
18(sbuf): 17(ptr) Variable Uniform
|
||||||
19: TypeInt 32 1
|
20: TypeInt 32 1
|
||||||
21: 19(int) Constant 0
|
21: 20(int) Constant 0
|
||||||
23: 19(int) Constant 2
|
23: 20(int) Constant 2
|
||||||
25: TypePointer Uniform 6(int)
|
25: TypePointer Uniform 6(int)
|
||||||
29: TypePointer Function 19(int)
|
29: TypePointer Function 20(int)
|
||||||
32: 6(int) Constant 4
|
32: 6(int) Constant 4
|
||||||
39: 19(int) Constant 1
|
39: 20(int) Constant 1
|
||||||
43: TypeVector 6(int) 2
|
43: TypeVector 6(int) 2
|
||||||
45: TypeVector 8(float) 2
|
45: TypeVector 8(float) 2
|
||||||
47: 8(float) Constant 0
|
47: 8(float) Constant 0
|
||||||
@ -384,7 +380,7 @@ error: OpStore Pointer <id> '14[size]'s type does not match Object <id> '20's ty
|
|||||||
69: TypeVector 6(int) 3
|
69: TypeVector 6(int) 3
|
||||||
71: TypeVector 8(float) 3
|
71: TypeVector 8(float) 3
|
||||||
80: 6(int) Constant 12
|
80: 6(int) Constant 12
|
||||||
95: 19(int) Constant 3
|
95: 20(int) Constant 3
|
||||||
99: TypeVector 6(int) 4
|
99: TypeVector 6(int) 4
|
||||||
106: TypePointer Input 6(int)
|
106: TypePointer Input 6(int)
|
||||||
107(pos): 106(ptr) Variable Input
|
107(pos): 106(ptr) Variable Input
|
||||||
@ -409,22 +405,22 @@ error: OpStore Pointer <id> '14[size]'s type does not match Object <id> '20's ty
|
|||||||
30(byteAddrTemp): 29(ptr) Variable Function
|
30(byteAddrTemp): 29(ptr) Variable Function
|
||||||
53(byteAddrTemp): 29(ptr) Variable Function
|
53(byteAddrTemp): 29(ptr) Variable Function
|
||||||
78(byteAddrTemp): 29(ptr) Variable Function
|
78(byteAddrTemp): 29(ptr) Variable Function
|
||||||
20: 19(int) ArrayLength 18(sbuf) 0
|
19: 6(int) ArrayLength 18(sbuf) 0
|
||||||
Store 14(size) 20
|
Store 14(size) 19
|
||||||
22: 6(int) Load 11(pos)
|
22: 6(int) Load 11(pos)
|
||||||
24: 19(int) ShiftRightLogical 22 23
|
24: 20(int) ShiftRightLogical 22 23
|
||||||
26: 25(ptr) AccessChain 18(sbuf) 21 24
|
26: 25(ptr) AccessChain 18(sbuf) 21 24
|
||||||
27: 6(int) Load 26
|
27: 6(int) Load 26
|
||||||
28: 8(float) ConvertUToF 27
|
28: 8(float) ConvertUToF 27
|
||||||
31: 6(int) Load 11(pos)
|
31: 6(int) Load 11(pos)
|
||||||
33: 6(int) IAdd 31 32
|
33: 6(int) IAdd 31 32
|
||||||
34: 19(int) ShiftRightLogical 33 23
|
34: 20(int) ShiftRightLogical 33 23
|
||||||
Store 30(byteAddrTemp) 34
|
Store 30(byteAddrTemp) 34
|
||||||
35: 19(int) Load 30(byteAddrTemp)
|
35: 20(int) Load 30(byteAddrTemp)
|
||||||
36: 25(ptr) AccessChain 18(sbuf) 21 35
|
36: 25(ptr) AccessChain 18(sbuf) 21 35
|
||||||
37: 6(int) Load 36
|
37: 6(int) Load 36
|
||||||
38: 19(int) Load 30(byteAddrTemp)
|
38: 20(int) Load 30(byteAddrTemp)
|
||||||
40: 19(int) IAdd 38 39
|
40: 20(int) IAdd 38 39
|
||||||
41: 25(ptr) AccessChain 18(sbuf) 21 40
|
41: 25(ptr) AccessChain 18(sbuf) 21 40
|
||||||
42: 6(int) Load 41
|
42: 6(int) Load 41
|
||||||
44: 43(ivec2) CompositeConstruct 37 42
|
44: 43(ivec2) CompositeConstruct 37 42
|
||||||
@ -436,17 +432,17 @@ error: OpStore Pointer <id> '14[size]'s type does not match Object <id> '20's ty
|
|||||||
52: 9(fvec4) FAdd 51 50
|
52: 9(fvec4) FAdd 51 50
|
||||||
54: 6(int) Load 11(pos)
|
54: 6(int) Load 11(pos)
|
||||||
56: 6(int) IAdd 54 55
|
56: 6(int) IAdd 54 55
|
||||||
57: 19(int) ShiftRightLogical 56 23
|
57: 20(int) ShiftRightLogical 56 23
|
||||||
Store 53(byteAddrTemp) 57
|
Store 53(byteAddrTemp) 57
|
||||||
58: 19(int) Load 53(byteAddrTemp)
|
58: 20(int) Load 53(byteAddrTemp)
|
||||||
59: 25(ptr) AccessChain 18(sbuf) 21 58
|
59: 25(ptr) AccessChain 18(sbuf) 21 58
|
||||||
60: 6(int) Load 59
|
60: 6(int) Load 59
|
||||||
61: 19(int) Load 53(byteAddrTemp)
|
61: 20(int) Load 53(byteAddrTemp)
|
||||||
62: 19(int) IAdd 61 39
|
62: 20(int) IAdd 61 39
|
||||||
63: 25(ptr) AccessChain 18(sbuf) 21 62
|
63: 25(ptr) AccessChain 18(sbuf) 21 62
|
||||||
64: 6(int) Load 63
|
64: 6(int) Load 63
|
||||||
65: 19(int) Load 53(byteAddrTemp)
|
65: 20(int) Load 53(byteAddrTemp)
|
||||||
66: 19(int) IAdd 65 23
|
66: 20(int) IAdd 65 23
|
||||||
67: 25(ptr) AccessChain 18(sbuf) 21 66
|
67: 25(ptr) AccessChain 18(sbuf) 21 66
|
||||||
68: 6(int) Load 67
|
68: 6(int) Load 67
|
||||||
70: 69(ivec3) CompositeConstruct 60 64 68
|
70: 69(ivec3) CompositeConstruct 60 64 68
|
||||||
@ -458,21 +454,21 @@ error: OpStore Pointer <id> '14[size]'s type does not match Object <id> '20's ty
|
|||||||
77: 9(fvec4) FAdd 52 76
|
77: 9(fvec4) FAdd 52 76
|
||||||
79: 6(int) Load 11(pos)
|
79: 6(int) Load 11(pos)
|
||||||
81: 6(int) IAdd 79 80
|
81: 6(int) IAdd 79 80
|
||||||
82: 19(int) ShiftRightLogical 81 23
|
82: 20(int) ShiftRightLogical 81 23
|
||||||
Store 78(byteAddrTemp) 82
|
Store 78(byteAddrTemp) 82
|
||||||
83: 19(int) Load 78(byteAddrTemp)
|
83: 20(int) Load 78(byteAddrTemp)
|
||||||
84: 25(ptr) AccessChain 18(sbuf) 21 83
|
84: 25(ptr) AccessChain 18(sbuf) 21 83
|
||||||
85: 6(int) Load 84
|
85: 6(int) Load 84
|
||||||
86: 19(int) Load 78(byteAddrTemp)
|
86: 20(int) Load 78(byteAddrTemp)
|
||||||
87: 19(int) IAdd 86 39
|
87: 20(int) IAdd 86 39
|
||||||
88: 25(ptr) AccessChain 18(sbuf) 21 87
|
88: 25(ptr) AccessChain 18(sbuf) 21 87
|
||||||
89: 6(int) Load 88
|
89: 6(int) Load 88
|
||||||
90: 19(int) Load 78(byteAddrTemp)
|
90: 20(int) Load 78(byteAddrTemp)
|
||||||
91: 19(int) IAdd 90 23
|
91: 20(int) IAdd 90 23
|
||||||
92: 25(ptr) AccessChain 18(sbuf) 21 91
|
92: 25(ptr) AccessChain 18(sbuf) 21 91
|
||||||
93: 6(int) Load 92
|
93: 6(int) Load 92
|
||||||
94: 19(int) Load 78(byteAddrTemp)
|
94: 20(int) Load 78(byteAddrTemp)
|
||||||
96: 19(int) IAdd 94 95
|
96: 20(int) IAdd 94 95
|
||||||
97: 25(ptr) AccessChain 18(sbuf) 21 96
|
97: 25(ptr) AccessChain 18(sbuf) 21 96
|
||||||
98: 6(int) Load 97
|
98: 6(int) Load 97
|
||||||
100: 99(ivec4) CompositeConstruct 85 89 93 98
|
100: 99(ivec4) CompositeConstruct 85 89 93 98
|
||||||
|
@ -175,10 +175,6 @@ gl_FragCoord origin is upper left
|
|||||||
0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float)
|
0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float)
|
||||||
0:? 'pos' (layout( location=0) flat in uint)
|
0:? 'pos' (layout( location=0) flat in uint)
|
||||||
|
|
||||||
error: SPIRV-Tools Validation Errors
|
|
||||||
error: OpStore Pointer <id> '26[size]'s type does not match Object <id> '33's type.
|
|
||||||
OpStore %size %33
|
|
||||||
|
|
||||||
// Module Version 10000
|
// Module Version 10000
|
||||||
// Generated by (magic number): 80007
|
// Generated by (magic number): 80007
|
||||||
// Id's are bound by 78
|
// Id's are bound by 78
|
||||||
@ -276,7 +272,7 @@ error: OpStore Pointer <id> '26[size]'s type does not match Object <id> '33's ty
|
|||||||
22: 6(int) IAdd 20 21
|
22: 6(int) IAdd 20 21
|
||||||
25: 24(ptr) AccessChain 17(sbuf2) 19 22
|
25: 24(ptr) AccessChain 17(sbuf2) 19 22
|
||||||
Store 25 23
|
Store 25 23
|
||||||
33: 18(int) ArrayLength 32(sbuf) 0
|
33: 6(int) ArrayLength 32(sbuf) 0
|
||||||
Store 26(size) 33
|
Store 26(size) 33
|
||||||
Store 34(stride) 35
|
Store 34(stride) 35
|
||||||
36: 6(int) Load 11(pos)
|
36: 6(int) Load 11(pos)
|
||||||
|
@ -187,10 +187,6 @@ gl_FragCoord origin is upper left
|
|||||||
0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float)
|
0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float)
|
||||||
0:? 'pos' (layout( location=0) flat in uint)
|
0:? 'pos' (layout( location=0) flat in uint)
|
||||||
|
|
||||||
error: SPIRV-Tools Validation Errors
|
|
||||||
error: OpStore Pointer <id> '43[size]'s type does not match Object <id> '44's type.
|
|
||||||
OpStore %size %44
|
|
||||||
|
|
||||||
// Module Version 10000
|
// Module Version 10000
|
||||||
// Generated by (magic number): 80007
|
// Generated by (magic number): 80007
|
||||||
// Id's are bound by 96
|
// Id's are bound by 96
|
||||||
@ -312,7 +308,7 @@ error: OpStore Pointer <id> '43[size]'s type does not match Object <id> '44's ty
|
|||||||
41: 15(bool) INotEqual 39 35
|
41: 15(bool) INotEqual 39 35
|
||||||
42: 37(ptr) AccessChain 18(mydata) 40
|
42: 37(ptr) AccessChain 18(mydata) 40
|
||||||
Store 42 41
|
Store 42 41
|
||||||
44: 24(int) ArrayLength 23(sbuf) 0
|
44: 6(int) ArrayLength 23(sbuf) 0
|
||||||
Store 43(size) 44
|
Store 43(size) 44
|
||||||
Store 45(stride) 46
|
Store 45(stride) 46
|
||||||
47: 6(int) Load 11(pos)
|
47: 6(int) Load 11(pos)
|
||||||
|
@ -175,10 +175,6 @@ gl_FragCoord origin is upper left
|
|||||||
0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float)
|
0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float)
|
||||||
0:? 'pos' (layout( location=0) flat in uint)
|
0:? 'pos' (layout( location=0) flat in uint)
|
||||||
|
|
||||||
error: SPIRV-Tools Validation Errors
|
|
||||||
error: OpStore Pointer <id> '26[size]'s type does not match Object <id> '33's type.
|
|
||||||
OpStore %size %33
|
|
||||||
|
|
||||||
// Module Version 10000
|
// Module Version 10000
|
||||||
// Generated by (magic number): 80007
|
// Generated by (magic number): 80007
|
||||||
// Id's are bound by 78
|
// Id's are bound by 78
|
||||||
@ -274,7 +270,7 @@ error: OpStore Pointer <id> '26[size]'s type does not match Object <id> '33's ty
|
|||||||
22: 6(int) IAdd 20 21
|
22: 6(int) IAdd 20 21
|
||||||
25: 24(ptr) AccessChain 17(sbuf2) 19 22
|
25: 24(ptr) AccessChain 17(sbuf2) 19 22
|
||||||
Store 25 23
|
Store 25 23
|
||||||
33: 18(int) ArrayLength 32(sbuf) 0
|
33: 6(int) ArrayLength 32(sbuf) 0
|
||||||
Store 26(size) 33
|
Store 26(size) 33
|
||||||
Store 34(stride) 35
|
Store 34(stride) 35
|
||||||
36: 6(int) Load 11(pos)
|
36: 6(int) Load 11(pos)
|
||||||
|
@ -1003,10 +1003,6 @@ gl_FragCoord origin is upper left
|
|||||||
0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float)
|
0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float)
|
||||||
0:? 'pos' (layout( location=0) flat in uint)
|
0:? 'pos' (layout( location=0) flat in uint)
|
||||||
|
|
||||||
error: SPIRV-Tools Validation Errors
|
|
||||||
error: OpStore Pointer <id> '14[size]'s type does not match Object <id> '20's type.
|
|
||||||
OpStore %size %20
|
|
||||||
|
|
||||||
// Module Version 10000
|
// Module Version 10000
|
||||||
// Generated by (magic number): 80007
|
// Generated by (magic number): 80007
|
||||||
// Id's are bound by 239
|
// Id's are bound by 239
|
||||||
@ -1053,18 +1049,18 @@ error: OpStore Pointer <id> '14[size]'s type does not match Object <id> '20's ty
|
|||||||
16(sbuf): TypeStruct 15
|
16(sbuf): TypeStruct 15
|
||||||
17: TypePointer Uniform 16(sbuf)
|
17: TypePointer Uniform 16(sbuf)
|
||||||
18(sbuf): 17(ptr) Variable Uniform
|
18(sbuf): 17(ptr) Variable Uniform
|
||||||
19: TypeInt 32 1
|
20: TypeInt 32 1
|
||||||
21: TypePointer Function 19(int)
|
21: TypePointer Function 20(int)
|
||||||
24: 19(int) Constant 2
|
24: 20(int) Constant 2
|
||||||
26: 19(int) Constant 0
|
26: 20(int) Constant 0
|
||||||
30: TypePointer Uniform 6(int)
|
30: TypePointer Uniform 6(int)
|
||||||
45: 19(int) Constant 1
|
45: 20(int) Constant 1
|
||||||
49: TypeVector 6(int) 2
|
49: TypeVector 6(int) 2
|
||||||
51: 6(int) Constant 0
|
51: 6(int) Constant 0
|
||||||
66: 6(int) Constant 1
|
66: 6(int) Constant 1
|
||||||
87: TypeVector 6(int) 3
|
87: TypeVector 6(int) 3
|
||||||
125: 6(int) Constant 2
|
125: 6(int) Constant 2
|
||||||
147: 19(int) Constant 3
|
147: 20(int) Constant 3
|
||||||
151: TypeVector 6(int) 4
|
151: TypeVector 6(int) 4
|
||||||
219: 6(int) Constant 3
|
219: 6(int) Constant 3
|
||||||
231: TypePointer Input 6(int)
|
231: TypePointer Input 6(int)
|
||||||
@ -1094,46 +1090,46 @@ error: OpStore Pointer <id> '14[size]'s type does not match Object <id> '20's ty
|
|||||||
73(byteAddrTemp): 21(ptr) Variable Function
|
73(byteAddrTemp): 21(ptr) Variable Function
|
||||||
128(byteAddrTemp): 21(ptr) Variable Function
|
128(byteAddrTemp): 21(ptr) Variable Function
|
||||||
132(byteAddrTemp): 21(ptr) Variable Function
|
132(byteAddrTemp): 21(ptr) Variable Function
|
||||||
20: 19(int) ArrayLength 18(sbuf) 0
|
19: 6(int) ArrayLength 18(sbuf) 0
|
||||||
Store 14(size) 20
|
Store 14(size) 19
|
||||||
23: 6(int) Load 11(pos)
|
23: 6(int) Load 11(pos)
|
||||||
25: 19(int) ShiftRightLogical 23 24
|
25: 20(int) ShiftRightLogical 23 24
|
||||||
Store 22(byteAddrTemp) 25
|
Store 22(byteAddrTemp) 25
|
||||||
27: 19(int) Load 22(byteAddrTemp)
|
27: 20(int) Load 22(byteAddrTemp)
|
||||||
28: 6(int) Load 11(pos)
|
28: 6(int) Load 11(pos)
|
||||||
29: 19(int) ShiftRightLogical 28 24
|
29: 20(int) ShiftRightLogical 28 24
|
||||||
31: 30(ptr) AccessChain 18(sbuf) 26 29
|
31: 30(ptr) AccessChain 18(sbuf) 26 29
|
||||||
32: 6(int) Load 31
|
32: 6(int) Load 31
|
||||||
33: 30(ptr) AccessChain 18(sbuf) 26 27
|
33: 30(ptr) AccessChain 18(sbuf) 26 27
|
||||||
Store 33 32
|
Store 33 32
|
||||||
35: 6(int) Load 11(pos)
|
35: 6(int) Load 11(pos)
|
||||||
36: 19(int) ShiftRightLogical 35 24
|
36: 20(int) ShiftRightLogical 35 24
|
||||||
Store 34(byteAddrTemp) 36
|
Store 34(byteAddrTemp) 36
|
||||||
37: 19(int) Load 34(byteAddrTemp)
|
37: 20(int) Load 34(byteAddrTemp)
|
||||||
39: 6(int) Load 11(pos)
|
39: 6(int) Load 11(pos)
|
||||||
40: 19(int) ShiftRightLogical 39 24
|
40: 20(int) ShiftRightLogical 39 24
|
||||||
Store 38(byteAddrTemp) 40
|
Store 38(byteAddrTemp) 40
|
||||||
41: 19(int) Load 38(byteAddrTemp)
|
41: 20(int) Load 38(byteAddrTemp)
|
||||||
42: 30(ptr) AccessChain 18(sbuf) 26 41
|
42: 30(ptr) AccessChain 18(sbuf) 26 41
|
||||||
43: 6(int) Load 42
|
43: 6(int) Load 42
|
||||||
44: 19(int) Load 38(byteAddrTemp)
|
44: 20(int) Load 38(byteAddrTemp)
|
||||||
46: 19(int) IAdd 44 45
|
46: 20(int) IAdd 44 45
|
||||||
47: 30(ptr) AccessChain 18(sbuf) 26 46
|
47: 30(ptr) AccessChain 18(sbuf) 26 46
|
||||||
48: 6(int) Load 47
|
48: 6(int) Load 47
|
||||||
50: 49(ivec2) CompositeConstruct 43 48
|
50: 49(ivec2) CompositeConstruct 43 48
|
||||||
52: 6(int) CompositeExtract 50 0
|
52: 6(int) CompositeExtract 50 0
|
||||||
53: 30(ptr) AccessChain 18(sbuf) 26 37
|
53: 30(ptr) AccessChain 18(sbuf) 26 37
|
||||||
Store 53 52
|
Store 53 52
|
||||||
54: 19(int) Load 34(byteAddrTemp)
|
54: 20(int) Load 34(byteAddrTemp)
|
||||||
55: 19(int) IAdd 54 45
|
55: 20(int) IAdd 54 45
|
||||||
56: 6(int) Load 11(pos)
|
56: 6(int) Load 11(pos)
|
||||||
57: 19(int) ShiftRightLogical 56 24
|
57: 20(int) ShiftRightLogical 56 24
|
||||||
Store 38(byteAddrTemp) 57
|
Store 38(byteAddrTemp) 57
|
||||||
58: 19(int) Load 38(byteAddrTemp)
|
58: 20(int) Load 38(byteAddrTemp)
|
||||||
59: 30(ptr) AccessChain 18(sbuf) 26 58
|
59: 30(ptr) AccessChain 18(sbuf) 26 58
|
||||||
60: 6(int) Load 59
|
60: 6(int) Load 59
|
||||||
61: 19(int) Load 38(byteAddrTemp)
|
61: 20(int) Load 38(byteAddrTemp)
|
||||||
62: 19(int) IAdd 61 45
|
62: 20(int) IAdd 61 45
|
||||||
63: 30(ptr) AccessChain 18(sbuf) 26 62
|
63: 30(ptr) AccessChain 18(sbuf) 26 62
|
||||||
64: 6(int) Load 63
|
64: 6(int) Load 63
|
||||||
65: 49(ivec2) CompositeConstruct 60 64
|
65: 49(ivec2) CompositeConstruct 60 64
|
||||||
@ -1141,61 +1137,61 @@ error: OpStore Pointer <id> '14[size]'s type does not match Object <id> '20's ty
|
|||||||
68: 30(ptr) AccessChain 18(sbuf) 26 55
|
68: 30(ptr) AccessChain 18(sbuf) 26 55
|
||||||
Store 68 67
|
Store 68 67
|
||||||
70: 6(int) Load 11(pos)
|
70: 6(int) Load 11(pos)
|
||||||
71: 19(int) ShiftRightLogical 70 24
|
71: 20(int) ShiftRightLogical 70 24
|
||||||
Store 69(byteAddrTemp) 71
|
Store 69(byteAddrTemp) 71
|
||||||
72: 19(int) Load 69(byteAddrTemp)
|
72: 20(int) Load 69(byteAddrTemp)
|
||||||
74: 6(int) Load 11(pos)
|
74: 6(int) Load 11(pos)
|
||||||
75: 19(int) ShiftRightLogical 74 24
|
75: 20(int) ShiftRightLogical 74 24
|
||||||
Store 73(byteAddrTemp) 75
|
Store 73(byteAddrTemp) 75
|
||||||
76: 19(int) Load 73(byteAddrTemp)
|
76: 20(int) Load 73(byteAddrTemp)
|
||||||
77: 30(ptr) AccessChain 18(sbuf) 26 76
|
77: 30(ptr) AccessChain 18(sbuf) 26 76
|
||||||
78: 6(int) Load 77
|
78: 6(int) Load 77
|
||||||
79: 19(int) Load 73(byteAddrTemp)
|
79: 20(int) Load 73(byteAddrTemp)
|
||||||
80: 19(int) IAdd 79 45
|
80: 20(int) IAdd 79 45
|
||||||
81: 30(ptr) AccessChain 18(sbuf) 26 80
|
81: 30(ptr) AccessChain 18(sbuf) 26 80
|
||||||
82: 6(int) Load 81
|
82: 6(int) Load 81
|
||||||
83: 19(int) Load 73(byteAddrTemp)
|
83: 20(int) Load 73(byteAddrTemp)
|
||||||
84: 19(int) IAdd 83 24
|
84: 20(int) IAdd 83 24
|
||||||
85: 30(ptr) AccessChain 18(sbuf) 26 84
|
85: 30(ptr) AccessChain 18(sbuf) 26 84
|
||||||
86: 6(int) Load 85
|
86: 6(int) Load 85
|
||||||
88: 87(ivec3) CompositeConstruct 78 82 86
|
88: 87(ivec3) CompositeConstruct 78 82 86
|
||||||
89: 6(int) CompositeExtract 88 0
|
89: 6(int) CompositeExtract 88 0
|
||||||
90: 30(ptr) AccessChain 18(sbuf) 26 72
|
90: 30(ptr) AccessChain 18(sbuf) 26 72
|
||||||
Store 90 89
|
Store 90 89
|
||||||
91: 19(int) Load 69(byteAddrTemp)
|
91: 20(int) Load 69(byteAddrTemp)
|
||||||
92: 19(int) IAdd 91 45
|
92: 20(int) IAdd 91 45
|
||||||
93: 6(int) Load 11(pos)
|
93: 6(int) Load 11(pos)
|
||||||
94: 19(int) ShiftRightLogical 93 24
|
94: 20(int) ShiftRightLogical 93 24
|
||||||
Store 73(byteAddrTemp) 94
|
Store 73(byteAddrTemp) 94
|
||||||
95: 19(int) Load 73(byteAddrTemp)
|
95: 20(int) Load 73(byteAddrTemp)
|
||||||
96: 30(ptr) AccessChain 18(sbuf) 26 95
|
96: 30(ptr) AccessChain 18(sbuf) 26 95
|
||||||
97: 6(int) Load 96
|
97: 6(int) Load 96
|
||||||
98: 19(int) Load 73(byteAddrTemp)
|
98: 20(int) Load 73(byteAddrTemp)
|
||||||
99: 19(int) IAdd 98 45
|
99: 20(int) IAdd 98 45
|
||||||
100: 30(ptr) AccessChain 18(sbuf) 26 99
|
100: 30(ptr) AccessChain 18(sbuf) 26 99
|
||||||
101: 6(int) Load 100
|
101: 6(int) Load 100
|
||||||
102: 19(int) Load 73(byteAddrTemp)
|
102: 20(int) Load 73(byteAddrTemp)
|
||||||
103: 19(int) IAdd 102 24
|
103: 20(int) IAdd 102 24
|
||||||
104: 30(ptr) AccessChain 18(sbuf) 26 103
|
104: 30(ptr) AccessChain 18(sbuf) 26 103
|
||||||
105: 6(int) Load 104
|
105: 6(int) Load 104
|
||||||
106: 87(ivec3) CompositeConstruct 97 101 105
|
106: 87(ivec3) CompositeConstruct 97 101 105
|
||||||
107: 6(int) CompositeExtract 106 1
|
107: 6(int) CompositeExtract 106 1
|
||||||
108: 30(ptr) AccessChain 18(sbuf) 26 92
|
108: 30(ptr) AccessChain 18(sbuf) 26 92
|
||||||
Store 108 107
|
Store 108 107
|
||||||
109: 19(int) Load 69(byteAddrTemp)
|
109: 20(int) Load 69(byteAddrTemp)
|
||||||
110: 19(int) IAdd 109 24
|
110: 20(int) IAdd 109 24
|
||||||
111: 6(int) Load 11(pos)
|
111: 6(int) Load 11(pos)
|
||||||
112: 19(int) ShiftRightLogical 111 24
|
112: 20(int) ShiftRightLogical 111 24
|
||||||
Store 73(byteAddrTemp) 112
|
Store 73(byteAddrTemp) 112
|
||||||
113: 19(int) Load 73(byteAddrTemp)
|
113: 20(int) Load 73(byteAddrTemp)
|
||||||
114: 30(ptr) AccessChain 18(sbuf) 26 113
|
114: 30(ptr) AccessChain 18(sbuf) 26 113
|
||||||
115: 6(int) Load 114
|
115: 6(int) Load 114
|
||||||
116: 19(int) Load 73(byteAddrTemp)
|
116: 20(int) Load 73(byteAddrTemp)
|
||||||
117: 19(int) IAdd 116 45
|
117: 20(int) IAdd 116 45
|
||||||
118: 30(ptr) AccessChain 18(sbuf) 26 117
|
118: 30(ptr) AccessChain 18(sbuf) 26 117
|
||||||
119: 6(int) Load 118
|
119: 6(int) Load 118
|
||||||
120: 19(int) Load 73(byteAddrTemp)
|
120: 20(int) Load 73(byteAddrTemp)
|
||||||
121: 19(int) IAdd 120 24
|
121: 20(int) IAdd 120 24
|
||||||
122: 30(ptr) AccessChain 18(sbuf) 26 121
|
122: 30(ptr) AccessChain 18(sbuf) 26 121
|
||||||
123: 6(int) Load 122
|
123: 6(int) Load 122
|
||||||
124: 87(ivec3) CompositeConstruct 115 119 123
|
124: 87(ivec3) CompositeConstruct 115 119 123
|
||||||
@ -1203,97 +1199,97 @@ error: OpStore Pointer <id> '14[size]'s type does not match Object <id> '20's ty
|
|||||||
127: 30(ptr) AccessChain 18(sbuf) 26 110
|
127: 30(ptr) AccessChain 18(sbuf) 26 110
|
||||||
Store 127 126
|
Store 127 126
|
||||||
129: 6(int) Load 11(pos)
|
129: 6(int) Load 11(pos)
|
||||||
130: 19(int) ShiftRightLogical 129 24
|
130: 20(int) ShiftRightLogical 129 24
|
||||||
Store 128(byteAddrTemp) 130
|
Store 128(byteAddrTemp) 130
|
||||||
131: 19(int) Load 128(byteAddrTemp)
|
131: 20(int) Load 128(byteAddrTemp)
|
||||||
133: 6(int) Load 11(pos)
|
133: 6(int) Load 11(pos)
|
||||||
134: 19(int) ShiftRightLogical 133 24
|
134: 20(int) ShiftRightLogical 133 24
|
||||||
Store 132(byteAddrTemp) 134
|
Store 132(byteAddrTemp) 134
|
||||||
135: 19(int) Load 132(byteAddrTemp)
|
135: 20(int) Load 132(byteAddrTemp)
|
||||||
136: 30(ptr) AccessChain 18(sbuf) 26 135
|
136: 30(ptr) AccessChain 18(sbuf) 26 135
|
||||||
137: 6(int) Load 136
|
137: 6(int) Load 136
|
||||||
138: 19(int) Load 132(byteAddrTemp)
|
138: 20(int) Load 132(byteAddrTemp)
|
||||||
139: 19(int) IAdd 138 45
|
139: 20(int) IAdd 138 45
|
||||||
140: 30(ptr) AccessChain 18(sbuf) 26 139
|
140: 30(ptr) AccessChain 18(sbuf) 26 139
|
||||||
141: 6(int) Load 140
|
141: 6(int) Load 140
|
||||||
142: 19(int) Load 132(byteAddrTemp)
|
142: 20(int) Load 132(byteAddrTemp)
|
||||||
143: 19(int) IAdd 142 24
|
143: 20(int) IAdd 142 24
|
||||||
144: 30(ptr) AccessChain 18(sbuf) 26 143
|
144: 30(ptr) AccessChain 18(sbuf) 26 143
|
||||||
145: 6(int) Load 144
|
145: 6(int) Load 144
|
||||||
146: 19(int) Load 132(byteAddrTemp)
|
146: 20(int) Load 132(byteAddrTemp)
|
||||||
148: 19(int) IAdd 146 147
|
148: 20(int) IAdd 146 147
|
||||||
149: 30(ptr) AccessChain 18(sbuf) 26 148
|
149: 30(ptr) AccessChain 18(sbuf) 26 148
|
||||||
150: 6(int) Load 149
|
150: 6(int) Load 149
|
||||||
152: 151(ivec4) CompositeConstruct 137 141 145 150
|
152: 151(ivec4) CompositeConstruct 137 141 145 150
|
||||||
153: 6(int) CompositeExtract 152 0
|
153: 6(int) CompositeExtract 152 0
|
||||||
154: 30(ptr) AccessChain 18(sbuf) 26 131
|
154: 30(ptr) AccessChain 18(sbuf) 26 131
|
||||||
Store 154 153
|
Store 154 153
|
||||||
155: 19(int) Load 128(byteAddrTemp)
|
155: 20(int) Load 128(byteAddrTemp)
|
||||||
156: 19(int) IAdd 155 45
|
156: 20(int) IAdd 155 45
|
||||||
157: 6(int) Load 11(pos)
|
157: 6(int) Load 11(pos)
|
||||||
158: 19(int) ShiftRightLogical 157 24
|
158: 20(int) ShiftRightLogical 157 24
|
||||||
Store 132(byteAddrTemp) 158
|
Store 132(byteAddrTemp) 158
|
||||||
159: 19(int) Load 132(byteAddrTemp)
|
159: 20(int) Load 132(byteAddrTemp)
|
||||||
160: 30(ptr) AccessChain 18(sbuf) 26 159
|
160: 30(ptr) AccessChain 18(sbuf) 26 159
|
||||||
161: 6(int) Load 160
|
161: 6(int) Load 160
|
||||||
162: 19(int) Load 132(byteAddrTemp)
|
162: 20(int) Load 132(byteAddrTemp)
|
||||||
163: 19(int) IAdd 162 45
|
163: 20(int) IAdd 162 45
|
||||||
164: 30(ptr) AccessChain 18(sbuf) 26 163
|
164: 30(ptr) AccessChain 18(sbuf) 26 163
|
||||||
165: 6(int) Load 164
|
165: 6(int) Load 164
|
||||||
166: 19(int) Load 132(byteAddrTemp)
|
166: 20(int) Load 132(byteAddrTemp)
|
||||||
167: 19(int) IAdd 166 24
|
167: 20(int) IAdd 166 24
|
||||||
168: 30(ptr) AccessChain 18(sbuf) 26 167
|
168: 30(ptr) AccessChain 18(sbuf) 26 167
|
||||||
169: 6(int) Load 168
|
169: 6(int) Load 168
|
||||||
170: 19(int) Load 132(byteAddrTemp)
|
170: 20(int) Load 132(byteAddrTemp)
|
||||||
171: 19(int) IAdd 170 147
|
171: 20(int) IAdd 170 147
|
||||||
172: 30(ptr) AccessChain 18(sbuf) 26 171
|
172: 30(ptr) AccessChain 18(sbuf) 26 171
|
||||||
173: 6(int) Load 172
|
173: 6(int) Load 172
|
||||||
174: 151(ivec4) CompositeConstruct 161 165 169 173
|
174: 151(ivec4) CompositeConstruct 161 165 169 173
|
||||||
175: 6(int) CompositeExtract 174 1
|
175: 6(int) CompositeExtract 174 1
|
||||||
176: 30(ptr) AccessChain 18(sbuf) 26 156
|
176: 30(ptr) AccessChain 18(sbuf) 26 156
|
||||||
Store 176 175
|
Store 176 175
|
||||||
177: 19(int) Load 128(byteAddrTemp)
|
177: 20(int) Load 128(byteAddrTemp)
|
||||||
178: 19(int) IAdd 177 24
|
178: 20(int) IAdd 177 24
|
||||||
179: 6(int) Load 11(pos)
|
179: 6(int) Load 11(pos)
|
||||||
180: 19(int) ShiftRightLogical 179 24
|
180: 20(int) ShiftRightLogical 179 24
|
||||||
Store 132(byteAddrTemp) 180
|
Store 132(byteAddrTemp) 180
|
||||||
181: 19(int) Load 132(byteAddrTemp)
|
181: 20(int) Load 132(byteAddrTemp)
|
||||||
182: 30(ptr) AccessChain 18(sbuf) 26 181
|
182: 30(ptr) AccessChain 18(sbuf) 26 181
|
||||||
183: 6(int) Load 182
|
183: 6(int) Load 182
|
||||||
184: 19(int) Load 132(byteAddrTemp)
|
184: 20(int) Load 132(byteAddrTemp)
|
||||||
185: 19(int) IAdd 184 45
|
185: 20(int) IAdd 184 45
|
||||||
186: 30(ptr) AccessChain 18(sbuf) 26 185
|
186: 30(ptr) AccessChain 18(sbuf) 26 185
|
||||||
187: 6(int) Load 186
|
187: 6(int) Load 186
|
||||||
188: 19(int) Load 132(byteAddrTemp)
|
188: 20(int) Load 132(byteAddrTemp)
|
||||||
189: 19(int) IAdd 188 24
|
189: 20(int) IAdd 188 24
|
||||||
190: 30(ptr) AccessChain 18(sbuf) 26 189
|
190: 30(ptr) AccessChain 18(sbuf) 26 189
|
||||||
191: 6(int) Load 190
|
191: 6(int) Load 190
|
||||||
192: 19(int) Load 132(byteAddrTemp)
|
192: 20(int) Load 132(byteAddrTemp)
|
||||||
193: 19(int) IAdd 192 147
|
193: 20(int) IAdd 192 147
|
||||||
194: 30(ptr) AccessChain 18(sbuf) 26 193
|
194: 30(ptr) AccessChain 18(sbuf) 26 193
|
||||||
195: 6(int) Load 194
|
195: 6(int) Load 194
|
||||||
196: 151(ivec4) CompositeConstruct 183 187 191 195
|
196: 151(ivec4) CompositeConstruct 183 187 191 195
|
||||||
197: 6(int) CompositeExtract 196 2
|
197: 6(int) CompositeExtract 196 2
|
||||||
198: 30(ptr) AccessChain 18(sbuf) 26 178
|
198: 30(ptr) AccessChain 18(sbuf) 26 178
|
||||||
Store 198 197
|
Store 198 197
|
||||||
199: 19(int) Load 128(byteAddrTemp)
|
199: 20(int) Load 128(byteAddrTemp)
|
||||||
200: 19(int) IAdd 199 147
|
200: 20(int) IAdd 199 147
|
||||||
201: 6(int) Load 11(pos)
|
201: 6(int) Load 11(pos)
|
||||||
202: 19(int) ShiftRightLogical 201 24
|
202: 20(int) ShiftRightLogical 201 24
|
||||||
Store 132(byteAddrTemp) 202
|
Store 132(byteAddrTemp) 202
|
||||||
203: 19(int) Load 132(byteAddrTemp)
|
203: 20(int) Load 132(byteAddrTemp)
|
||||||
204: 30(ptr) AccessChain 18(sbuf) 26 203
|
204: 30(ptr) AccessChain 18(sbuf) 26 203
|
||||||
205: 6(int) Load 204
|
205: 6(int) Load 204
|
||||||
206: 19(int) Load 132(byteAddrTemp)
|
206: 20(int) Load 132(byteAddrTemp)
|
||||||
207: 19(int) IAdd 206 45
|
207: 20(int) IAdd 206 45
|
||||||
208: 30(ptr) AccessChain 18(sbuf) 26 207
|
208: 30(ptr) AccessChain 18(sbuf) 26 207
|
||||||
209: 6(int) Load 208
|
209: 6(int) Load 208
|
||||||
210: 19(int) Load 132(byteAddrTemp)
|
210: 20(int) Load 132(byteAddrTemp)
|
||||||
211: 19(int) IAdd 210 24
|
211: 20(int) IAdd 210 24
|
||||||
212: 30(ptr) AccessChain 18(sbuf) 26 211
|
212: 30(ptr) AccessChain 18(sbuf) 26 211
|
||||||
213: 6(int) Load 212
|
213: 6(int) Load 212
|
||||||
214: 19(int) Load 132(byteAddrTemp)
|
214: 20(int) Load 132(byteAddrTemp)
|
||||||
215: 19(int) IAdd 214 147
|
215: 20(int) IAdd 214 147
|
||||||
216: 30(ptr) AccessChain 18(sbuf) 26 215
|
216: 30(ptr) AccessChain 18(sbuf) 26 215
|
||||||
217: 6(int) Load 216
|
217: 6(int) Load 216
|
||||||
218: 151(ivec4) CompositeConstruct 205 209 213 217
|
218: 151(ivec4) CompositeConstruct 205 209 213 217
|
||||||
@ -1301,7 +1297,7 @@ error: OpStore Pointer <id> '14[size]'s type does not match Object <id> '20's ty
|
|||||||
221: 30(ptr) AccessChain 18(sbuf) 26 200
|
221: 30(ptr) AccessChain 18(sbuf) 26 200
|
||||||
Store 221 220
|
Store 221 220
|
||||||
222: 6(int) Load 11(pos)
|
222: 6(int) Load 11(pos)
|
||||||
223: 19(int) ShiftRightLogical 222 24
|
223: 20(int) ShiftRightLogical 222 24
|
||||||
224: 30(ptr) AccessChain 18(sbuf) 26 223
|
224: 30(ptr) AccessChain 18(sbuf) 26 223
|
||||||
225: 6(int) Load 224
|
225: 6(int) Load 224
|
||||||
226: 8(float) ConvertUToF 225
|
226: 8(float) ConvertUToF 225
|
||||||
|
@ -1,14 +1,14 @@
|
|||||||
spv.310.comp
|
spv.310.comp
|
||||||
// Module Version 10000
|
// Module Version 10000
|
||||||
// Generated by (magic number): 80007
|
// Generated by (magic number): 80007
|
||||||
// Id's are bound by 71
|
// Id's are bound by 72
|
||||||
|
|
||||||
Capability Shader
|
Capability Shader
|
||||||
Capability DeviceGroup
|
Capability DeviceGroup
|
||||||
Extension "SPV_KHR_device_group"
|
Extension "SPV_KHR_device_group"
|
||||||
1: ExtInstImport "GLSL.std.450"
|
1: ExtInstImport "GLSL.std.450"
|
||||||
MemoryModel Logical GLSL450
|
MemoryModel Logical GLSL450
|
||||||
EntryPoint GLCompute 4 "main" 53 64
|
EntryPoint GLCompute 4 "main" 53 65
|
||||||
ExecutionMode 4 LocalSize 16 32 4
|
ExecutionMode 4 LocalSize 16 32 4
|
||||||
Source ESSL 310
|
Source ESSL 310
|
||||||
SourceExtension "GL_EXT_device_group"
|
SourceExtension "GL_EXT_device_group"
|
||||||
@ -30,7 +30,7 @@ spv.310.comp
|
|||||||
MemberName 48(outs) 1 "va"
|
MemberName 48(outs) 1 "va"
|
||||||
Name 50 "outnames"
|
Name 50 "outnames"
|
||||||
Name 53 "gl_LocalInvocationID"
|
Name 53 "gl_LocalInvocationID"
|
||||||
Name 64 "gl_DeviceIndex"
|
Name 65 "gl_DeviceIndex"
|
||||||
Decorate 11 ArrayStride 16
|
Decorate 11 ArrayStride 16
|
||||||
MemberDecorate 12(outb) 0 Offset 0
|
MemberDecorate 12(outb) 0 Offset 0
|
||||||
MemberDecorate 12(outb) 1 Offset 4
|
MemberDecorate 12(outb) 1 Offset 4
|
||||||
@ -48,8 +48,8 @@ spv.310.comp
|
|||||||
Decorate 48(outs) BufferBlock
|
Decorate 48(outs) BufferBlock
|
||||||
Decorate 50(outnames) DescriptorSet 0
|
Decorate 50(outnames) DescriptorSet 0
|
||||||
Decorate 53(gl_LocalInvocationID) BuiltIn LocalInvocationId
|
Decorate 53(gl_LocalInvocationID) BuiltIn LocalInvocationId
|
||||||
Decorate 64(gl_DeviceIndex) BuiltIn DeviceIndex
|
Decorate 65(gl_DeviceIndex) BuiltIn DeviceIndex
|
||||||
Decorate 70 BuiltIn WorkgroupSize
|
Decorate 71 BuiltIn WorkgroupSize
|
||||||
2: TypeVoid
|
2: TypeVoid
|
||||||
3: TypeFunction 2
|
3: TypeFunction 2
|
||||||
6: TypeInt 32 0
|
6: TypeInt 32 0
|
||||||
@ -89,15 +89,15 @@ spv.310.comp
|
|||||||
52: TypePointer Input 51(ivec3)
|
52: TypePointer Input 51(ivec3)
|
||||||
53(gl_LocalInvocationID): 52(ptr) Variable Input
|
53(gl_LocalInvocationID): 52(ptr) Variable Input
|
||||||
54: TypePointer Input 6(int)
|
54: TypePointer Input 6(int)
|
||||||
61: TypePointer Uniform 15(int)
|
62: TypePointer Uniform 15(int)
|
||||||
63: TypePointer Input 15(int)
|
64: TypePointer Input 15(int)
|
||||||
64(gl_DeviceIndex): 63(ptr) Variable Input
|
65(gl_DeviceIndex): 64(ptr) Variable Input
|
||||||
65: 6(int) Constant 1
|
66: 6(int) Constant 1
|
||||||
66: 6(int) Constant 3400
|
67: 6(int) Constant 3400
|
||||||
67: 6(int) Constant 16
|
68: 6(int) Constant 16
|
||||||
68: 6(int) Constant 32
|
69: 6(int) Constant 32
|
||||||
69: 6(int) Constant 4
|
70: 6(int) Constant 4
|
||||||
70: 51(ivec3) ConstantComposite 67 68 69
|
71: 51(ivec3) ConstantComposite 68 69 70
|
||||||
4(main): 2 Function None 3
|
4(main): 2 Function None 3
|
||||||
5: Label
|
5: Label
|
||||||
ControlBarrier 7 7 8
|
ControlBarrier 7 7 8
|
||||||
@ -124,10 +124,11 @@ spv.310.comp
|
|||||||
58: 22(fvec4) CompositeConstruct 57 57 57 57
|
58: 22(fvec4) CompositeConstruct 57 57 57 57
|
||||||
59: 29(ptr) AccessChain 50(outnames) 26 56
|
59: 29(ptr) AccessChain 50(outnames) 26 56
|
||||||
Store 59 58
|
Store 59 58
|
||||||
60: 15(int) ArrayLength 14(outbname) 3
|
60: 6(int) ArrayLength 14(outbname) 3
|
||||||
62: 61(ptr) AccessChain 50(outnames) 16
|
61: 15(int) Bitcast 60
|
||||||
Store 62 60
|
63: 62(ptr) AccessChain 50(outnames) 16
|
||||||
MemoryBarrier 65 8
|
Store 63 61
|
||||||
MemoryBarrier 7 66
|
MemoryBarrier 66 8
|
||||||
|
MemoryBarrier 7 67
|
||||||
Return
|
Return
|
||||||
FunctionEnd
|
FunctionEnd
|
||||||
|
@ -1,3 +1,3 @@
|
|||||||
// This header is generated by the make-revision script.
|
// This header is generated by the make-revision script.
|
||||||
|
|
||||||
#define GLSLANG_PATCH_LEVEL 3006
|
#define GLSLANG_PATCH_LEVEL 3009
|
||||||
|
Loading…
x
Reference in New Issue
Block a user