Fix trivial todo in instcombine.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75586 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Eli Friedman 2009-07-14 02:01:53 +00:00
parent f6bc4ae4a1
commit b468709c91
2 changed files with 7 additions and 1 deletions

View File

@ -2702,7 +2702,8 @@ Instruction *InstCombiner::visitMul(BinaryOperator &I) {
Context->getConstantInt(Op0->getType(), Val.logBase2()));
}
} else if (isa<VectorType>(Op1->getType())) {
// TODO: If Op1 is all zeros and Op0 is all finite, return all zeros.
if (Op1->isNullValue())
return ReplaceInstUsesWith(I, Op1);
if (ConstantVector *Op1V = dyn_cast<ConstantVector>(Op1)) {
if (Op1V->isAllOnesValue()) // X * -1 == 0 - X

View File

@ -83,3 +83,8 @@ define internal void @test13(<4 x float>*) {
store <4 x float> %3, <4 x float>* %0, align 1
ret void
}
define <16 x i8> @test14(<16 x i8> %a) {
%b = mul <16 x i8> %a, zeroinitializer
ret <16 x i8> %b
}