[RFC] POWER8 default for PPC64LE

Bill Schmidt wschmidt@linux.vnet.ibm.com
Fri Jan 16 16:14:00 GMT 2015


On Fri, 2015-01-16 at 09:52 -0600, Bill Schmidt wrote:
> Hi David,
> 
> Something's not quite right here -- we've been having bootstrap failures
> with BE and LE PPC64 Linux.  Maybe a missing include?

Correction, just on LE.  The issue on BE was a different failure.

> 
> g++ -c   -g -DIN_GCC    -fno-exceptions -fno-rtti -fasynchronous-unwind-tables -
> W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wno-format -Wmissing-format-
> attribute -Woverloaded-virtual -pedantic -Wno-long-long -Wno-variadic-macros -Wn
> o-overlength-strings -fno-common  -DHAVE_CONFIG_H -I. -I. -I/home/gccbuild/gcc_t
> runk_anonsvn/gcc/gcc -I/home/gccbuild/gcc_trunk_anonsvn/gcc/gcc/. -I/home/gccbui
> ld/gcc_trunk_anonsvn/gcc/gcc/../include -I/home/gccbuild/gcc_trunk_anonsvn/gcc/g
> cc/../libcpp/include  -I/home/gccbuild/gcc_trunk_anonsvn/gcc/gcc/../libdecnumber
>  -I/home/gccbuild/gcc_trunk_anonsvn/gcc/gcc/../libdecnumber/dpd -I../libdecnumbe
> r -I/home/gccbuild/gcc_trunk_anonsvn/gcc/gcc/../libbacktrace   -o options.o -MT 
> options.o -MMD -MP -MF ./.deps/options.TPo options.c
> In file included from tm.h:30:0,
>                  from options.c:7:
> /home/gccbuild/gcc_trunk_anonsvn/gcc/gcc/config/rs6000/default64.h:23:25: error:
>  ‘ISA_2_7_MASKS_SERVER’ was not declared in this scope
>  #define TARGET_DEFAULT (ISA_2_7_MASKS_SERVER | MASK_POWERPC64 | MASK_64BIT | MA
> SK_LITTLE_ENDIAN)
>                          ^
> options.c:828:3: note: in expansion of macro ‘TARGET_DEFAULT’
>    TARGET_DEFAULT, /* rs6000_isa_flags */
>    ^
> make[3]: *** [options.o] Error 1
> make[3]: *** Waiting for unfinished jobs....
> 
> Bill
> 
> 
> 
> On Wed, 2015-01-14 at 15:32 -0500, David Edelsohn wrote:
> > The PPC64LE ABI specifies POWER8 ISA as the minimum hardware
> > requierment.  Currently, Linux distributions are building the
> > toolchain using --with-cpu=power7 or power8, as they wish.  GCC
> > defaults to essentially the POWER4 ISA.
> > 
> > The appended patch changes the default for PPC64LE to POWER8 (ISA
> > 2.7).  32-bit PPC SVR4 is not really defined, but it is left unchanged
> > with no minimum ISA.
> > 
> > The default ISA can be overridden using --with-cpu= and we presume
> > that Linux distributions and users will continue to configure as they
> > require for their deployment.
> > 
> > * config/rs6000/default64.h (TARGET_DEFAULT) [LITTLE_ENDIAN]: Use ISA
> > 2.7 (POWER8).
> > 
> > Thanks, David
> > 
> > Index: default64.h
> > ===================================================================
> > --- default64.h (revision 219607)
> > +++ default64.h (working copy)
> > @@ -20,7 +20,7 @@
> > 
> >  #if (TARGET_DEFAULT & MASK_LITTLE_ENDIAN)
> >  #undef TARGET_DEFAULT
> > -#define TARGET_DEFAULT (MASK_PPC_GFXOPT | MASK_POWERPC64 | MASK_64BIT
> > | MASK_LITTLE_ENDIAN)
> > +#define TARGET_DEFAULT (ISA_2_7_MASKS_SERVER | MASK_POWERPC64 |
> > MASK_64BIT | MASK_LITTLE_ENDIAN)
> >  #else
> >  #undef TARGET_DEFAULT
> >  #define TARGET_DEFAULT (MASK_PPC_GFXOPT | MASK_POWERPC64 | MASK_64BIT)
> > 
> 
> 




More information about the Gcc-patches mailing list