mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-24 19:52:54 +01:00
Fix PR5563, an expensive checks failure when running on
tests/Transforms/InstCombine/shufflemask-undef.ll. If anyone cares, the use of 2*e here (and the equivalent all over the place in instcombine) seems wrong, though harmless: it should really be twice the length of the input vector. I think shufflevector used to require that the mask have the same length as the input, but I don't think that's true any more. I don't care enough about vectors to do anything about this... llvm-svn: 89456
This commit is contained in:
parent
072d688d75
commit
5f5ec2a6ec
@ -12920,7 +12920,7 @@ Instruction *InstCombiner::visitShuffleVectorInst(ShuffleVectorInst &SVI) {
|
||||
if (LHSMask.size() == Mask.size()) {
|
||||
std::vector<unsigned> NewMask;
|
||||
for (unsigned i = 0, e = Mask.size(); i != e; ++i)
|
||||
if (Mask[i] >= 2*e)
|
||||
if (Mask[i] >= e)
|
||||
NewMask.push_back(2*e);
|
||||
else
|
||||
NewMask.push_back(LHSMask[Mask[i]]);
|
||||
|
Loading…
Reference in New Issue
Block a user