diff options
author | Eric Botcazou <ebotcazou@adacore.com> | 2012-04-09 09:24:06 +0000 |
---|---|---|
committer | Eric Botcazou <ebotcazou@gcc.gnu.org> | 2012-04-09 09:24:06 +0000 |
commit | 99a1b0844ad0b3dc179f2a11a684a81caea6e63b (patch) | |
tree | 0a6f5fa2fc35d3da07157d27d336587a5a5e4851 /gcc | |
parent | 5ff5b41ca3bbb8cc659d6ccb7b4dcebfa7678a6e (diff) | |
download | gcc-99a1b0844ad0b3dc179f2a11a684a81caea6e63b.zip gcc-99a1b0844ad0b3dc179f2a11a684a81caea6e63b.tar.gz gcc-99a1b0844ad0b3dc179f2a11a684a81caea6e63b.tar.bz2 |
target-supports.exp (check_effective_target_sparc_v9): New.
* lib/target-supports.exp (check_effective_target_sparc_v9): New.
(check_effective_target_sync_long_long): Add SPARC case.
(check_effective_target_sync_long_long_runtime): Likewise.
(check_effective_target_sync_int_long): Adjust SPARC case.
(check_effective_target_sync_char_short): Likewise.
From-SVN: r186241
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/testsuite/ChangeLog | 8 | ||||
-rw-r--r-- | gcc/testsuite/lib/target-supports.exp | 30 |
2 files changed, 32 insertions, 6 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 49f0eb3..0cdf06f 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,11 @@ +2012-04-09 Eric Botcazou <ebotcazou@adacore.com> + + * lib/target-supports.exp (check_effective_target_sparc_v9): New. + (check_effective_target_sync_long_long): Add SPARC case. + (check_effective_target_sync_long_long_runtime): Likewise. + (check_effective_target_sync_int_long): Adjust SPARC case. + (check_effective_target_sync_char_short): Likewise. + 2012-04-08 Oleg Endo <olegendo@gcc.gnu.org> * gcc.target/sh/sh2a-prefetch.c: Rename to ... diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp index 23b6ea9..1a25324 100644 --- a/gcc/testsuite/lib/target-supports.exp +++ b/gcc/testsuite/lib/target-supports.exp @@ -2551,7 +2551,22 @@ proc check_effective_target_ultrasparc_vis3_hw { } { } "-mcpu=niagara3"] } -# Return 1 if this is a Sparc target with VIS enabled. +# Return 1 if this is a SPARC-V9 target. + +proc check_effective_target_sparc_v9 { } { + if { [istarget sparc*-*-*] } { + return [check_no_compiler_messages sparc_v9 object { + int main (void) { + asm volatile ("return %i7+8"); + return 0; + } + }] + } else { + return 0 + } +} + +# Return 1 if this is a SPARC target with VIS enabled. proc check_effective_target_sparc_vis { } { if { [istarget sparc*-*-*] } { @@ -3730,7 +3745,8 @@ proc check_effective_target_sync_long_long { } { if { [istarget x86_64-*-*] || [istarget i?86-*-*]) || [istarget arm*-*-*] - || [istarget alpha*-*-*] } { + || [istarget alpha*-*-*] + || ([istarget sparc*-*-*] && [check_effective_target_lp64]) } { return 1 } else { return 0 @@ -3775,6 +3791,10 @@ proc check_effective_target_sync_long_long_runtime { } { } "" ] } elseif { [istarget alpha*-*-*] } { return 1 + } elseif { ([istarget sparc*-*-*] + && [check_effective_target_lp64] + && [check_effective_target_ultrasparc_hw]) } { + return 1 } else { return 0 } @@ -3800,8 +3820,7 @@ proc check_effective_target_sync_int_long { } { || [istarget hppa*-*linux*] || [istarget s390*-*-*] || [istarget powerpc*-*-*] - || [istarget sparc64-*-*] - || [istarget sparcv9-*-*] + || ([istarget sparc*-*-*] && [check_effective_target_sparc_v9]) || [check_effective_target_mips_llsc] } { set et_sync_int_long_saved 1 } @@ -3830,8 +3849,7 @@ proc check_effective_target_sync_char_short { } { || [istarget hppa*-*linux*] || [istarget s390*-*-*] || [istarget powerpc*-*-*] - || [istarget sparc64-*-*] - || [istarget sparcv9-*-*] + || ([istarget sparc*-*-*] && [check_effective_target_sparc_v9]) || [check_effective_target_mips_llsc] } { set et_sync_char_short_saved 1 } |