From b46d8adfb834e926ea7cbbad0d20b032fff868c3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vincent=20Rivi=C3=A8re?= Date: Fri, 28 Jan 2011 19:46:10 +0100 Subject: [PATCH] Import gcc-4.5.2-mint-20110128.patch On the -m68020-60 configuration, floats are now returned into d0/d1 instead of fp0. The ABI is now compatible between all the configurations, and the libraries can be mixed. Added the nonstandard define __M68881__ whenever __HAVE_68881__ is defined. This means a 680x0 FPU (not ColdFire) is available and should be used. This new define is for the compatibility with older sources. New sources should only test __HAVE_68881__. --- gcc/config/m68k/m68k.h | 5 ++++- gcc/config/m68k/mint.h | 35 +---------------------------------- gcc/version.c | 2 +- 3 files changed, 6 insertions(+), 36 deletions(-) diff --git a/gcc/config/m68k/m68k.h b/gcc/config/m68k/m68k.h index 5787e8aa1fdd..f682b60624dc 100644 --- a/gcc/config/m68k/m68k.h +++ b/gcc/config/m68k/m68k.h @@ -138,7 +138,10 @@ along with GCC; see the file COPYING3. If not see } \ \ if (TARGET_68881) \ - builtin_define ("__HAVE_68881__"); \ + { \ + builtin_define ("__HAVE_68881__"); \ + builtin_define ("__M68881__"); /* Non-standard */ \ + } \ \ if (TARGET_COLDFIRE) \ { \ diff --git a/gcc/config/m68k/mint.h b/gcc/config/m68k/mint.h index e8a36a80c288..aacfbe6015fc 100644 --- a/gcc/config/m68k/mint.h +++ b/gcc/config/m68k/mint.h @@ -1,6 +1,6 @@ /* Definitions of target machine for GNU compiler. Atari ST TOS/MiNT. - Copyright (C) 1994, 1995, 2007, 2008, 2009, 2010 + Copyright (C) 1994, 1995, 2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc. This file is part of GCC. @@ -72,7 +72,6 @@ along with GCC; see the file COPYING3. If not see "%{m68020-40:-D__M68020__} " \ "%{m68020-60:-D__M68020__} " \ "%{!m680*:%{!mc680*:-D__M68000__}} " \ - "%{m68881:-D__M68881__} " \ "%{mshort:-D__MSHORT__}" #define STARTFILE_SPEC "%{pg:g}crt0.o%s" @@ -84,38 +83,6 @@ along with GCC; see the file COPYING3. If not see /* The -g option generates stabs debug information. */ #define DBX_DEBUGGING_INFO 1 -/* Define how to generate (in the callee) the output value of a - function and how to find (in the caller) the value returned by a - function. VALTYPE is the data type of the value (as a tree). If - the precise function being called is known, FUNC is its - FUNCTION_DECL; otherwise, FUNC is 0. */ - -#define FUNCTION_VALUEX(MODE) \ - gen_rtx_REG ((MODE), (TARGET_68881 && FLOAT_MODE_P (MODE) ? 16 : 0)) - -#undef FUNCTION_VALUE -#define FUNCTION_VALUE(VALTYPE, FUNC) \ - FUNCTION_VALUEX (TYPE_MODE (VALTYPE)) - -/* Define how to find the value returned by a library function - assuming the value has mode MODE. */ - -#undef LIBCALL_VALUE -#define LIBCALL_VALUE(MODE) \ - FUNCTION_VALUEX (MODE) - -/* 1 if N is a possible register number for a function value. */ - -#undef FUNCTION_VALUE_REGNO_P -#define FUNCTION_VALUE_REGNO_P(N) \ - ((N) == D0_REG || (TARGET_68881 && (N) == FP0_REG)) - -/* Define this to be true when FUNCTION_VALUE_REGNO_P is true for - more than one register. */ - -#undef NEEDS_UNTYPED_CALL -#define NEEDS_UNTYPED_CALL (TARGET_68881) - /* This is the assembler directive to equate two values. */ #undef SET_ASM_OP #define SET_ASM_OP "\t.set\t" diff --git a/gcc/version.c b/gcc/version.c index 1d47cc3ad8fa..c0cdc1c4ebe4 100644 --- a/gcc/version.c +++ b/gcc/version.c @@ -32,5 +32,5 @@ const char bug_report_url[] = BUGURL; BASEVER, DATESTAMP, DEVPHASE, and REVISION are defined by the Makefile. */ -const char version_string[] = BASEVER DATESTAMP DEVPHASE REVISION " (MiNT 20110110)"; +const char version_string[] = BASEVER DATESTAMP DEVPHASE REVISION " (MiNT 20110128)"; const char pkgversion_string[] = PKGVERSION;