[LLVMdev] A problem creating operands for a new IR instruction to the mailing list
suigintou_ at hotmail.com
Tue May 5 20:59:11 PDT 2009
Thank you for your answer. But there is still a problem.
You seem correct about how to define a constant operand. So I added it into my code, like so:
Constant *C = ConstantInt::get(APInt(32, 5, false));
It compiles. But it still aborts at runtime with a complaint that the type is not right.
This leads me to think that immediate loads are not generated with the CreateLoad
Another person's reply to my question indicated that a way to avoid inserting the
immediate load entirely; but that is also not what I want, because my explicit purpose
in inserting this load is to claim a register.
Date: Tue, 5 May 2009 16:07:33 +0200
From: meurant.olivier at gmail.com
To: llvmdev at cs.uiuc.edu
Subject: Re: [LLVMdev] A problem creating operands for a new IR instruction to the mailing list
If you want an immediate constant value, ConstantInt::get(APInt(32, 5, false)) will perhaps help you ?
2009/5/5 seventh moon <suigintou_ at hotmail.com>
I have a question about inserting instructions into the LLVM IR. I can insert instructions, but my operands do not have the right type, so it fails an assertion at runtime.
I am trying to insert an immediate load instructions, as a means of claiming a new register.
Here is what I do:
// The following line looks to me like it would have a chance o!
f loading either
// address 5, or else immediate value 5. Unfortunately, it does neither. It compiles
// but crashes at runtime, that the type of the operand is incompatible
// I also tested this, just to do a little sanity check. It also compiles then
// crashes, for the obvious reason that the operand is a register, but an address
// or an immediate value is expected.
//Instruction *newI=Builder.CreateLoad(I->getOperand(1),""); // also wrong
So to say it simply, my question is, "How can I create a new Value*, which indicates
an immediate value, such as immediate value 5?"
Thank you for your assistance,
你自己 — Windows Live Spaces
LLVM Developers mailing list
LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
隨身的 Windows Live Messenger 和 Hotmail，不限時地掌握資訊盡在指間 — Windows Live for Mobile
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the llvm-dev