tinycc-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Tinycc-devel] Bug fix on arm OABI


From: Thomas Preud'homme
Subject: [Tinycc-devel] Bug fix on arm OABI
Date: Sat, 24 Nov 2012 14:56:09 +0100
User-agent: KMail/1.13.7 (Linux/2.6.38-ac2-ac100; KDE/4.8.4; armv7l; ; )

Greetings Daniel,

while reading code in arm-gen.c recently I stumbled upon what I think is a bug 
I introduced with the hard float calling convention. Two places in register 
assignment code assume that at the top of the value stack (the place pointed 
by vtop) is a LLONG pushed for 8 bytes alignment of the stack at function 
call. As you know it, it's only true with EABI (hard float variant or not). I 
made a quick patch but I don't have a non EABI system to test it.

Could you try to compile a function with only 1 argument with gcc and then, 
with and without the attached patch to:

- compile another file containing the call to this function;
- link it to the file containing the function compiled with gcc?

Once this issue will be sorted out, I'll start splitting gfunc_call for arm in 
several functions and add more comments. It's really needed for other people 
to understand the code without spending too much time on it.

Best regards,

Thomas

Attachment: Dont_assume_8bytes_alignment_calling_convention_in_arm.patch
Description: Text Data


reply via email to

[Prev in Thread] Current Thread [Next in Thread]