diff options
| -rw-r--r-- | gcc/ChangeLog | 8 | ||||
| -rw-r--r-- | gcc/config/rs6000/eabispe.h | 4 | ||||
| -rw-r--r-- | gcc/config/rs6000/rs6000.c | 6 |
3 files changed, 15 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 8c89c33..fbd035f 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,11 @@ + +2004-03-07 Aldy Hernandez <aldyh@redhat.com> + + * config/rs6000/rs6000.c (rs6000_parse_abi_options): SPE and + AltiVec abi cannot co-exist. + + * config/rs6000/eabispe.h (SUBSUBTARGET_OVERRIDE_OPTIONS): Same. + 2004-03-07 Jan Hubicka <jh@suse.cz> * except.c (emit_to_new_bb_before): Break fallthru edges. diff --git a/gcc/config/rs6000/eabispe.h b/gcc/config/rs6000/eabispe.h index ed56aeb..1551dc1 100644 --- a/gcc/config/rs6000/eabispe.h +++ b/gcc/config/rs6000/eabispe.h @@ -1,6 +1,6 @@ /* Core target definitions for GNU compiler for PowerPC embedded targeted systems with SPE support. - Copyright (C) 2002, 2003 Free Software Foundation, Inc. + Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc. Contributed by Aldy Hernandez (aldyh@redhat.com). This file is part of GCC. @@ -30,7 +30,7 @@ #define SUBSUBTARGET_OVERRIDE_OPTIONS \ if (rs6000_select[1].string == NULL) \ rs6000_cpu = PROCESSOR_PPC8540; \ - if (rs6000_abi_string == NULL || strstr (rs6000_abi_string, "spe") == NULL) \ + if (rs6000_abi_string == NULL) \ rs6000_spe_abi = 1; \ if (rs6000_float_gprs_string == NULL) \ rs6000_float_gprs = 1; \ diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c index b9d9ff4..569ad7d 100644 --- a/gcc/config/rs6000/rs6000.c +++ b/gcc/config/rs6000/rs6000.c @@ -1044,12 +1044,16 @@ rs6000_parse_abi_options (void) if (rs6000_abi_string == 0) return; else if (! strcmp (rs6000_abi_string, "altivec")) - rs6000_altivec_abi = 1; + { + rs6000_altivec_abi = 1; + rs6000_spe_abi = 0; + } else if (! strcmp (rs6000_abi_string, "no-altivec")) rs6000_altivec_abi = 0; else if (! strcmp (rs6000_abi_string, "spe")) { rs6000_spe_abi = 1; + rs6000_altivec_abi = 0; if (!TARGET_SPE_ABI) error ("not configured for ABI: '%s'", rs6000_abi_string); } |
