patches/gcc/4.3.0/250-pr35705.patch
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Thu May 07 19:30:32 2009 +0000 (2009-05-07)
changeset 1328 f9e0931908f4
parent 746 b150d6f590fc
permissions -rw-r--r--
Workaround for "PowerPC-8xx CPU15 errata" (whatever that might be).
Patch by Nye LIU: http://sourceware.org/ml/crossgcc/2009-05/msg00014.html

-------- diffstat follows --------
/trunk/patches/eglibc/2_9/100-powerpc-8xx-CPU15-errata.patch | 49 49 0 0 ++++++++++++++++++
/trunk/scripts/build/libc/eglibc.sh | 10 9 1 0 +++-
2 files changed, 58 insertions(+), 1 deletion(-)
yann@552
     1
Original patch from gentoo: gentoo/src/patchsets/gcc/4.3.0/gentoo/63_all_gcc43-pr35705.patch
yann@552
     2
http://gcc.gnu.org/PR35705
yann@552
     3
yann@552
     4
2008-04-01  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
yann@552
     5
yann@552
     6
	PR middle-end/35705
yann@552
     7
	* fold-const.c (get_pointer_modulus_and_residue): Return modulus 1 if
yann@552
     8
	the expression is a function address.
yann@552
     9
yann@552
    10
diff -durN gcc-4.3.0.orig/gcc/fold-const.c gcc-4.3.0/gcc/fold-const.c
yann@552
    11
--- gcc-4.3.0.orig/gcc/fold-const.c	2008-02-27 15:12:33.000000000 +0100
yann@552
    12
+++ gcc-4.3.0/gcc/fold-const.c	2008-06-10 14:45:09.000000000 +0200
yann@552
    13
@@ -9357,7 +9357,7 @@
yann@552
    14
 	    }
yann@552
    15
 	}
yann@552
    16
 
yann@552
    17
-      if (DECL_P (expr))
yann@552
    18
+      if (DECL_P (expr) && TREE_CODE (expr) != FUNCTION_DECL)
yann@552
    19
 	return DECL_ALIGN_UNIT (expr);
yann@552
    20
     }
yann@552
    21
   else if (code == POINTER_PLUS_EXPR)