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