Displaying 4 results from an estimated 4 matches similar to: "[LLVMdev] Wrong calling convention?"
2008 Mar 26
0
[LLVMdev] Wrong calling convention?
Hi,
> define internal i1 @Addr_045442A0() {
> alloca [8 x i8], align 4 ; <[8 x i8]*>:1 [#uses=2]
> alloca i1, align 4 ; <i1*>:2 [#uses=2]
> tail call void @F95478DA5_FFI_FN( [8 x i8]* %1 sret )
this call uses the "struct-return" convention (due to the sret attribute).
On x86 this means that the caller is responsible for adjusting the stack
pointer after
2008 Mar 26
4
[LLVMdev] Wrong calling convention?
Hi Duncan.
Duncan Sands <baldrick at free.fr> writes:
>> define internal i1 @Addr_045442A0() {
>> alloca [8 x i8], align 4 ; <[8 x i8]*>:1 [#uses=2]
>> alloca i1, align 4 ; <i1*>:2 [#uses=2]
>> tail call void @F95478DA5_FFI_FN( [8 x i8]* %1 sret )
>
> this call uses the "struct-return" convention (due to the sret attribute).
> On
2008 Mar 26
0
[LLVMdev] Wrong calling convention?
Hi Óscar,
> >> define internal i1 @Addr_045442A0() {
> >> alloca [8 x i8], align 4 ; <[8 x i8]*>:1 [#uses=2]
> >> alloca i1, align 4 ; <i1*>:2 [#uses=2]
> >> tail call void @F95478DA5_FFI_FN( [8 x i8]* %1 sret )
> >
> > this call uses the "struct-return" convention (due to the sret attribute).
> > On x86 this means
2008 Mar 26
4
[LLVMdev] Wrong calling convention?
Duncan Sands <baldrick at free.fr> writes:
>> But you put me on the right track. The problem is that the class is
>> returned on the stack.
Correction: The class is returned on the FP stack:
>> 0x6e08b5b5 <_ZN3Foo6GetFooEv+17>: fldl -0x8(%ebp)
>> 0x6e08b5b8 <_ZN3Foo6GetFooEv+20>: leave
>> 0x6e08b5b9 <_ZN3Foo6GetFooEv+21>: