patches/gcc/4.0.2/pr21623-workaround.patch
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Sat Feb 24 11:00:05 2007 +0000 (2007-02-24)
changeset 1 eeea35fbf182
permissions -rw-r--r--
Add the full crosstool-NG sources to the new repository of its own.
You might just say: 'Yeah! crosstool-NG's got its own repo!".
Unfortunately, that's because the previous repo got damaged beyond repair and I had no backup.
That means I'm putting backups in place in the afternoon.
That also means we've lost history... :-(
     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;