aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/config/arc/arc.h18
2 files changed, 17 insertions, 7 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 820122e..bf23d0f 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,11 @@
2002-05-16 Neil Booth <neil@daikokuya.demon.co.uk>
+ * config/arc/arc.h (CPP_PREDEFINES): Remove.
+ (CPP_SPEC): Update.
+ (TARGET_CPU_CPP_BUILTINS): New.
+
+2002-05-16 Neil Booth <neil@daikokuya.demon.co.uk>
+
* cpphash.h (cpp_macro): Move here, and make expansion a union.
* cppmacro.c (cpp_macro): Remove.
(enter_macro_context, replace_args, warn_of_redefinition,
diff --git a/gcc/config/arc/arc.h b/gcc/config/arc/arc.h
index 651d81e..bb04f2c 100644
--- a/gcc/config/arc/arc.h
+++ b/gcc/config/arc/arc.h
@@ -43,13 +43,17 @@ Boston, MA 02111-1307, USA. */
#define TARGET_VERSION fprintf (stderr, " (arc)")
/* Names to predefine in the preprocessor for this target machine. */
-#define CPP_PREDEFINES "-Acpu=arc -Amachine=arc -D__arc__"
-
-/* Additional flags for the preprocessor. */
-#define CPP_SPEC "\
-%{!mcpu=*:-D__base__} %{mcpu=base:-D__base__} \
-%{EB:-D__big_endian__} \
-"
+#define TARGET_CPU_CPP_BUILTINS() \
+ do \
+ { \
+ builtin_define ("__arc__"); \
+ if (TARGET_BIG_ENDIAN) \
+ builtin_define ("__big_endian__"); \
+ if (arc_cpu_type == 0) \
+ builtin_define ("__base__"); \
+ builtin_assert ("cpu=arc"); \
+ builtin_assert ("machine=arc"); \
+ } while (0)
/* Pass -mmangle-cpu if we get -mcpu=*.
Doing it this way lets one have it on as default with -mcpu=*,