Now that the fix for gcc PR 20218 is applied, and hidden attributes
actually work, linking of libgcc_s.so.1 on ia64 will fail with: unwind-ia64.So(.text+0x1762): In function `_Unwind_FindEnclosingFunction': : undefined reference to `_Unwind_FindTableEntry' unwind-ia64.So(.text+0x1d82): In function `uw_frame_state_for': : undefined reference to `_Unwind_FindTableEntry' /usr/bin/ld: libgcc_s.so.1: hidden symbol `_Unwind_FindTableEntry' isn't defined Repair this by not hiding the _Unwind_FindTableEntry symbol; on FreeBSD, it is in libc, not in libgcc. Silence from: current@
This commit is contained in:
parent
0e1c5cba52
commit
d8f878a1c5
@ -19,6 +19,13 @@
|
||||
the Free Software Foundation, 51 Franklin Street, Fifth Floor,
|
||||
Boston, MA 02110-1301, USA. */
|
||||
|
||||
#ifdef __FreeBSD__
|
||||
/* On FreeBSD, _Unwind_FindTableEntry is in libc, and must not be hidden here. */
|
||||
#define ATTRIBUTE_HIDDEN
|
||||
#else
|
||||
#define ATTRIBUTE_HIDDEN __attribute__ ((__visibility__ ("hidden")))
|
||||
#endif
|
||||
|
||||
struct unw_table_entry
|
||||
{
|
||||
unsigned long start_offset;
|
||||
@ -29,4 +36,4 @@ struct unw_table_entry
|
||||
extern struct unw_table_entry *
|
||||
_Unwind_FindTableEntry (void *pc, unsigned long *segment_base,
|
||||
unsigned long *gp)
|
||||
__attribute__ ((__visibility__ ("hidden")));
|
||||
ATTRIBUTE_HIDDEN;
|
||||
|
Loading…
Reference in New Issue
Block a user