/home/neil/diffs/mcore.log
authorNeil Booth <neil@daikokuya.co.uk>
Wed, 12 Mar 2003 11:46:56 +0000 (11:46 +0000)
committerNeil Booth <neil@gcc.gnu.org>
Wed, 12 Mar 2003 11:46:56 +0000 (11:46 +0000)
From-SVN: r64240

gcc/ChangeLog
gcc/config/mcore/mcore-elf.h
gcc/config/mcore/mcore-pe.h
gcc/config/mcore/mcore.h

index 7dc4ec5a490ee39fc49e648721ded8e23cd5f8e9..ccdfe4dd014bd8cfc345c7efd20898ac9a691b04 100644 (file)
@@ -1,3 +1,11 @@
+2003-03-12  Neil Booth  <neil@daikokuya.co.uk>
+
+       * config/mcore/mcore-elf.h (CPP_PREDEFINES): Replace with
+       TARGET_OS_CPP_BUILTINS.
+       * config/mcore/mcore-pe.h: Similarly.
+       * config/mcore/mcore.h: Replace CPP_PREDEFINES and part of
+       CPP_SPEC with TARGET_CPU_CPP_BUILTINS.
+
 2003-03-12  Eric Botcazou  <ebotcazou@libertysurf.fr>
 
        PR c/9928
index b4c7ae63d4beb7b542585690d510fb4ed58dd18f..b8378591706353f995406c87c540cdecfd8f59f9 100644 (file)
@@ -25,7 +25,12 @@ Boston, MA 02111-1307, USA.  */
 /* Run-time Target Specification.  */
 #define TARGET_VERSION fputs (" (Motorola MCORE/elf)", stderr)
 
-#define SUBTARGET_CPP_PREDEFINES " -D__ELF__"
+#define TARGET_OS_CPP_BUILTINS()                               \
+  do                                                           \
+    {                                                          \
+      builtin_define ("__ELF__");                              \
+    }                                                          \
+  while (0)
 
 /* Use DWARF2 debugging info.  */
 #define DWARF2_DEBUGGING_INFO 1
index a6ea4d4282c42f2a5bf1e68f9f016f44fdf34292..96381c97e7bb011454f314e5e0e3dcd233256fdb 100644 (file)
@@ -22,7 +22,12 @@ Boston, MA 02111-1307, USA.  */
 /* Run-time Target Specification.  */
 #define TARGET_VERSION fputs (" (MCORE/pe)", stderr)
 
-#define SUBTARGET_CPP_PREDEFINES " -D__pe__"
+#define TARGET_OS_CPP_BUILTINS()                               \
+  do                                                           \
+    {                                                          \
+      builtin_define ("__pe__");                               \
+    }                                                          \
+  while (0)
 
 /* The MCore ABI says that bitfields are unsigned by default.  */
 /* The EPOC C++ environment does not support exceptions.  */
index 6d2078c966cd5aaca825169e0f9db7ed6f015432..d570abf4e4e9b8e3db02d25f4a6572f9152d6c61 100644 (file)
@@ -46,28 +46,28 @@ Boston, MA 02111-1307, USA.  */
    predefined attributes later on.  This can be solved by using one attribute,
    say __declspec__, and passing args to it.  The problem with that approach
    is that args are not accumulated: each new appearance would clobber any
-   existing args.  XXX- FIXME the definition below relies upon string
-   concatenation, which is non-portable.  */
-#define CPP_PREDEFINES \
-  "-D__mcore__ -D__MCORE__=1 -D__declspec(x)=__attribute__((x))" SUBTARGET_CPP_PREDEFINES
-
-/* If -m4align is ever re-enabled then uncomment this line as well:
-   #define CPP_SPEC "%{!m4align:-D__MCORE_ALIGN_8__} %{m4align:-D__MCORE__ALIGN_4__}" */
-
-#undef  CPP_SPEC
-#define CPP_SPEC "                                                     \
-%{mbig-endian:                                                         \
-  %{mlittle-endian:%echoose either big or little endian, not both}     \
-  -D__MCOREBE__}                                                       \
-%{m210:                                                                        \
-  %{m340:%echoose either m340 or m210 not both}                                \
-  %{mlittle-endian:%ethe m210 does not have little endian support}     \
-  -D__M210__}                                                          \
-%{!mbig-endian: -D__MCORELE__}                                         \
-%{!m210: -D__M340__}                                                   \
-"
+   existing args.  */
+#define TARGET_CPU_CPP_BUILTINS()                                        \
+  do                                                                     \
+    {                                                                    \
+      builtin_define ("__mcore__");                                      \
+      builtin_define ("__MCORE__");                                      \
+      builtin_define ("__declspec(x)=__attribute__((x))");               \
+      if (TARGET_LITTLE_END)                                             \
+        builtin_define ("__MCORELE__");                                          \
+      else                                                               \
+        builtin_define ("__MCOREBE__");                                          \
+      if (TARGET_M340)                                                   \
+        builtin_define ("__M340__");                                     \
+      else                                                               \
+        builtin_define ("__M210__");                                     \
+    }                                                                    \
+  while (0)
+
 /* If -m4align is ever re-enabled then add this line to the definition of CPP_SPEC
    %{!m4align:-D__MCORE_ALIGN_8__} %{m4align:-D__MCORE__ALIGN_4__} */
+#undef CPP_SPEC
+#define CPP_SPEC "%{m210:%{mlittle-endian:%ethe m210 does not have little endian support}}";
 
 /* We don't have a -lg library, so don't put it in the list.  */
 #undef LIB_SPEC