Commit 5cc73f91 by Aldy Hernandez Committed by Aldy Hernandez

rs6000.c (rs6000_parse_abi_options): SPE and AltiVec abi cannot co-exist.

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.

From-SVN: r79074
parent a61bf177
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> 2004-03-07 Jan Hubicka <jh@suse.cz>
* except.c (emit_to_new_bb_before): Break fallthru edges. * except.c (emit_to_new_bb_before): Break fallthru edges.
......
/* Core target definitions for GNU compiler /* Core target definitions for GNU compiler
for PowerPC embedded targeted systems with SPE support. 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). Contributed by Aldy Hernandez (aldyh@redhat.com).
This file is part of GCC. This file is part of GCC.
...@@ -30,7 +30,7 @@ ...@@ -30,7 +30,7 @@
#define SUBSUBTARGET_OVERRIDE_OPTIONS \ #define SUBSUBTARGET_OVERRIDE_OPTIONS \
if (rs6000_select[1].string == NULL) \ if (rs6000_select[1].string == NULL) \
rs6000_cpu = PROCESSOR_PPC8540; \ rs6000_cpu = PROCESSOR_PPC8540; \
if (rs6000_abi_string == NULL || strstr (rs6000_abi_string, "spe") == NULL) \ if (rs6000_abi_string == NULL) \
rs6000_spe_abi = 1; \ rs6000_spe_abi = 1; \
if (rs6000_float_gprs_string == NULL) \ if (rs6000_float_gprs_string == NULL) \
rs6000_float_gprs = 1; \ rs6000_float_gprs = 1; \
......
...@@ -1044,12 +1044,16 @@ rs6000_parse_abi_options (void) ...@@ -1044,12 +1044,16 @@ rs6000_parse_abi_options (void)
if (rs6000_abi_string == 0) if (rs6000_abi_string == 0)
return; return;
else if (! strcmp (rs6000_abi_string, "altivec")) 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")) else if (! strcmp (rs6000_abi_string, "no-altivec"))
rs6000_altivec_abi = 0; rs6000_altivec_abi = 0;
else if (! strcmp (rs6000_abi_string, "spe")) else if (! strcmp (rs6000_abi_string, "spe"))
{ {
rs6000_spe_abi = 1; rs6000_spe_abi = 1;
rs6000_altivec_abi = 0;
if (!TARGET_SPE_ABI) if (!TARGET_SPE_ABI)
error ("not configured for ABI: '%s'", rs6000_abi_string); error ("not configured for ABI: '%s'", rs6000_abi_string);
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment