[PATCH] Fix PR79278, amend ADJUST_FIELD_ALIGN interface

Jakub Jelinek jakub@redhat.com
Wed Feb 1 15:26:00 GMT 2017


On Wed, Feb 01, 2017 at 10:27:27AM -0500, Trevor Saunders wrote:
> Yeah, different targets deal with this mess in different ways, looks
> like frv uses a different macro and ppc redefines macros as needed
> rs6000_special_adjust_field_align_p is also defined in ppc headers.
> 
> > 
> > /* @@@ A hack, needed because libobjc wants to use ADJUST_FIELD_ALIGN for
> >    some reason.  */
> > #ifdef IN_TARGET_LIBS
> > #define BIGGEST_FIELD_ALIGNMENT 64
> > #else
> > /* An expression for the alignment of a structure field FIELD if the
> >    alignment computed in the usual way is COMPUTED.  GCC uses this
> >    value instead of the value in `BIGGEST_ALIGNMENT' or
> >    `BIGGEST_FIELD_ALIGNMENT', if defined, for structure fields only.  */
> > #define ADJUST_FIELD_ALIGN(FIELD, COMPUTED)                             \
> >   frv_adjust_field_align (FIELD, COMPUTED)
> > #endif
> > 
> > Similar x86_64.
> > 
> > So it seems on power this might be an issue and thus I'd need to
> > adjust the macro use - but not sure what to pass as "type" here...
> 
> Sorry but I seem to have successfully purged my brain of the details on
> how this works.

IMNSHO what libobjc should have used is just some new builtin that would
allow it to query such information from the compiler.

	Jakub



More information about the Gcc-patches mailing list