This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC 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: ARM va_list


On Thu, 22 Jan 2009, Richard Earnshaw wrote:

> On balance I think it would be useful to maintain the backwards
> compatibility for Linux, but essential to gain ABI compatibility for
> SymbianOS.  If both of those goals cannot be satisfied simultaneously,
> then I think we need to go with ABI conformance: in the end, that is the
> the rules by which we are claiming to adhere.

Of course it's possible in principle to make the code do things like this, 
but we seem to be applying much more complicated analysis to this fix than 
to the x86_64 C ABI fix currently under discussion or to any past C ABI 
change (whether or not one aiming to follow an actively maintained 
multi-vendor document, as is the case both here and for x86_64), the 
likely effect of which is the change not going in for either Linux or 
SymbianOS.  I don't see any patch presently proposed that handles things 
differently for different targets.

I suggest we put this in as is with a release note similar to past C ABI 
changes on various platforms.  I noted in 
<http://gcc.gnu.org/ml/gcc-patches/2009-01/msg00711.html> that some 
comments were out of date because the ABI does now specify std::__va_list, 
so I suggest removing "(to match RealView) " in the first comment quoted 
and changing the second to "The ARM ABI documents (10th October 2008) say 
that "__va_list" has to be managled as if it is in the "std" namespace.".  
I suggest putting the release note in the "Caveats" section of 
gcc-4.4/changes.html following the one about packed bit-fields, saying 
something like:

  <li>On ARM EABI targets, the C++ mangling of the <code>va_list</code>
  type has been changed to conform to the current revision of the EABI.
  This does not affect the libstdc++ library included with GCC.</li>

-- 
Joseph S. Myers
joseph@codesourcery.com


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