patches/gcc/4.0.2/120-pr21623-workaround.patch
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Sun Feb 17 22:12:59 2008 +0000 (2008-02-17)
changeset 433 9886aa0a9694
permissions -rw-r--r--
Robert P. J. DAY says:

According to Mike Frysinger, this patch was removed from Gentoo in the
2.3.x series and didn't seem to cause any adverse effects. So toss it
from the patch directories for glibc 2.5 and up.
     1 Message-ID: <434576E1.6020305@sscd.de>
     2 Date: Thu, 06 Oct 2005 21:11:29 +0200
     3 From: Alexander Sieb <sieb@sscd.de>
     4 To: crossgcc@sourceware.org
     5 Subject: Crosstool sh4-linux-gcc-4.0.2-glibc-2.3.5 patches
     6 
     7 Hi,
     8 
     9 attached you find the files I needed to add to crosstool-0.38
    10 in order to build a sh4-linux gcc-4.0.2-glibc-2.3.5 tool chain.
    11 
    12 Files attached:
    13 
    14 sh4-gcc4.dat:
    15         * gcc4 needs --with-multilib-list=m4,m4-nofpu otherwise a linux
    16         kernel won't build as it uses the -m4-nofpu option.
    17 
    18 gcc-pr21623.patch:
    19         * Kaz Kojima provided a patch [really, a workaround -dank] for http://gcc.gnu.org/PR21623
    20 
    21 glibc-2.3.5-sh-memset.patch:
    22         * A patch for glibc-2.3.5 which corrects memset. From SUGIOKA Toshinobu.
    23         See content for rationale.
    24 
    25 -- snip --
    26 
    27 -- Here's patch 1 of 2, plus URLs showing where it is in CVS --
    28 
    29 [http://gcc.gnu.org/ml/gcc-cvs/2005-10/msg00081.html]
    30 
    31 2005-09-30  Kaz Kojima  <kkojima@gcc.gnu.org>
    32 
    33 	* config/sh/sh.c (sh_register_move_cost): Add case for moving
    34 	from T_REGS to FP register class.
    35 
    36 [http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/sh/sh.c.diff?cvsroot=gcc&r1=1.347&r2=1.348]
    37 
    38 RCS file: /cvs/gcc/gcc/gcc/config/sh/sh.c,v
    39 retrieving revision 1.347
    40 retrieving revision 1.348
    41 diff -u -r1.347 -r1.348
    42 --- gcc/gcc/config/sh/sh.c	2005/09/05 12:45:22	1.347
    43 +++ gcc/gcc/config/sh/sh.c	2005/10/03 22:07:08	1.348
    44 @@ -9491,6 +9491,9 @@ sh_register_move_cost (enum machine_mode
    45        && REGCLASS_HAS_FP_REG (dstclass))
    46      return 4;
    47  
    48 +  if (REGCLASS_HAS_FP_REG (dstclass) && srcclass == T_REGS)
    49 +    return ((TARGET_HARD_SH4 && !optimize_size) ? 10 : 7);
    50 +
    51    if ((REGCLASS_HAS_FP_REG (dstclass) && srcclass == MAC_REGS)
    52        || (dstclass == MAC_REGS && REGCLASS_HAS_FP_REG (srcclass)))
    53      return 9;