summaryrefslogtreecommitdiffstats
path: root/toolchain/gcc/patches/3.4.5/73_all_sh-pr20617.patch
diff options
context:
space:
mode:
authornbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2006-06-21 06:19:43 +0000
committernbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2006-06-21 06:19:43 +0000
commit94266d638908a140ef5cdd9b27d2eb367f97249f (patch)
treee2cb8f4754b0d67846b3be0dfc38c64e83bffd78 /toolchain/gcc/patches/3.4.5/73_all_sh-pr20617.patch
parent1b14a20c70b78c037ef4bcc6d1edb61ea8b27e68 (diff)
massive cleanup of toolchain/
git-svn-id: svn://svn.openwrt.org/openwrt/branches/buildroot-ng/openwrt@4038 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'toolchain/gcc/patches/3.4.5/73_all_sh-pr20617.patch')
-rw-r--r--toolchain/gcc/patches/3.4.5/73_all_sh-pr20617.patch28
1 files changed, 28 insertions, 0 deletions
diff --git a/toolchain/gcc/patches/3.4.5/73_all_sh-pr20617.patch b/toolchain/gcc/patches/3.4.5/73_all_sh-pr20617.patch
new file mode 100644
index 000000000..6d8021cc7
--- /dev/null
+++ b/toolchain/gcc/patches/3.4.5/73_all_sh-pr20617.patch
@@ -0,0 +1,28 @@
+2005-03-24 J"orn Rennecke <joern.rennecke@st.com>
+
+ Band aid for PR target/20617:
+ * config/sh/lib1funcs.asm (FUNC, ALIAS): Add .hidden directive.
+
+--- g/gcc/config/sh/lib1funcs.asm
++++ g/gcc/config/sh/lib1funcs.asm
+@@ -37,9 +37,19 @@ Boston, MA 02111-1307, USA. */
+ ELF local label prefixes by J"orn Rennecke
+ amylaar@cygnus.com */
+
++#define ALIAS(X,Y) .global GLOBAL(X); .set GLOBAL(X),GLOBAL(Y)
++
+ #ifdef __ELF__
+ #define LOCAL(X) .L_##X
+-#define FUNC(X) .type X,@function
++
++#if 1 /* ??? The export list mechanism is broken, everything that is not
++ hidden is exported. */
++#undef FUNC
++#define FUNC(X) .type X,@function; .hidden X
++#undef ALIAS
++#define ALIAS(X,Y) .global GLOBAL(X); .set GLOBAL(X),GLOBAL(Y); .hidden GLOBAL(X)
++#endif
++
+ #define ENDFUNC0(X) .Lfe_##X: .size X,.Lfe_##X-X
+ #define ENDFUNC(X) ENDFUNC0(X)
+ #else