aboutsummaryrefslogtreecommitdiff
path: root/gcc/config.gcc
diff options
context:
space:
mode:
authorEric Botcazou <ebotcazou@gcc.gnu.org>2013-08-09 09:13:32 +0000
committerEric Botcazou <ebotcazou@gcc.gnu.org>2013-08-09 09:13:32 +0000
commit1f65ae7afe4d8d6d53a8ffb561e0b66c6f07bc12 (patch)
treed1a9cb605f9623b55eb0aa9302465169641496d3 /gcc/config.gcc
parent6646d624d0901f1bd5a494b67205d00b63ff554b (diff)
downloadgcc-1f65ae7afe4d8d6d53a8ffb561e0b66c6f07bc12.zip
gcc-1f65ae7afe4d8d6d53a8ffb561e0b66c6f07bc12.tar.gz
gcc-1f65ae7afe4d8d6d53a8ffb561e0b66c6f07bc12.tar.bz2
configure.ac: Add GAS check for LEON instructions on SPARC.
* configure.ac: Add GAS check for LEON instructions on SPARC. * configure: Regenerate. * config.in: Likewise. * config.gcc (with_cpu): Remove sparc-leon*-* and deal with LEON in the sparc*-*-* block. * config/sparc/sparc.opt (LEON, LEON3): New masks. * config/sparc/sparc.h (ASM_CPU32_DEFAULT_SPEC): Set to AS_LEON_FLAG for LEON or LEON3. (ASM_CPU_SPEC): Pass AS_LEON_FLAG if -mcpu=leon or -mcpu=leon3. (AS_LEON_FLAG): New macro. * config/sparc/sparc.c (sparc_option_override): Set MASK_LEON for leon and MASK_LEON3 for leon3 and unset them if HAVE_AS_LEON is not defined. Deal with LEON and LEON3 for the memory model. * config/sparc/sync.m (atomic_compare_and_swap<mode>): Enable for LEON3 (atomic_compare_and_swap<mode>_1): Likewise. (*atomic_compare_and_swap<mode>_1): Likewise. From-SVN: r201622
Diffstat (limited to 'gcc/config.gcc')
-rw-r--r--gcc/config.gcc15
1 files changed, 11 insertions, 4 deletions
diff --git a/gcc/config.gcc b/gcc/config.gcc
index ef37e61..b2565fa 100644
--- a/gcc/config.gcc
+++ b/gcc/config.gcc
@@ -3036,11 +3036,18 @@ if test x$with_cpu = x ; then
with_cpu=8540
fi
;;
- sparc-leon*-*)
- with_cpu=v8;
- ;;
sparc*-*-*)
- with_cpu="`echo ${target} | sed 's/-.*$//'`"
+ case ${target} in
+ *-leon-*)
+ with_cpu=leon
+ ;;
+ *-leon[3-9]*)
+ with_cpu=leon3
+ ;;
+ *)
+ with_cpu="`echo ${target} | sed 's/-.*$//'`"
+ ;;
+ esac
;;
esac