Blob Blame History Raw
From ace889170837e550871cf0d33f88ba2470c7d834 Mon Sep 17 00:00:00 2001
From: Alan Modra <amodra@gmail.com>
Date: Thu, 28 Mar 2013 12:16:28 -0500
Subject: [PATCH 22/42] 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
(cherry picked from commit b0f1246ab45b6d27e2bba64aa8dfe407ac740537)
---
 sysdeps/powerpc/powerpc32/start.S | 7 +++++++
 sysdeps/powerpc/powerpc64/start.S | 7 +++++++
 3 files changed, 21 insertions(+)

diff --git glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/start.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/start.S
index 4935e64..2e454c0 100644
--- glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/start.S
+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc32/start.S
@@ -37,6 +37,13 @@
 #include <sysdep.h>
 #include "bp-sym.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 glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/start.S glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/start.S
index d9c92d1..aadaf0f 100644
--- glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/start.S
+++ glibc-2.17-c758a686/sysdeps/powerpc/powerpc64/start.S
@@ -37,6 +37,13 @@
 #include <sysdep.h>
 #include "bp-sym.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"
-- 
1.7.11.7