Displaying 7 results from an estimated 7 matches for "gvar_int32_y".
Did you mean:
gvar_int32_x
2011 Apr 26
2
[LLVMdev] inserting a fucntion call at the end of basic bloc
...is how I pass the parameters
Instruction* ii = i->getTerminator();
const int n = cast <int> (i->size());
ConstantInt* inValue = ConstantInt::get(Type::getInt32Ty(Context), n);
std::vector<Value*> int32_16_params;
int32_16_params.push_back(inValue);
int32_16_params.push_back(gvar_int32_y);
CallInst* int32_16 = CallInst::Create(func_consume,
int32_16_params.begin(), int32_16_params.end(), "", ii);
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20110426/401ffb3b/attachment.html>
2011 Apr 26
0
[LLVMdev] inserting a fucntion call at the end of basic bloc
...Instruction* ii = i->getTerminator();
> const int n = cast <int> (i->size());
> ConstantInt* inValue = ConstantInt::get(Type::getInt32Ty(Context), n);
> std::vector<Value*> int32_16_params;
> int32_16_params.push_back(inValue);
> int32_16_params.push_back(gvar_int32_y);
> CallInst* int32_16 = CallInst::Create(func_consume, int32_16_params.begin(),
> int32_16_params.end(), "", ii);
where did the "noalias" attribute and "tail call" (rather than "call") come
from? Are you setting these yourself or running some optim...
2011 Apr 26
2
[LLVMdev] inserting a fucntion call at the end of basic bloc
I have defined the fucntion in another object file and linked it to the
in fact the fucntion is :
void consume(int , int * );
std::vector<Value*> int32_16_params;
int32_16_params.push_back(inValue);//inValue is ConstantInt* inValue
int32_16_params.push_back(gvar_int32_y);
CallInst* int32_16 = CallInst::Create(func_consume, int32_16_params.begin(),
int32_16_params.end(), "", ii);
compilation without errors
Now when i tried this pass an error says:
Wrong type for attribute noalias
tail call void @consume(i32 noalias 3, i32* @y) nounwind
Wrong type for att...
2011 Apr 26
0
[LLVMdev] inserting a fucntion call at the end of basic bloc
Hi Nabila,
> Now when i tried this pass an error says:
> Wrong type for attribute noalias
> tail call void @consume(i32 noalias 3, i32* @y) nounwind
noalias is only for arguments of pointer type. You probably meant it to
be on the second argument rather than the first. I suggest you correct
your code that adds the attribute.
Ciao, Duncan.
2011 Apr 25
0
[LLVMdev] inserting a fucntion call at the end of basic bloc
Hi Nabila,
> My problem is how to call a method
> suppose this fucntion
> void A(int x)
> {
> x=x+1;
>
> }
>
> should i define this function and declare it at the beginig of the module and
> create for it a basic bloc?
you can just declare the function (i.e. no need to give it a body), and call it.
You can then link with an object file that defines it. This is
2011 Apr 25
2
[LLVMdev] inserting a fucntion call at the end of basic bloc
2011/4/25 Duncan Sands <baldrick at free.fr>
> Hi Nabila,
>
> > i would like insert a fucntion call at the end of each basic bloc
>
> you can't, because only terminators are allowed at the end of a basic
> block.
> However you can try to insert the call before the terminator.
>
Yes, i mean before the termininator,
My problem is how to call a method
suppose
2011 Apr 26
2
[LLVMdev] inserting a fucntion call at the end of basic bloc
...i = i->getTerminator();
>> const int n = cast <int> (i->size());
>> ConstantInt* inValue = ConstantInt::get(Type::getInt32Ty(Context), n);
>> std::vector<Value*> int32_16_params;
>> int32_16_params.push_back(inValue);
>> int32_16_params.push_back(gvar_int32_y);
>> CallInst* int32_16 = CallInst::Create(func_consume,
>> int32_16_params.begin(),
>> int32_16_params.end(), "", ii);
>>
>
> where did the "noalias" attribute and "tail call" (rather than "call") come
> from? Are you setti...