This is the mail archive of the binutils@sourceware.org mailing list for the binutils 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: [PATCH 0/9] PowerPC64 ELFv2 ABI support.


On Wed, Oct 30, 2013 at 05:25:25PM +0000, Joseph S. Myers wrote:
> On Wed, 30 Oct 2013, Alan Modra wrote:
> 
> > This patch series makes the changes necessary in binutils to support
> > the updated PowerPC64 ABI, which we're calling ELFv2.  Two major
> > changes from the previous ABI are
> 
> Is there an actual ABI document for this (or one with the old/new 
> variations tagged appropriately like in the 32-bit unified ABI)?

There is, but it's not ready for general release yet, I think.

> Are things changing that don't affect binutils (such as long double format 
> as suggested for little-endian in 
> <https://sourceware.org/ml/libc-alpha/2013-10/msg00597.html> - or the 

Long double is remaining as is for the time being, but I believe the
intent is to change to ieee128 at some point in the future.  More than
anything, it was time and resource constraints that prevented us
changing immediately.

> places where the function calling ABI is based on accidents of how GCC 
> assigned machine modes to structures, rather than being anything that was 
> particularly logically designed)?

The new ABI generally keeps the same conventions as the old one,
except that homgenous floating point or vector aggregates passed by
value will be passed in registers, and returned in registers if they
fit into 8 or fewer register.  We'll also return other structs up to a
certains size in general purpose registers.  So, yes, we'll be keeping
some accidents.

-- 
Alan Modra
Australia Development Lab, IBM


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