Changes in directory llvm/lib/Transforms:
ExprTypeConvert.cpp updated: 1.119 -> 1.120 --- Log message: Eliminate calls to isInteger, generalizing code and tightening checks as needed. --- Diffs of the changes: (+7 -8) ExprTypeConvert.cpp | 15 +++++++-------- 1 files changed, 7 insertions(+), 8 deletions(-) Index: llvm/lib/Transforms/ExprTypeConvert.cpp diff -u llvm/lib/Transforms/ExprTypeConvert.cpp:1.119 llvm/lib/Transforms/ExprTypeConvert.cpp:1.120 --- llvm/lib/Transforms/ExprTypeConvert.cpp:1.119 Sat Dec 30 23:48:39 2006 +++ llvm/lib/Transforms/ExprTypeConvert.cpp Sun Jan 14 19:55:30 2007 @@ -69,19 +69,19 @@ case Instruction::Add: case Instruction::Sub: - if (!Ty->isInteger() && !Ty->isFloatingPoint()) return false; + if (!Ty->isIntegral() && !Ty->isFloatingPoint()) return false; if (!ExpressionConvertibleToType(I->getOperand(0), Ty, CTMap, TD) || !ExpressionConvertibleToType(I->getOperand(1), Ty, CTMap, TD)) return false; break; case Instruction::LShr: case Instruction::AShr: - if (!Ty->isInteger()) return false; + if (!Ty->isIntegral()) return false; if (!ExpressionConvertibleToType(I->getOperand(0), Ty, CTMap, TD)) return false; break; case Instruction::Shl: - if (!Ty->isInteger()) return false; + if (!Ty->isIntegral()) return false; if (!ExpressionConvertibleToType(I->getOperand(0), Ty, CTMap, TD)) return false; break; @@ -458,7 +458,7 @@ case Instruction::Add: case Instruction::Sub: { - if (!Ty->isInteger() && !Ty->isFloatingPoint()) return false; + if (!Ty->isIntegral() && !Ty->isFloatingPoint()) return false; Value *OtherOp = I->getOperand((V == I->getOperand(0)) ? 1 : 0); return ValueConvertibleToType(I, Ty, CTMap, TD) && @@ -476,7 +476,7 @@ case Instruction::AShr: case Instruction::Shl: if (I->getOperand(1) == V) return false; // Cannot change shift amount type - if (!Ty->isInteger()) return false; + if (!Ty->isIntegral()) return false; return ValueConvertibleToType(I, Ty, CTMap, TD); case Instruction::Free: @@ -634,8 +634,7 @@ // arguments if possible. // for (unsigned i = 0, NA = FTy->getNumParams(); i < NA; ++i) - if (!FTy->getParamType(i)->canLosslesslyBitCastTo( - I->getOperand(i+1)->getType())) + if (FTy->getParamType(i) != I->getOperand(i+1)->getType()) return false; // Operands must have compatible types! // Okay, at this point, we know that all of the arguments can be @@ -655,7 +654,7 @@ // If we get this far, we know the value is in the varargs section of the // function! We can convert if we don't reinterpret the value... // - return Ty->canLosslesslyBitCastTo(V->getType()); + return isa<PointerType>(Ty) && isa<PointerType>(V->getType()); } } return false; _______________________________________________ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits