aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2013-03-28 12:16:28 -0500
committerRyan S. Arnold <rsa@linux.vnet.ibm.com>2013-03-28 12:16:28 -0500
commitb0f1246ab45b6d27e2bba64aa8dfe407ac740537 (patch)
tree6fe4031d0740221fd17d15cc1edd958d8aaab7c4
parentfbbe2b9a1f04c00ea0f8820a545bd4ca780ffa30 (diff)
downloadglibc-b0f1246ab45b6d27e2bba64aa8dfe407ac740537.zip
glibc-b0f1246ab45b6d27e2bba64aa8dfe407ac740537.tar.gz
glibc-b0f1246ab45b6d27e2bba64aa8dfe407ac740537.tar.bz2
PowerPC: .eh_frame info in crt1.o isn't useful and triggers gold bug 14675.
The .eh_frame info in crt1.o isn't useful and this patch prevents it from being generated on PowerPC. It triggers the following gold bug: http://sourceware.org/bugzilla/show_bug.cgi?id=14675
-rw-r--r--ChangeLog7
-rw-r--r--sysdeps/powerpc/powerpc32/start.S7
-rw-r--r--sysdeps/powerpc/powerpc64/start.S7
3 files changed, 21 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 390c5cb..183bedf 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2013-03-28 Alan Modra <amodra@gmail.com>
+
+ * sysdeps/powerpc/powerpc32/start.S (cfi_startproc, cfi_endproc):
+ Define as empty.
+ * sysdeps/powerpc/powerpc64/start.S (cfi_startproc, cfi_endproc):
+ Likewise.
+
2013-03-28 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
[BZ #15214]
diff --git a/sysdeps/powerpc/powerpc32/start.S b/sysdeps/powerpc/powerpc32/start.S
index 9d5f8d3..f04446b 100644
--- a/sysdeps/powerpc/powerpc32/start.S
+++ b/sysdeps/powerpc/powerpc32/start.S
@@ -35,6 +35,13 @@
#include <sysdep.h>
+/* We do not want .eh_frame info for crt1.o since crt1.o is linked
+ before crtbegin.o, the file defining __EH_FRAME_BEGIN__. */
+#undef cfi_startproc
+#define cfi_startproc
+#undef cfi_endproc
+#define cfi_endproc
+
/* These are the various addresses we require. */
#ifdef PIC
.section ".data"
diff --git a/sysdeps/powerpc/powerpc64/start.S b/sysdeps/powerpc/powerpc64/start.S
index ec0fd30..09ab464 100644
--- a/sysdeps/powerpc/powerpc64/start.S
+++ b/sysdeps/powerpc/powerpc64/start.S
@@ -35,6 +35,13 @@
#include <sysdep.h>
+/* We do not want .eh_frame info for crt1.o since crt1.o is linked
+ before crtbegin.o, the file defining __EH_FRAME_BEGIN__. */
+#undef cfi_startproc
+#define cfi_startproc
+#undef cfi_endproc
+#define cfi_endproc
+
/* These are the various addresses we require. */
#ifdef PIC
.section ".data.rel.ro.local","aw"