This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

[3.0] Fix for FreeBSD 2 (aout) bootstrap failure


This patch brings FreeBSD 2 back to bootstrapville.  The latest
snapshot wouldn't build because FreeBSD's assembler rejected some of
the differences between symbols used to create EH regions.  This
patch, very similar to other patches that worked around similar
problems in other systems' assemblers, was necessary for bootstrap to
complete.  Ok for the branch?  Ok for mainline?

Index: gcc/ChangeLog
from  Alexandre Oliva  <aoliva@redhat.com>

	* config/i386/freebsd-aout.h (ASM_PREFERRED_EH_DATA_FORMAT):
	Don't use DW_EH_PE_pcrel.

Index: gcc/config/i386/freebsd-aout.h
===================================================================
RCS file: /cvs/gcc/egcs/gcc/config/i386/freebsd-aout.h,v
retrieving revision 1.2.6.1
diff -u -p -r1.2.6.1 freebsd-aout.h
--- gcc/config/i386/freebsd-aout.h 2001/05/20 19:49:17 1.2.6.1
+++ gcc/config/i386/freebsd-aout.h 2001/07/06 21:38:28
@@ -34,6 +34,14 @@ Boston, MA 02111-1307, USA.  */
 #define TARGET_DEFAULT \
   (MASK_80387 | MASK_IEEE_FP | MASK_FLOAT_RETURNS | MASK_NO_FANCY_MATH_387)
 
+/* Select a format to encode pointers in exception handling data.  CODE
+   is 0 for data, 1 for code labels, 2 for function pointers.  GLOBAL is
+   true if the symbol may be affected by dynamic relocations.  */
+#undef ASM_PREFERRED_EH_DATA_FORMAT
+#define ASM_PREFERRED_EH_DATA_FORMAT(CODE,GLOBAL)			\
+  (flag_pic ? (GLOBAL ? DW_EH_PE_indirect : 0) | DW_EH_PE_datarel	\
+   : DW_EH_PE_absptr)
+
 #undef CPP_PREDEFINES
 #define CPP_PREDEFINES "-Dunix -D__FreeBSD__\
  -Asystem=unix -Asystem=bsd -Asystem=FreeBSD"

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer                  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicamp        oliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist    *Please* write to mailing lists, not to me

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]