This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
New CPP builtins for i370/
- From: Neil Booth <neil at daikokuya dot demon dot co dot uk>
- To: gcc-patches at gcc dot gnu dot org
- Date: Sun, 2 Jun 2002 21:59:16 +0100
- Subject: New CPP builtins for i370/
This also doesn't have a maintainer.
OK to apply? Tested on i370-ibm-openedition.
Neil.
config/i370:
* i370.h (TARGET_CPU_CPP_BUILTINS): Use.
* linux.h: Use TARGET_OS_CPP_BUILTINS rather than CPP_PREDEFINES.
* mvs.h: Similarly.
* oe.h: Similarly.
Index: i370.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/i370/i370.h,v
retrieving revision 1.44
diff -u -p -r1.44 i370.h
--- i370.h 19 May 2002 05:23:08 -0000 1.44
+++ i370.h 2 Jun 2002 20:38:58 -0000
@@ -24,6 +24,18 @@ Boston, MA 02111-1307, USA. */
#ifndef GCC_I370_H
#define GCC_I370_H
+
+/* Target CPU builtins. */ \
+#define TARGET_CPU_CPP_BUILTINS() \
+ do \
+ { \
+ builtin_define_std ("GCC"); \
+ builtin_define_std ("gcc"); \
+ builtin_assert ("machine=i370"); \
+ builtin_assert ("cpu=i370"); \
+ } \
+ while (0)
+
/* Run-time compilation parameters selecting different hardware subsets. */
extern int target_flags;
Index: linux.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/i370/linux.h,v
retrieving revision 1.8
diff -u -p -r1.8 linux.h
--- linux.h 15 Apr 2002 20:35:10 -0000 1.8
+++ linux.h 2 Jun 2002 20:38:58 -0000
@@ -32,10 +32,15 @@ Boston, MA 02111-1307, USA. */
/* TODO: convert include to ${tm_file} list in config.gcc. */
#include "i370/i370.h"
-/* Names to predefine in the preprocessor for this target machine. */
-
-#undef CPP_PREDEFINES
-#define CPP_PREDEFINES "-DGCC -Dgcc -D__ELF__ -Dunix -D__gnu_linux__ -Dlinux -Asystem=posix -Acpu=i370 -Amachine=i370"
+/* Target OS preprocessor built-ins. */ \
+#define TARGET_OS_CPP_BUILTINS() \
+ do { \
+ builtin_define_std ("unix"); \
+ builtin_define_std ("linux"); \
+ builtin_define ("__gnu_linux__"); \
+ builtin_define ("__ELF__"); \
+ builtin_assert ("system=posix"); \
+ } while (0)
/* Options for this target machine. */
Index: mvs.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/i370/mvs.h,v
retrieving revision 1.3
diff -u -p -r1.3 mvs.h
--- mvs.h 2 Nov 2000 23:29:09 -0000 1.3
+++ mvs.h 2 Jun 2002 20:38:58 -0000
@@ -32,12 +32,19 @@ Boston, MA 02111-1307, USA. */
#define CPP_SPEC "-trigraphs"
-/* Names to predefine in the preprocessor for this target machine. */
+/* Target OS preprocessor built-ins. */ \
+#define TARGET_OS_CPP_BUILTINS() \
+ do { \
+ builtin_define_std ("MVS"); \
+ builtin_define_std ("mvs"); \
+ MAYBE_LE370_MACROS(); \
+ builtin_assert ("system=mvs"); \
+ } while (0)
#if defined(LE370)
-#define CPP_PREDEFINES "-DGCC -Dgcc -DMVS -Dmvs -DLE370 -Asystem=mvs -Acpu=i370 -Amachine=i370"
+# define MAYBE_LE370_MACROS() do {builtin_define_std ("LE370");} while (0)
#else
-#define CPP_PREDEFINES "-DGCC -Dgcc -DMVS -Dmvs -Asystem=mvs -Acpu=i370 -Amachine=i370"
+# define MAYBE_LE370_MACROS()
#endif
/* Include system common definitions */
Index: oe.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/i370/oe.h,v
retrieving revision 1.4
diff -u -p -r1.4 oe.h
--- oe.h 2 Nov 2000 23:29:09 -0000 1.4
+++ oe.h 2 Jun 2002 20:38:58 -0000
@@ -39,9 +39,16 @@ Boston, MA 02111-1307, USA. */
#define LIBGCC_SPEC ""
#define STARTFILE_SPEC "/usr/local/lib/gccmain.o"
-/* Names to predefine in the preprocessor for this target machine. */
-
-#define CPP_PREDEFINES "-DGCC -Dgcc -DUNIX -Dunix -Dopenedition -D__i370__ -Asystem=openedition -Asystem=unix -Acpu=i370 -Amachine=i370"
+/* Target OS preprocessor built-ins. */ \
+#define TARGET_OS_CPP_BUILTINS() \
+ do { \
+ builtin_define_std ("unix"); \
+ builtin_define_std ("UNIX"); \
+ builtin_define_std ("openedition"); \
+ builtin_define ("__i370__"); \
+ builtin_assert ("system=openedition"); \
+ builtin_assert ("system=unix"); \
+ } while (0)
/* Include system common definitions */