patches/gcc/4.3.3/230-pr34571.patch
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Wed Sep 09 00:02:01 2009 +0200 (2009-09-09)
changeset 1525 4647e6fb994a
permissions -rw-r--r--
gcc: add patch to fix EABI for armv4t

As pointed out by Martin GUY, gcc incorrectly generates armv5t
instrcutions for EABI, even for cores that are an armv4t.
The new patch (for the 4.3 series) fixes the problem by downgrading
the default CPU for EABI to being an armv4t core.
     1 Original patch from: ../4.3.2/230-pr34571.patch
     2 
     3 -= BEGIN original header =-
     4 Original patch from gentoo: gentoo/src/patchsets/gcc/4.3.1/gentoo/64_all_gcc43-pr34571.patch
     5 http://gcc.gnu.org/PR34571
     6 
     7 2007-12-26  Rask Ingemann Lambertsen  <rask@sygehus.dk>
     8 
     9 	PR target/34571
    10 	* config/alpha/alpha.c (alpha_cannot_force_const_mem): Use
    11 	symbolic_operand.
    12 	* varasm.c (output_constant_pool_1): Fix typo.
    13 
    14 -= END original header =-
    15 
    16 diff -durN gcc-4.3.3.orig/gcc/config/alpha/alpha.c gcc-4.3.3/gcc/config/alpha/alpha.c
    17 --- gcc-4.3.3.orig/gcc/config/alpha/alpha.c	2008-09-09 01:16:55.000000000 +0200
    18 +++ gcc-4.3.3/gcc/config/alpha/alpha.c	2009-01-27 22:25:29.000000000 +0100
    19 @@ -1113,8 +1113,7 @@
    20  static bool
    21  alpha_cannot_force_const_mem (rtx x)
    22  {
    23 -  enum rtx_code code = GET_CODE (x);
    24 -  return code == SYMBOL_REF || code == LABEL_REF || code == CONST;
    25 +  return symbolic_operand (x, GET_MODE (x));
    26  }
    27  
    28  /* We do not allow indirect calls to be optimized into sibling calls, nor