Enhance constant folding of bitcast operations on vectors of floats.

Add getAllOnesValue of FP numbers to Constants and APFloat.
Add more tests.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125776 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Nadav Rotem
2011-02-17 21:22:27 +00:00
parent bd9f6bf5cd
commit 093399cbf3
5 changed files with 62 additions and 4 deletions
+1 -2
View File
@@ -43,8 +43,7 @@ using namespace llvm;
static Constant *BitCastConstantVector(ConstantVector *CV,
const VectorType *DstTy) {
if (CV->isAllOnesValue() && DstTy->getElementType()->isIntegerTy())
return Constant::getAllOnesValue(DstTy);
if (CV->isAllOnesValue()) return Constant::getAllOnesValue(DstTy);
if (CV->isNullValue()) return Constant::getNullValue(DstTy);
// If this cast changes element count then we can't handle it here: