On Fri, Mar 27, 2020 at 02:30:36PM -0400, Michael Meissner wrote:
> > > -/* Support for a future processor's features.  Do not enable -mpcrel 
> > > until it
> > > -   is fully functional.  */
> > > +/* Support for a future processor's features.  The addressing related 
> > > options
> > > +   (like -mprefixed, -mpcrel) are not set here.  */
> > 
> > So, where are they set?  why is it important to say they are not set
> > here?
> 
> They are set in rs6000_option_override in rs6000.c, like all of the other
> defaults.
> 
> The issue is that not all 'future' targets will enable these bits.  In 
> general,
> it is simpler to set the bits to ON in the cases where they should be, rather
> than settings the bits here and then resetting them.
> 
> In particular, other operating systems (like AIX, Linux using ELF v1, or
> 32-bit) might not have the necessary support for the PC-relative relocations.
> In addition, if the user did -mcmodel=large or -mcmodel=small, we cannot turn
> on the PC-relative addressing, because the instructions only have a 34-bit
> offset, and the other code models have different assumptions.
> 
> Perhaps one day, we might think about adding the support for -mcmodel=large,
> but for now, you need to use the normal TOC addressing for that.

Please just don't mention it here at all then?  It only confuses
matters, it does not help the reader at all.


Segher

Reply via email to