patches/gcc/3.4.6/730-all_sh-pr20617.patch
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Sun Feb 17 22:08:06 2008 +0000 (2008-02-17)
changeset 431 8bde4c6ea47a
permissions -rw-r--r--
Robert P. J. DAY says:

apparently, the patchset for gcc 4.2.1 applies properly to the
source for gcc 4.2.2 and gcc 4.2.3. so, if you want, you can simply
add support for those last two just by augmenting menuconfig and
adding a couple symlinks for those two directories. seems like a
cheap way to add a couple new versions.
yann@402
     1
diff -durN gcc-3.4.6.orig/gcc/config/sh/lib1funcs.asm gcc-3.4.6/gcc/config/sh/lib1funcs.asm
yann@402
     2
--- gcc-3.4.6.orig/gcc/config/sh/lib1funcs.asm	2003-08-12 03:25:07.000000000 +0200
yann@402
     3
+++ gcc-3.4.6/gcc/config/sh/lib1funcs.asm	2007-08-15 23:04:26.000000000 +0200
yann@402
     4
@@ -37,9 +37,19 @@
yann@402
     5
    ELF local label prefixes by J"orn Rennecke
yann@402
     6
    amylaar@cygnus.com  */
yann@402
     7
 
yann@402
     8
+#define ALIAS(X,Y)	.global GLOBAL(X); .set GLOBAL(X),GLOBAL(Y)
yann@402
     9
+
yann@402
    10
 #ifdef __ELF__
yann@402
    11
 #define LOCAL(X)	.L_##X
yann@402
    12
-#define FUNC(X)		.type X,@function
yann@402
    13
+
yann@402
    14
+#if 1 /* ??? The export list mechanism is broken, everything that is not
yann@402
    15
+	 hidden is exported.  */
yann@402
    16
+#undef FUNC
yann@402
    17
+#define FUNC(X)		.type X,@function; .hidden X
yann@402
    18
+#undef ALIAS
yann@402
    19
+#define ALIAS(X,Y)	.global GLOBAL(X); .set GLOBAL(X),GLOBAL(Y); .hidden GLOBAL(X)
yann@402
    20
+#endif
yann@402
    21
+
yann@402
    22
 #define ENDFUNC0(X)	.Lfe_##X: .size X,.Lfe_##X-X
yann@402
    23
 #define ENDFUNC(X)	ENDFUNC0(X)
yann@402
    24
 #else