Add shufflevector support

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27515 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Lattner 2006-04-08 01:19:47 +00:00
parent 67f1351498
commit 9273b0403e

View File

@ -317,6 +317,12 @@ static Value *RemapOperand(const Value *In,
Result = ConstantExpr::getInsertElement(cast<Constant>(Ptr),
cast<Constant>(Elt),
cast<Constant>(Idx));
} else if (CE->getOpcode() == Instruction::ShuffleVector) {
Value *V1 = RemapOperand(CE->getOperand(0), ValueMap);
Value *V2 = RemapOperand(CE->getOperand(1), ValueMap);
Result = ConstantExpr::getShuffleVector(cast<Constant>(V1),
cast<Constant>(V2),
cast<Constant>(CE->getOperand(2)));
} else if (CE->getNumOperands() == 1) {
// Cast instruction
assert(CE->getOpcode() == Instruction::Cast);