Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 22 Feb 2009 18:12:20 GMT
From:      Nathan Whitehorn <nwhitehorn@FreeBSD.org>
To:        Perforce Change Reviews <perforce@freebsd.org>
Subject:   PERFORCE change 158078 for review
Message-ID:  <200902221812.n1MICKj0074376@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=158078

Change 158078 by nwhitehorn@nwhitehorn_trantor on 2009/02/22 18:11:21

	A few more compiler nits: make -m32 almost work. It still does not pass
	the appropriate -a{32,64} to the assembler because of the stupid way
	GCC chooses how to do this, but the compiler at least is doing the right
	thing.

Affected files ...

.. //depot/projects/ppc-g5/contrib/gcc/config/rs6000/freebsd.h#5 edit
.. //depot/projects/ppc-g5/gnu/usr.bin/binutils/libbfd/Makefile.ppc64#2 edit

Differences ...

==== //depot/projects/ppc-g5/contrib/gcc/config/rs6000/freebsd.h#5 (text+ko) ====

@@ -21,10 +21,6 @@
 
 /* Override the defaults, which exist to force the proper definition.  */
 
-#undef TARGET_64BIT
-#define TARGET_64BIT (TARGET_CPU_DEFAULT != NULL && strcmp(TARGET_CPU_DEFAULT, \
-    "powerpc64") == 0)
-
 #ifdef IN_LIBGCC2
 #undef TARGET_64BIT
 #ifdef __ppc64__
@@ -41,17 +37,14 @@
 #undef	TARGET_AIX
 #define	TARGET_AIX TARGET_64BIT
 
-#undef	CPP_OS_DEFAULT_SPEC
-#define CPP_OS_DEFAULT_SPEC "%(cpp_os_freebsd)"
-
-#undef	CPP_OS_FREEBSD_SPEC
-#define CPP_OS_FREEBSD_SPEC	"\
-  -D__PPC__ -D__ppc__ -D__PowerPC__ -D__powerpc__" 
-
 #undef  FBSD_TARGET_CPU_CPP_BUILTINS
 #define FBSD_TARGET_CPU_CPP_BUILTINS()		\
   do						\
     {						\
+      builtin_define ("__PPC__");		\
+      builtin_define ("__ppc__");		\
+      builtin_define ("__PowerPC__");		\
+      builtin_define ("__powerpc__");		\
       if (TARGET_64BIT)				\
 	{					\
 	  builtin_define ("__LP64__");		\
@@ -102,7 +95,7 @@
 	  if ((target_flags & MASK_POWERPC64) == 0)		\
 	    {							\
 	      target_flags |= MASK_POWERPC64;			\
-	      error ("32-bit PowerPC unavailable on ppc64");	\
+	      error ("64 bit CPU required");			\
 	    }							\
 	}							\
     }								\
@@ -124,9 +117,6 @@
 #undef	LINK_OS_DEFAULT_SPEC
 #define	LINK_OS_DEFAULT_SPEC "%(link_os_freebsd)"
 
-#undef	ASM_DEFAULT_SPEC
-#define	ASM_DEFAULT_SPEC (TARGET_64BIT ? "-mppc64" : "-mppc")
-
 /* XXX: This is wrong for many platforms in sysv4.h.
    We should work on getting that definition fixed.  */
 #undef  LINK_SHLIB_SPEC
@@ -142,6 +132,9 @@
 #undef  SIZE_TYPE
 #define SIZE_TYPE	(TARGET_64BIT ? "long unsigned int" : "unsigned int")
 
+#undef  PTRDIFF_TYPE
+#define PTRDIFF_TYPE	(TARGET_64BIT ? "long int" : "int")
+
 /* rs6000.h gets this wrong for FreeBSD.  We use the GCC defaults instead.  */
 #undef WCHAR_TYPE
 

==== //depot/projects/ppc-g5/gnu/usr.bin/binutils/libbfd/Makefile.ppc64#2 (text+ko) ====

@@ -6,6 +6,11 @@
 
 SRCS+=	cpu-powerpc.c	\
 	cpu-rs6000.c	\
+	elf32.c		\
+	elf32-gen.c	\
+	elf32-ppc.c	\
+	elf32-target.h	\
+	elflink.c	\
 	elf64.c		\
 	elf64-gen.c	\
 	elf64-ppc.c	\
@@ -16,4 +21,5 @@
 
 VECS+=	${DEFAULT_VECTOR} \
 	bfd_elf64_powerpcle_vec	\
-	ppcboot_vec
+	bfd_elf32_powerpc_vec \
+	bfd_elf32_powerpcle_vec 



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200902221812.n1MICKj0074376>