Remove optimizations that don't require both operands to be constant. These

are moved to simplify-libcalls pass.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21614 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Reid Spencer 2005-04-29 05:55:35 +00:00
parent 0f4a891803
commit df4945bcb5

View File

@ -360,16 +360,6 @@ Constant *llvm::ConstantFoldCall(Function *F,
} else if (Name == "atan2")
return ConstantFP::get(Ty, atan2(Op1V,Op2V));
}
else if (Name == "pow" && Op1V == 1.0) {
return ConstantFP::get(Ty,1.0);
}
} else if (ConstantFP* Op2 = dyn_cast<ConstantFP>(Operands[1])) {
double Op2V = Op2->getValue();
if (Name == "pow")
if (Op2V == 0.0)
return ConstantFP::get(Ty,1.0);
else if (Op2V == 1.0)
return Operands[0];
}
}
return 0;