[LLVMdev] Bug in ExecutionEngine::getConstantValue() -- Instruction::PtrToInt
Aaron Gray
aaronngray.lists at googlemail.com
Sat Jul 25 12:03:07 PDT 2009
2009/7/25 John McCall <rjmccall at apple.com>
> Aaron Gray wrote:
>
> I think I might have found a bug in the exection engine's 'constants
> folding'.
>
> Basically APInt's parameters are the wrong way round.
>
> Line 577 for lib/ExecutionEngine/ExecutionEngine.cpp :-
>
> case Instruction::PtrToInt: {
> GenericValue GV = getConstantValue(Op0);
> uint32_t PtrWidth = TD->getPointerSizeInBits();
> GV.IntVal = APInt(PtrWidth, uintptr_t(GV.PointerVal));
> return GV;
> }
> Aaron
>
> That looks to be the right order to me:
>
> APInt(unsigned numBits, uint64_t val, bool isSigned=false)
>
Ah I was reading the private version !
Whoopse !
Aaron
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20090725/3329f2a1/attachment.html>
More information about the llvm-dev
mailing list