c-cppbuiltin.c (cb_register_builtins): Define LP64 builtins for LP64 targets.

* c-cppbuiltin.c (cb_register_builtins): Define LP64 builtins for
        LP64 targets.

        * doc/cpp.texi (Common Predefined Macros): Document __LP64__ and
        _LP64.

        * config/ia64/ia64.h (TARGET_CPU_CPP_BUILTINS): Do not define
        _LP64 macros here.
        * config/pa/pa.h (TARGET_CPU_CPP_BUILTINS): Likewise.

        * config/alpha/netbsd.h (TARGET_OS_CPP_BUILTINS): Remove call to
        NETBSD_OS_CPP_BUILTINS_LP64.
        * config/sh/netbsd-elf.h (TARGET_OS_CPP_BUILTINS): Likewise.
        * config/sparc/netbsd-elf.h (TARGET_OS_CPP_BUILTINS): Likewise.

        * config/netbsd.h (NETBSD_OS_CPP_BUILTINS_LP64): Remove.

From-SVN: r64259
This commit is contained in:
Andreas Jaeger 2003-03-12 21:30:06 +01:00 committed by Andreas Jaeger
parent 5474eed5c6
commit 00530a212b
9 changed files with 38 additions and 26 deletions

View File

@ -1,3 +1,22 @@
2003-03-12 Andreas Jaeger <aj@suse.de>
* c-cppbuiltin.c (cb_register_builtins): Define LP64 builtins for
LP64 targets.
* doc/cpp.texi (Common Predefined Macros): Document __LP64__ and
_LP64.
* config/ia64/ia64.h (TARGET_CPU_CPP_BUILTINS): Do not define
_LP64 macros here.
* config/pa/pa.h (TARGET_CPU_CPP_BUILTINS): Likewise.
* config/alpha/netbsd.h (TARGET_OS_CPP_BUILTINS): Remove call to
NETBSD_OS_CPP_BUILTINS_LP64.
* config/sh/netbsd-elf.h (TARGET_OS_CPP_BUILTINS): Likewise.
* config/sparc/netbsd-elf.h (TARGET_OS_CPP_BUILTINS): Likewise.
* config/netbsd.h (NETBSD_OS_CPP_BUILTINS_LP64): Remove.
Wed Mar 12 19:04:39 CET 2003 Jan Hubicka <jh@suse.cz>
* i386.c (ix86_setup_incoming_varargs): Set stack_alignment_needed to 128.

View File

@ -339,6 +339,15 @@ cb_register_builtins (pfile)
/* Misc. */
builtin_define_with_value ("__VERSION__", version_string, 1);
/* Definitions for LP64 model. */
if (TYPE_PRECISION (long_integer_type_node) == 64
&& POINTER_SIZE == 64
&& TYPE_PRECISION (integer_type_node) == 32)
{
cpp_define (pfile, "_LP64");
cpp_define (pfile, "__LP64__");
}
/* Other target-independent built-ins determined by command-line
options. */
if (optimize_size)

View File

@ -1,6 +1,6 @@
/* Definitions of target machine for GNU compiler,
for Alpha NetBSD systems.
Copyright (C) 1998, 2002 Free Software Foundation, Inc.
Copyright (C) 1998, 2002, 2003 Free Software Foundation, Inc.
This file is part of GNU CC.
@ -25,7 +25,6 @@ Boston, MA 02111-1307, USA. */
#define TARGET_OS_CPP_BUILTINS() \
do { \
NETBSD_OS_CPP_BUILTINS_ELF(); \
NETBSD_OS_CPP_BUILTINS_LP64(); \
} while (0)

View File

@ -1,5 +1,5 @@
/* Definitions of target machine GNU compiler. IA-64 version.
Copyright (C) 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
Copyright (C) 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
Contributed by James E. Wilson <wilson@cygnus.com> and
David Mosberger <davidm@hpl.hp.com>.
@ -40,11 +40,6 @@ do { \
builtin_define("__ia64__"); \
builtin_define("__itanium__"); \
builtin_define("__ELF__"); \
if (!TARGET_ILP32) \
{ \
builtin_define("_LP64"); \
builtin_define("__LP64__"); \
} \
if (TARGET_BIG_ENDIAN) \
builtin_define("__BIG_ENDIAN__"); \
} while (0)

View File

@ -29,14 +29,6 @@ Boston, MA 02111-1307, USA. */
} \
while (0)
/* TARGET_OS_CPP_BUILTINS() common to all LP64 NetBSD targets. */
#define NETBSD_OS_CPP_BUILTINS_LP64() \
do \
{ \
builtin_define ("_LP64"); \
} \
while (0)
/* CPP_SPEC parts common to all NetBSD targets. */
#define NETBSD_CPP_SPEC \
"%{posix:-D_POSIX_SOURCE} \

View File

@ -356,11 +356,6 @@ do { \
builtin_assert("machine=hppa"); \
builtin_define("__hppa"); \
builtin_define("__hppa__"); \
if (TARGET_64BIT) \
{ \
builtin_define("_LP64"); \
builtin_define("__LP64__"); \
} \
if (TARGET_PA_20) \
builtin_define("_PA_RISC2_0"); \
else if (TARGET_PA_11) \

View File

@ -1,5 +1,5 @@
/* Definitions for SH running NetBSD using ELF
Copyright (C) 2002 Free Software Foundation, Inc.
Copyright (C) 2002, 2003 Free Software Foundation, Inc.
Contributed by Wasabi Systems, Inc.
This file is part of GNU CC.
@ -52,8 +52,6 @@ Boston, MA 02111-1307, USA. */
do \
{ \
NETBSD_OS_CPP_BUILTINS_ELF(); \
if (TARGET_SHMEDIA64) \
NETBSD_OS_CPP_BUILTINS_LP64(); \
builtin_define ("__NO_LEADING_UNDERSCORES__"); \
} \
while (0)

View File

@ -1,6 +1,6 @@
/* Definitions of target machine for GNU compiler, for ELF on NetBSD/sparc
and NetBSD/sparc64.
Copyright (C) 2002 Free Software Foundation, Inc.
Copyright (C) 2002, 2003 Free Software Foundation, Inc.
Contributed by Matthew Green (mrg@eterna.com.au).
This file is part of GNU CC.
@ -26,7 +26,6 @@ Boston, MA 02111-1307, USA. */
NETBSD_OS_CPP_BUILTINS_ELF(); \
if (TARGET_ARCH64) \
{ \
NETBSD_OS_CPP_BUILTINS_LP64(); \
builtin_define ("__sparc64__"); \
builtin_define ("__sparc_v9__"); \
} \

View File

@ -2031,6 +2031,12 @@ This macro is defined, with value 1, if (and only if) the NeXT runtime
(as in @option{-fnext-runtime}) is in use for Objective-C. If the GNU
runtime is used, this macro is not defined, so that you can use this
macro to determine which runtime (NeXT or GNU) is being used.
@item __LP64__
@item _LP64
These macros are defined, with value 1, if (and only if) the compilation
is for a target where @code{long int} and pointer both use 64-bits and
@code{int} uses 32-bit.
@end table
@node System-specific Predefined Macros