mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-14 11:32:34 +00:00
[x86] Fix yet another issue with widening vector shuffle elements.
I spotted this by inspection when debugging something else, so I have no test case what-so-ever, and am not even sure it is possible to realistically trigger the bug. But this is what was intended here. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@218565 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
00666192c1
commit
b66b0cf2eb
@ -9884,11 +9884,11 @@ static bool canWidenShuffleElements(ArrayRef<int> Mask,
|
||||
|
||||
// Check for an undef mask and a mask value properly aligned to fit with
|
||||
// a pair of values. If we find such a case, use the non-undef mask's value.
|
||||
if (Mask[i] == -1 && Mask[i + 1] % 2 == 1) {
|
||||
if (Mask[i] == -1 && Mask[i + 1] >= 0 && Mask[i + 1] % 2 == 1) {
|
||||
WidenedMask.push_back(Mask[i + 1] / 2);
|
||||
continue;
|
||||
}
|
||||
if (Mask[i + 1] == -1 && Mask[i] % 2 == 0) {
|
||||
if (Mask[i + 1] == -1 && Mask[i] >= 0 && Mask[i] % 2 == 0) {
|
||||
WidenedMask.push_back(Mask[i] / 2);
|
||||
continue;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user