This is the mail archive of the crossgcc@sourceware.org mailing list for the crossgcc project.
See the CrossGCC FAQ for lots more information.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
Hi, attached you find the files I needed to add to crosstool-0.38 in order to build a sh4-linux gcc-4.0.2-glibc-2.3.5 tool chain. Files attached: sh4-gcc4.dat: * gcc4 needs --with-multilib-list=m4,m4-nofpu otherwise a linux kernel won't build as it uses the -m4-nofpu option. gcc-pr21623.patch: * Kaz Kojima provided a patch for PR21623. glibc-2.3.5-sh-memset.patch: * A patch for glibc-2.3.5 which corrects memset. From SUGIOKA Toshinobu. See content for rationale. -- Regards, Alexander
2005-09-30 Kaz Kojima <kkojima@gcc.gnu.org> * config/sh/sh.c (sh_register_move_cost): Add case for moving from T_REGS to FP register class. diff -up ORIG/gcc/gcc/config/sh/sh.c TMP/gcc/gcc/config/sh/sh.c --- gcc/gcc/config/sh/sh.c 2005-09-07 06:16:56.000000000 +0900 +++ gcc/gcc/config/sh/sh.c 2005-09-30 07:06:35.000000000 +0900 @@ -9491,6 +9491,9 @@ sh_register_move_cost (enum machine_mode && REGCLASS_HAS_FP_REG (dstclass)) return 4; + if (REGCLASS_HAS_FP_REG (dstclass) && srcclass == T_REGS) + return ((TARGET_HARD_SH4 && !optimize_size) ? 10 : 7); + if ((REGCLASS_HAS_FP_REG (dstclass) && srcclass == MAC_REGS) || (dstclass == MAC_REGS && REGCLASS_HAS_FP_REG (srcclass))) return 9;
KERNELCONFIG=`pwd`/sh4.config TARGET=sh4-linux TARGET_CFLAGS="-O -ml -m4" GCC_EXTRA_CONFIG="--with-multilib-list=m4,m4-nofpu" GLIBC_CONFIGPARMS="no-z-defs=yes"
From: http://sources.redhat.com/ml/libc-alpha/2005-07/msg00051.html On sh[34]-linux, memset function does not work if 2nd argument is negative and 3rd argument is greater than 12. for example, memset(ptr, "\xda", 20) sets 0xff instead of 0xda. Attached patch fixes this problem. * sysdeps/sh/memset.S (memset): Correct 2nd argument handling. diff -u -p -r1.4 memset.S --- glibc-2.3.5/sysdeps/sh/memset.S 29 Apr 2003 22:47:18 -0000 1.4 +++ glibc-2.3.5/sysdeps/sh/memset.S 23 Jul 2005 08:37:21 -0000 @@ -28,6 +28,7 @@ ENTRY(memset) bt.s L_byte_loop_init mov r4,r7 + extu.b r5,r5 swap.b r5,r1 or r1,r5 swap.w r5,r1
------ Want more information? See the CrossGCC FAQ, http://www.objsw.com/CrossGCC/ Want to unsubscribe? Send a note to crossgcc-unsubscribe@sources.redhat.com
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |