Changes in directory llvm/lib/Analysis:
ConstantFolding.cpp updated: 1.21 -> 1.22 --- Log message: The bit counting intrinsics return i32 not the operand type. This fixes last night's regression in SingleSource/UnitTests/2005-05-11-Popcount-ffs-fls --- Diffs of the changes: (+3 -4) ConstantFolding.cpp | 7 +++---- 1 files changed, 3 insertions(+), 4 deletions(-) Index: llvm/lib/Analysis/ConstantFolding.cpp diff -u llvm/lib/Analysis/ConstantFolding.cpp:1.21 llvm/lib/Analysis/ConstantFolding.cpp:1.22 --- llvm/lib/Analysis/ConstantFolding.cpp:1.21 Sun Apr 1 02:35:23 2007 +++ llvm/lib/Analysis/ConstantFolding.cpp Sun Apr 1 13:42:20 2007 @@ -433,18 +433,17 @@ break; } } else if (ConstantInt *Op = dyn_cast<ConstantInt>(Operands[0])) { - const IntegerType *OpTy = cast<IntegerType>(Op->getType()); if (Name.size() > 11 && !memcmp(&Name[0], "llvm.bswap", 10)) { return ConstantInt::get(Op->getValue().byteSwap()); } else if (Name.size() > 11 && !memcmp(&Name[0],"llvm.ctpop",10)) { uint64_t ctpop = Op->getValue().countPopulation(); - return ConstantInt::get(OpTy, ctpop); + return ConstantInt::get(Type::Int32Ty, ctpop); } else if (Name.size() > 10 && !memcmp(&Name[0], "llvm.cttz", 9)) { uint64_t cttz = Op->getValue().countTrailingZeros(); - return ConstantInt::get(OpTy, cttz); + return ConstantInt::get(Type::Int32Ty, cttz); } else if (Name.size() > 10 && !memcmp(&Name[0], "llvm.ctlz", 9)) { uint64_t ctlz = Op->getValue().countLeadingZeros(); - return ConstantInt::get(OpTy, ctlz); + return ConstantInt::get(Type::Int32Ty, ctlz); } } } else if (NumOperands == 2) { _______________________________________________ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits