Add vector shifts to the IR, patch by Eli Friedman.

CodeGen & Clang work coming next.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54161 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Nate Begeman
2008-07-29 15:49:41 +00:00
parent 75cf9cc527
commit 5bc1ea0736
11 changed files with 361 additions and 319 deletions

View File

@ -6368,7 +6368,8 @@ Instruction *InstCombiner::visitAShr(BinaryOperator &I) {
return ReplaceInstUsesWith(I, CSI);
// See if we can turn a signed shr into an unsigned shr.
if (MaskedValueIsZero(Op0,
if (!isa<VectorType>(I.getType()) &&
MaskedValueIsZero(Op0,
APInt::getSignBit(I.getType()->getPrimitiveSizeInBits())))
return BinaryOperator::CreateLShr(Op0, I.getOperand(1));