aix43.h (SUBTARGET_OVERRIDE_OPTIONS): -msoft-float and -mlong-double-128 are incompatible.

* config/rs6000/aix43.h (SUBTARGET_OVERRIDE_OPTIONS): -msoft-float
        and -mlong-double-128 are incompatible.
        * config/rs6000/aix52.h (SUBTARGET_OVERRIDE_OPTIONS): Same.
        * config/rs6000/t-aix43 (LIB2FUNCS_EXTRA): Add ppc64-fp.c.
        (TARGET_LIBGCC2_CFLAGS): Define.
        * config/rs6000/t-aix52 (LIB2FUNCS_EXTRA): Same.
        (TARGET_LIBGCC2_CFLAGS): Same.
        * config/rs6000/ppc64-fp.c: Compile for 64-bit AIX.

From-SVN: r110333
This commit is contained in:
David Edelsohn 2006-01-28 19:49:43 +00:00 committed by David Edelsohn
parent 7ca383e679
commit 3d538baeb5
6 changed files with 32 additions and 5 deletions

View File

@ -1,3 +1,14 @@
2006-01-28 David Edelsohn <edelsohn@gnu.org>
* config/rs6000/aix43.h (SUBTARGET_OVERRIDE_OPTIONS): -msoft-float
and -mlong-double-128 are incompatible.
* config/rs6000/aix52.h (SUBTARGET_OVERRIDE_OPTIONS): Same.
* config/rs6000/t-aix43 (LIB2FUNCS_EXTRA): Add ppc64-fp.c.
(TARGET_LIBGCC2_CFLAGS): Define.
* config/rs6000/t-aix52 (LIB2FUNCS_EXTRA): Same.
(TARGET_LIBGCC2_CFLAGS): Same.
* config/rs6000/ppc64-fp.c: Compile for 64-bit AIX.
2006-01-28 Kazu Hirata <kazu@codesourcery.com>
PR c/19606.

View File

@ -1,6 +1,6 @@
/* Definitions of target machine for GNU compiler,
for IBM RS/6000 POWER running AIX version 4.3.
Copyright (C) 1998, 1999, 2000, 2001, 2003, 2004, 2005
Copyright (C) 1998, 1999, 2000, 2001, 2003, 2004, 2005, 2006
Free Software Foundation, Inc.
Contributed by David Edelsohn (edelsohn@gnu.org).
@ -43,6 +43,12 @@ do { \
target_flags |= MASK_POWERPC64; \
warning (0, "-maix64 requires PowerPC64 architecture remain enabled"); \
} \
if (TARGET_SOFT_FLOAT && TARGET_LONG_DOUBLE_128) \
{ \
rs6000_long_double_type_size = 64; \
if (rs6000_explicit_options.long_double) \
warning (0, "soft-float and long-double-128 are incompatible"); \
} \
if (TARGET_POWERPC64 && ! TARGET_64BIT) \
{ \
error ("-maix64 required: 64-bit computation with 32-bit addressing not yet supported"); \

View File

@ -1,6 +1,6 @@
/* Definitions of target machine for GNU compiler,
for IBM RS/6000 POWER running AIX V5.2.
Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
Copyright (C) 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
Contributed by David Edelsohn (edelsohn@gnu.org).
This file is part of GCC.
@ -42,6 +42,12 @@ do { \
target_flags |= MASK_POWERPC64; \
warning (0, "-maix64 requires PowerPC64 architecture remain enabled"); \
} \
if (TARGET_SOFT_FLOAT && TARGET_LONG_DOUBLE_128) \
{ \
rs6000_long_double_type_size = 64; \
if (rs6000_explicit_options.long_double) \
warning (0, "soft-float and long-double-128 are incompatible"); \
} \
if (TARGET_POWERPC64 && ! TARGET_64BIT) \
{ \
error ("-maix64 required: 64-bit computation with 32-bit addressing not yet supported"); \

View File

@ -30,7 +30,7 @@ along with GCC; see the file COPYING. If not, write to the Free
Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA
02110-1301, USA. */
#if defined(__powerpc64__)
#if defined(__powerpc64__) || defined (__64BIT__)
#define TMODES
#include "config/fp-bit.h"

View File

@ -67,7 +67,9 @@ SHLIB_MAPFILES = $(srcdir)/libgcc-std.ver $(srcdir)/config/rs6000/libgcc-ppc64.v
SHLIB_NM_FLAGS = -Bpg -X32_64
# GCC 128-bit long double support routines.
LIB2FUNCS_EXTRA = $(srcdir)/config/rs6000/darwin-ldouble.c
LIB2FUNCS_EXTRA = $(srcdir)/config/rs6000/ppc64-fp.c \
$(srcdir)/config/rs6000/darwin-ldouble.c
TARGET_LIBGCC2_CFLAGS = -mlong-double-128
# Either 32-bit and 64-bit objects in archives.
AR_FLAGS_FOR_TARGET = -X32_64

View File

@ -48,7 +48,9 @@ SHLIB_MAPFILES = $(srcdir)/libgcc-std.ver $(srcdir)/config/rs6000/libgcc-ppc64.v
SHLIB_NM_FLAGS = -Bpg -X32_64
# GCC 128-bit long double support routines.
LIB2FUNCS_EXTRA = $(srcdir)/config/rs6000/darwin-ldouble.c
LIB2FUNCS_EXTRA = $(srcdir)/config/rs6000/ppc64-fp.c \
$(srcdir)/config/rs6000/darwin-ldouble.c
TARGET_LIBGCC2_CFLAGS = -mlong-double-128
# Either 32-bit and 64-bit objects in archives.
AR_FLAGS_FOR_TARGET = -X32_64