This is the mail archive of the libffi-discuss@sourceware.org mailing list for the libffi project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: libffi trunk: new regressions on x86_64-linux-gnu, some test failures left on i686-linux-gnu


On Sat, May 5, 2018 at 10:36 AM, Kaz Kylheku (libffi) <
382-725-6798@kylheku.com> wrote:

> On 2018-05-05 06:51, Anthony Green wrote:
>
>> These failures are showing up because we're testing the microsoft ABI now.
>>
>> This looks like a bug in GCC.  It's not returning small structures with
>> floating point values in the right registers when following the Microsoft
>> ABI.  I'm going to figure out how to 'xfail' those tests and open a bug
>> against GCC.   Clang appears to get it right.
>>
>
> When would this be an actual issue?
>

As far as I know this is the first time this bug has been reported.   I've
filed it here: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=43869

GCC is internally consistant, but can't generate code that will interface
correctly to binaries built with clang or visual c.

Since nobody has reported this problem before, I'm OK with having libffi
follow the correct ABI as long as the GCC hackers agree to fix this in
future versions of GCC.  Libffi won't work with GCC-compiled ms_abi
functions returning short structs (8 bytes or less) containing floating
point values (a pretty narrow use-case!).  This is why I'll just xfail the
problematic test cases when we know we're using GCC.

AG


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]