diff options
author | David Daney <ddaney@caviumnetworks.com> | 2009-07-10 22:49:52 +0000 |
---|---|---|
committer | David Daney <daney@gcc.gnu.org> | 2009-07-10 22:49:52 +0000 |
commit | b96c5923d4deaf4d37b89b40ff5f6760d22b5ea3 (patch) | |
tree | e846e50d187b33820a2ae16a58b477f3b1568603 /gcc/config.gcc | |
parent | 5bde96d27e87d819a33236ad3a3ee718fe633d37 (diff) | |
download | gcc-b96c5923d4deaf4d37b89b40ff5f6760d22b5ea3.zip gcc-b96c5923d4deaf4d37b89b40ff5f6760d22b5ea3.tar.gz gcc-b96c5923d4deaf4d37b89b40ff5f6760d22b5ea3.tar.bz2 |
re PR target/39079 (MIPS: __builtin___clear_cache() broken on SMP ISA_HAS_SYNCI systems.)
2009-07-10 David Daney <ddaney@caviumnetworks.com>
PR target/39079
* testsuite/gcc.target/mips/mips.exp: Make -msynci a known option.
* gcc.target/mips/clear-cache-1.c (dg-options): Add -msynci.
2009-07-10 David Daney <ddaney@caviumnetworks.com>
PR target/39079
* config.gcc (supported_defaults): Add synci.
(with_synci): Add validation.
(all_defaults): Add synci.
* config/mips/mips.md (clear_cache): Use TARGET_SYNCI instead of
ISA_HAS_SYNCI.
(synci): Same.
* config/mips/mips.opt (msynci): New option.
* config/mips/mips.c (mips_override_options): Warn on use of
-msynci for targets that do now support it.
* gcc/config/mips/mips.h (OPTION_DEFAULT_SPECS): Add a default for
msynci.
* gcc/doc/invoke.texi (-msynci): Document the new option.
* doc/install.texi (--with-synci): Document the new option.
From-SVN: r149500
Diffstat (limited to 'gcc/config.gcc')
-rw-r--r-- | gcc/config.gcc | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/gcc/config.gcc b/gcc/config.gcc index fe345c1..98d7771 100644 --- a/gcc/config.gcc +++ b/gcc/config.gcc @@ -2902,7 +2902,7 @@ case "${target}" in ;; mips*-*-*) - supported_defaults="abi arch arch_32 arch_64 float tune tune_32 tune_64 divide llsc mips-plt" + supported_defaults="abi arch arch_32 arch_64 float tune tune_32 tune_64 divide llsc mips-plt synci" case ${with_float} in "" | soft | hard) @@ -2964,6 +2964,20 @@ case "${target}" in exit 1 ;; esac + + case ${with_synci} in + yes) + with_synci=synci + ;; + "" | no) + # No is the default. + with_synci=no-synci + ;; + *) + echo "Unknown synci type used in --with-synci" 1>&2 + exit 1 + ;; + esac ;; powerpc*-*-* | rs6000-*-*) @@ -3230,7 +3244,7 @@ case ${target} in esac t= -all_defaults="abi cpu cpu_32 cpu_64 arch arch_32 arch_64 tune tune_32 tune_64 schedule float mode fpu divide llsc mips-plt" +all_defaults="abi cpu cpu_32 cpu_64 arch arch_32 arch_64 tune tune_32 tune_64 schedule float mode fpu divide llsc mips-plt synci" for option in $all_defaults do eval "val=\$with_"`echo $option | sed s/-/_/g` |