HLSL: Fix #2037: Integer dot used incorrect input for adds.
This commit is contained in:
parent
bd97b6f9f2
commit
5de15a256e
@ -7482,7 +7482,7 @@ spv::Id TGlslangToSpvTraverser::createMiscOperation(glslang::TOperator op, spv::
|
|||||||
id = builder.createCompositeExtract(mulOp, typeId, 0);
|
id = builder.createCompositeExtract(mulOp, typeId, 0);
|
||||||
for (int i = 1; i < componentCount; ++i) {
|
for (int i = 1; i < componentCount; ++i) {
|
||||||
builder.setPrecision(id, precision);
|
builder.setPrecision(id, precision);
|
||||||
id = builder.createBinOp(spv::OpIAdd, typeId, id, builder.createCompositeExtract(operands[0], typeId, i));
|
id = builder.createBinOp(spv::OpIAdd, typeId, id, builder.createCompositeExtract(mulOp, typeId, i));
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
switch (consumedOperands) {
|
switch (consumedOperands) {
|
||||||
|
@ -295,7 +295,7 @@ gl_FragCoord origin is upper left
|
|||||||
39: 17(ivec2) Load 19(i3)
|
39: 17(ivec2) Load 19(i3)
|
||||||
40: 17(ivec2) IMul 38 39
|
40: 17(ivec2) IMul 38 39
|
||||||
41: 11(int) CompositeExtract 40 0
|
41: 11(int) CompositeExtract 40 0
|
||||||
42: 11(int) CompositeExtract 38 1
|
42: 11(int) CompositeExtract 40 1
|
||||||
43: 11(int) IAdd 41 42
|
43: 11(int) IAdd 41 42
|
||||||
44: 17(ivec2) CompositeConstruct 43 43
|
44: 17(ivec2) CompositeConstruct 43 43
|
||||||
Store 19(i3) 44
|
Store 19(i3) 44
|
||||||
@ -303,9 +303,9 @@ gl_FragCoord origin is upper left
|
|||||||
46: 22(ivec3) Load 24(i4)
|
46: 22(ivec3) Load 24(i4)
|
||||||
47: 22(ivec3) IMul 45 46
|
47: 22(ivec3) IMul 45 46
|
||||||
48: 11(int) CompositeExtract 47 0
|
48: 11(int) CompositeExtract 47 0
|
||||||
49: 11(int) CompositeExtract 45 1
|
49: 11(int) CompositeExtract 47 1
|
||||||
50: 11(int) IAdd 48 49
|
50: 11(int) IAdd 48 49
|
||||||
51: 11(int) CompositeExtract 45 2
|
51: 11(int) CompositeExtract 47 2
|
||||||
52: 11(int) IAdd 50 51
|
52: 11(int) IAdd 50 51
|
||||||
53: 22(ivec3) CompositeConstruct 52 52 52
|
53: 22(ivec3) CompositeConstruct 52 52 52
|
||||||
Store 24(i4) 53
|
Store 24(i4) 53
|
||||||
@ -313,11 +313,11 @@ gl_FragCoord origin is upper left
|
|||||||
55: 27(ivec4) Load 29(i5)
|
55: 27(ivec4) Load 29(i5)
|
||||||
56: 27(ivec4) IMul 54 55
|
56: 27(ivec4) IMul 54 55
|
||||||
57: 11(int) CompositeExtract 56 0
|
57: 11(int) CompositeExtract 56 0
|
||||||
58: 11(int) CompositeExtract 54 1
|
58: 11(int) CompositeExtract 56 1
|
||||||
59: 11(int) IAdd 57 58
|
59: 11(int) IAdd 57 58
|
||||||
60: 11(int) CompositeExtract 54 2
|
60: 11(int) CompositeExtract 56 2
|
||||||
61: 11(int) IAdd 59 60
|
61: 11(int) IAdd 59 60
|
||||||
62: 11(int) CompositeExtract 54 3
|
62: 11(int) CompositeExtract 56 3
|
||||||
63: 11(int) IAdd 61 62
|
63: 11(int) IAdd 61 62
|
||||||
64: 27(ivec4) CompositeConstruct 63 63 63 63
|
64: 27(ivec4) CompositeConstruct 63 63 63 63
|
||||||
Store 29(i5) 64
|
Store 29(i5) 64
|
||||||
|
Loading…
x
Reference in New Issue
Block a user