diff options
author | uros <uros@138bc75d-0d04-0410-961f-82ee72b054a4> | 2007-06-15 07:01:31 +0000 |
---|---|---|
committer | uros <uros@138bc75d-0d04-0410-961f-82ee72b054a4> | 2007-06-15 07:01:31 +0000 |
commit | baf359954fe38b6c79f821ef6de0d2099b7d5ca2 (patch) | |
tree | 8edb3de675b231d55a819e39733fb9b3b9a0e8fc /gcc | |
parent | 7577c7f76b46f69b2e32c1508a3dca7bd1319cd2 (diff) | |
download | gcc-baf359954fe38b6c79f821ef6de0d2099b7d5ca2.tar.gz |
* libgcc2.c (CEXT): When compiling L_multc3 and L_divtc3,
define to "l" if LIBGCC_LONG_DOUBLE_SIZE == 128,
otherwise define to LIBGCC2_TF_CEXT.
* config/i386/linux64.h (LIBGCC2_HAS_TF_MODE): New define.
(LIBGCC_TF_CEXT): Ditto.
(TF_SIZE): Ditto.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@125737 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 15 | ||||
-rw-r--r-- | gcc/config/i386/linux64.h | 9 | ||||
-rw-r--r-- | gcc/libgcc2.c | 8 |
3 files changed, 26 insertions, 6 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 14f50febb76..63ebfa087b1 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,8 +1,17 @@ +2007-06-15 Uros Bizjak <ubizjak@gmail.com> + + * libgcc2.c (CEXT): When compiling L_multc3 and L_divtc3, + define to "l" if LIBGCC_LONG_DOUBLE_SIZE == 128, + otherwise define to LIBGCC2_TF_CEXT. + * config/i386/linux64.h (LIBGCC2_HAS_TF_MODE): New define. + (LIBGCC_TF_CEXT): Ditto. + (TF_SIZE): Ditto. + 2007-06-14 Seongbae Park <seongbae.park@gmail.com> PR rtl-optimization/32339 - * df-scan.c (df_uses_record): Don't modify flags but just add to it for - df_ref_record. + * df-scan.c (df_uses_record): Don't modify flags but just add to + it for df_ref_record. 2007-06-14 Andrew Pinski <andrew_pinski@playstation.sony.com> @@ -20,7 +29,7 @@ 2007-06-14 Uros Bizjak <ubizjak@gmail.com> PR target/32268 - * config/i386/sfp-machine.c (CMPtype): New define. + * config/i386/sfp-machine.h (CMPtype): New define. (mach stubs): Use CMPtype instead of int as a return type. 2007-06-14 Uros Bizjak <ubizjak@gmail.com> diff --git a/gcc/config/i386/linux64.h b/gcc/config/i386/linux64.h index c6a7c88d883..8d68269ad89 100644 --- a/gcc/config/i386/linux64.h +++ b/gcc/config/i386/linux64.h @@ -1,5 +1,6 @@ /* Definitions for AMD x86-64 running Linux-based GNU systems with ELF format. - Copyright (C) 2001, 2002, 2004, 2005, 2006 Free Software Foundation, Inc. + Copyright (C) 2001, 2002, 2004, 2005, 2006, 2007 + Free Software Foundation, Inc. Contributed by Jan Hubicka <jh@suse.cz>, based on linux.h. This file is part of GCC. @@ -89,6 +90,12 @@ Boston, MA 02110-1301, USA. */ #define MULTILIB_DEFAULTS { "m32" } #endif +/* Put all *tf routines in libgcc. */ +#undef LIBGCC2_HAS_TF_MODE +#define LIBGCC2_HAS_TF_MODE TARGET_64BIT +#define LIBGCC2_TF_CEXT q +#define TF_SIZE 113 + #undef NEED_INDICATE_EXEC_STACK #define NEED_INDICATE_EXEC_STACK 1 diff --git a/gcc/libgcc2.c b/gcc/libgcc2.c index a026fff4a87..dd26a6e5ca0 100644 --- a/gcc/libgcc2.c +++ b/gcc/libgcc2.c @@ -1,7 +1,7 @@ /* More subroutines needed by GCC output code on some machines. */ /* Compile this one with gcc. */ /* Copyright (C) 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, - 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + 2000, 2001, 2002, 2003, 2004, 2005, 2007 Free Software Foundation, Inc. This file is part of GCC. @@ -1780,7 +1780,11 @@ NAME (TYPE x, int m) # define MTYPE TFtype # define CTYPE TCtype # define MODE tc -# define CEXT l +# if LIBGCC2_LONG_DOUBLE_TYPE_SIZE == 128 +# define CEXT l +# else +# define CEXT LIBGCC2_TF_CEXT +# endif # define NOTRUNC 1 #else # error |