[llvm-commits] [llvm] r42930 - /llvm/trunk/lib/Transforms/Scalar/InstructionCombining.cpp
Chris Lattner
clattner at apple.com
Fri Oct 12 22:22:34 PDT 2007
On Oct 12, 2007, at 1:10 PM, Devang Patel wrote:
> + // Destination pointer type is always i8 *
> + if (Size == 8)
> + NewPtrTy = PointerType::get(Type::Int64Ty);
> + else if (Size == 4)
> + NewPtrTy = PointerType::get(Type::Int32Ty);
> + else if (Size == 2)
> + NewPtrTy = PointerType::get(Type::Int16Ty);
> + else if (Size == 1)
> + NewPtrTy = PointerType::get(Type::Int8Ty);
How about:
if (Size && Size <= 8 && (Size&(Size-1)))
NewPtrTy = PointerType::get(IntegerType::get(Size));
If you don't like "(Size&(Size-1)", use MathExtras.h isPow2 methods.
Thanks Devang,
-Chris
More information about the llvm-commits
mailing list