[PATCH] Add powerpc64-linux configuration options

Michael Meissner meissner@linux.vnet.ibm.com
Thu May 24 17:47:00 GMT 2012


On Wed, May 23, 2012 at 10:59:10PM +0000, Joseph S. Myers wrote:
> On Wed, 23 May 2012, Michael Meissner wrote:
> 
> > An alternative would be for the powerpc64-linux case, should we just delete the
> > software floating emulation multilib and stop using the -mstrict-align, since
> > Linux only runs in big endian mode.  The software emulation multilib would be
> > built for other powerpc varients and -mstrict-align would be used there as
> > well.
> 
> I support deleting the soft-float multilib; it can't be used as-is because 
> it requires its own libc, in its own sysroot, and the configuration 
> doesn't use a separate sysroot for it.  As for -mstrict-align, again if 
> someone wants -mstrict-align libraries I think they should set up a 
> multilib using that option (or a CPU option that implies it) rather than 
> trying to make the libraries from a compiler configured for some CPU 
> compatible with another CPU they wouldn't normally be compatible with.

This alternative patch just disables building the 32-bit softfloat multlib, and
removes the -mstrict-align in the powerpc64-linux case.

I have bootstrapped it and had no regressions.

David, which patch do you prefer?

2012-05-24  Michael Meissner  <meissner@linux.vnet.ibm.com>

	* config/rs6000/t-linux64: Delete the 32-bit multilib that uses
	software floating point emulation.  No longer build the multilibs
	with -mstrict-align.

Index: gcc/config/rs6000/t-linux64
===================================================================
--- gcc/config/rs6000/t-linux64	(revision 187805)
+++ gcc/config/rs6000/t-linux64	(working copy)
@@ -26,10 +26,7 @@
 # it doesn't tell anything about the 32bit libraries on those systems.  Set
 # MULTILIB_OSDIRNAMES according to what is found on the target.
 
-MULTILIB_OPTIONS        = m64/m32 msoft-float
-MULTILIB_DIRNAMES       = 64 32 nof
-MULTILIB_EXTRA_OPTS     = fPIC mstrict-align
-MULTILIB_EXCEPTIONS     = m64/msoft-float
-MULTILIB_EXCLUSIONS     = m64/!m32/msoft-float
-MULTILIB_OSDIRNAMES	= ../lib64 $(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib) nof
-MULTILIB_MATCHES        = $(MULTILIB_MATCHES_FLOAT)
+MULTILIB_OPTIONS        = m64/m32
+MULTILIB_DIRNAMES       = 64 32
+MULTILIB_EXTRA_OPTS     = fPIC
+MULTILIB_OSDIRNAMES	= ../lib64 $(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib)

-- 
Michael Meissner, IBM
5 Technology Place Drive, M/S 2757, Westford, MA 01886-3141, USA
meissner@linux.vnet.ibm.com	fax +1 (978) 399-6899



More information about the Gcc-patches mailing list