This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
3.0.1 PATCH: Avoid subtracting labels in different sections on Solaris 2/Intel
- To: gcc-patches at gcc dot gnu dot org
- Subject: 3.0.1 PATCH: Avoid subtracting labels in different sections on Solaris 2/Intel
- From: Rainer Orth <ro at TechFak dot Uni-Bielefeld dot DE>
- Date: Mon, 25 Jun 2001 19:31:39 +0200 (MEST)
- Cc: Robert Lipe <robertlipe at usa dot net>
I've successfully bootstrapped i386-pc-solaris2.8 with the native as, a
mainline patch to fix a comparison failure
http://gcc.gnu.org/ml/gcc-patches/2001-06/msg01559.html
and this patch below by Robert Lipe:
http://gcc.gnu.org/ml/gcc/2001-06/msg01329.html
With this patch, gcc on Solaris 2/Intel bootstraps without gas for the
first time since the EH merge, as has been reported several times:
http://gcc.gnu.org/ml/gcc-bugs/2001-05/msg00876.html
Ok for branch and mainline?
Rainer
-----------------------------------------------------------------------------
Rainer Orth, Faculty of Technology, Bielefeld University
Email: ro@TechFak.Uni-Bielefeld.DE
Mon Jun 25 19:22:15 2001 Robert Lipe <robertlipe@usa.net>
Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
* config/i386/sol2.h (ASM_PREFERRED_EH_DATA_FORMAT): Define.
Fixes PRs bootstrap/3067, bootstrap/3249, bootstrap/3275.
===================================================================
RCS file: gcc/config/i386/RCS/sol2.h,v
retrieving revision 1.1
diff -up -r1.1 gcc/config/i386/sol2.h
--- gcc/config/i386/sol2.h 2000/11/02 23:29:10 1.1
+++ gcc/config/i386/sol2.h 2000/11/02 22:29:10
@@ -61,6 +61,14 @@ Boston, MA 02111-1307, USA. */
#define FORCE_INIT_SECTION_ALIGN asm (ALIGN_ASM_OP ## "16")
#define FORCE_FINI_SECTION_ALIGN FORCE_INIT_SECTION_ALIGN
+/* 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)
+
/* Add "sun" to the list of symbols defined for SVR4. */
#undef CPP_PREDEFINES
#define CPP_PREDEFINES \