[LLVMdev] Help with Values sign
Joey Gouly
joel.gouly at gmail.com
Sun May 27 10:02:24 PDT 2012
How are you checking the return value?
I put your code in santos.ll and then executed it with lli, and I get 1 as
a return value.
lli santos.ll ; echo $?
1
Joey
On 27 May 2012 16:59, Santos Merino <santitox at hotmail.es> wrote:
> I show you the trace of calls to llvm that my compiler makes to generate
> the
> code above. bloques.back().last is of type Value* and bloques.back().bl is
> BasicBlock* (the current Block)
>
> bloques.back().last =
>
> dyn_cast<Value>(ConstantInt::get(Type::getInt32Ty(getGlobalContext()), $1,
> true)); // $1 is an int
> AllocaInst *alloc =
> new AllocaInst(
> Type::getInt32Ty(getGlobalContext()), izq.c_str(),
> bloques.back().bl);
> Value *derecha = bloques.back().last;
> StoreInst *s = new StoreInst(derecha, alloc, false, bloques.back().bl);
> bloques.back().last = alloc;
> LoadInst* v1 =
> new LoadInst(bloques.back().last, "r", false,
> bloques.back().bl);
> bloques.back().last = v1;
> BasicBlock* blockReturn =
> BasicBlock::Create(getGlobalContext(), "Return", Main);
> Value* last = bloques.back().last;
> BranchInst::Create(blockReturn, bloques.back().bl);
> ReturnInst::Create(getGlobalContext(), last, blockReturn);
>
> The source code corresponding to the IR representation would be:
>
> a = 1
> return a
>
>
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20120527/26691d53/attachment.html>
More information about the llvm-dev
mailing list