Further de-specification of alpha/
Neil Booth
neil@daikokuya.demon.co.uk
Tue May 14 13:17:00 GMT 2002
Tested for expected behaviour on alpha-foo-linux cross.
Neil.
config/alpha:
* alpha.h (TARGET_CPU_CPP_BUILTINS): Define __IEEE_FP
and __IEEE_FP_INEXACT as appropriate.
(CPLUSPLUS_CPP_SPEC): Don't define __cplusplus.
(CPP_SPEC): Remove ieee defines.
* freebsd.h, netbsd.h: Remove ieee defines.
Index: alpha.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/alpha/alpha.h,v
retrieving revision 1.160
diff -u -p -r1.160 alpha.h
--- alpha.h 13 May 2002 05:57:38 -0000 1.160
+++ alpha.h 14 May 2002 19:37:06 -0000
@@ -63,14 +63,16 @@ Boston, MA 02111-1307, USA. */
builtin_define ("__alpha_ev4__"); \
builtin_assert ("cpu=ev4"); \
} \
- } while (0)
+ if (TARGET_IEEE || TARGET_IEEE_WITH_INEXACT) \
+ builtin_define ("__IEEE_FP"); \
+ if (TARGET_IEEE_WITH_INEXACT) \
+ builtin_define ("__IEEE_FP_INEXACT"); \
+} while (0)
/* For C++ we need to ensure that __LANGUAGE_C_PLUS_PLUS is defined independent
of the source file extension. */
-#define CPLUSPLUS_CPP_SPEC "\
--D__LANGUAGE_C_PLUS_PLUS__ -D__LANGUAGE_C_PLUS_PLUS -D__cplusplus \
-%(cpp) \
-"
+#define CPLUSPLUS_CPP_SPEC "-D__LANGUAGE_C_PLUS_PLUS__\
+ -D__LANGUAGE_C_PLUS_PLUS %(cpp)"
/* Write out the correct language type definition for the header files.
Unless we have assembler language, write out the symbols for C. */
@@ -78,9 +80,7 @@ Boston, MA 02111-1307, USA. */
%{!undef:\
%{.S:-D__LANGUAGE_ASSEMBLY__ -D__LANGUAGE_ASSEMBLY %{!ansi:-DLANGUAGE_ASSEMBLY }}\
%{.m:-D__LANGUAGE_OBJECTIVE_C__ -D__LANGUAGE_OBJECTIVE_C }\
-%{!.S:%{!.cc:%{!.cxx:%{!.cpp:%{!.cp:%{!.c++:%{!.C:%{!.m:-D__LANGUAGE_C__ -D__LANGUAGE_C %{!ansi:-DLANGUAGE_C }}}}}}}}}\
-%{mieee:-D_IEEE_FP }\
-%{mieee-with-inexact:-D_IEEE_FP -D_IEEE_FP_INEXACT }}\
+%{!.S:%{!.cc:%{!.cxx:%{!.cpp:%{!.cp:%{!.c++:%{!.C:%{!.m:-D__LANGUAGE_C__ -D__LANGUAGE_C %{!ansi:-DLANGUAGE_C }}}}}}}}}}\
%(cpp_subtarget)"
#ifndef CPP_SUBTARGET_SPEC
Index: freebsd.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/alpha/freebsd.h,v
retrieving revision 1.10
diff -u -p -r1.10 freebsd.h
--- freebsd.h 7 May 2002 21:07:16 -0000 1.10
+++ freebsd.h 14 May 2002 19:37:06 -0000
@@ -27,9 +27,7 @@ Boston, MA 02111-1307, USA. */
#undef CPP_SPEC
#define CPP_SPEC "%(cpp_cpu) %(cpp_subtarget) \
%{fPIC:-D__PIC__ -D__pic__} %{fpic:-D__PIC__ -D__pic__} \
- %{posix:-D_POSIX_SOURCE} \
- %{mieee:-D_IEEE_FP} \
- %{mieee-with-inexact:-D_IEEE_FP -D_IEEE_FP_INEXACT}"
+ %{posix:-D_POSIX_SOURCE}"
#define LINK_SPEC "%{G*} %{relax:-relax} \
%{p:%e`-p' not supported; use `-pg' and gprof(1)} \
Index: netbsd.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/alpha/netbsd.h,v
retrieving revision 1.11
diff -u -p -r1.11 netbsd.h
--- netbsd.h 13 May 2002 05:57:38 -0000 1.11
+++ netbsd.h 14 May 2002 19:37:06 -0000
@@ -39,11 +39,7 @@ Boston, MA 02111-1307, USA. */
the standard NetBSD specs, we also handle Alpha FP mode indications. */
#undef CPP_SPEC
-#define CPP_SPEC \
- "%{mieee:-D_IEEE_FP} \
- %{mieee-with-inexact:-D_IEEE_FP -D_IEEE_FP_INEXACT} \
- %{posix:-D_POSIX_SOURCE} \
- %(cpp_cpu) %(cpp_subtarget)"
+#define CPP_SPEC "%{posix:-D_POSIX_SOURCE} %(cpp_cpu) %(cpp_subtarget)"
/* Provide a LINK_SPEC appropriate for a NetBSD/alpha ELF target.
This is a copy of LINK_SPEC from <netbsd-elf.h> tweaked for
More information about the Gcc-patches
mailing list