[PATCH, PR45650] _Unwind_FindTableEntry visibility on ia64
Gerald Pfeifer
gerald@pfeifer.com
Sun Sep 12 03:07:00 GMT 2010
So, it turns out that bug #40959 actually is only one of two regressions
that breaks bootstrap on FreeBSD/ia64. This is about the second case.
Since
2004-11-09 H.J. Lu <hongjiu.lu@intel.com>
PR target/18380
* config/ia64/unwind-ia64.h (_Unwind_FindTableEntry): Mark it
hidden.
* unwind-dw2.c (_Unwind_FindTableEntry): Removed.
_Unwind_FindTableEntry has been marked hidden which is okay for those
cases where GCC defines the function but breaks FreeBSD which has this
in libc.
The patch below fixes this, but I'm not sure an #ifndef like this is
acceptable? If not, how can we fix this?
Gerald
2010-09-12 Gerald Pfeifer <gerald@pfeifer.com>
PR target/45650
* config/ia64/unwind-ia64.h: Do not mark _Unwind_FindTableEntry
hidden on FreeBSD.
Index: config/ia64/unwind-ia64.h
===================================================================
--- config/ia64/unwind-ia64.h (revision 164202)
+++ config/ia64/unwind-ia64.h (working copy)
@@ -40,4 +40,7 @@
extern struct unw_table_entry *
_Unwind_FindTableEntry (void *pc, unsigned long *segment_base,
unsigned long *gp, struct unw_table_entry *ent)
- __attribute__ ((__visibility__ ("hidden")));
+#ifndef __FreeBSD__
+ __attribute__ ((__visibility__ ("hidden")))
+#endif
+ ;
More information about the Gcc-patches
mailing list