target-supports.exp (check_effective_target_vect_shift): Implement with result caching.

* lib/target-supports.exp (check_effective_target_vect_shift):
	Implement with result caching. Add i?86, x86_64 and ia64 targets.
	(check_effective_target_vect_condition): Fix copy-n-pasto.

	* gcc.dg/vect/pr22480.c : Enable for effective-target vect_shift.
	* gcc.dg/vect/vect-shift-1.c: Remove XFAIL for i?86 and x86_64
	targets.

From-SVN: r104888
This commit is contained in:
Uros Bizjak 2005-10-03 07:24:08 +02:00 committed by Uros Bizjak
parent 8e52dd26e3
commit 41a182c62d
4 changed files with 26 additions and 13 deletions

View File

@ -1,3 +1,13 @@
2005-10-03 Uros Bizjak <uros@kss-loka.si>
* lib/target-supports.exp (check_effective_target_vect_shift):
Implement with result caching. Add i?86, x86_64 and ia64 targets.
(check_effective_target_vect_condition): Fix copy-n-pasto.
* gcc.dg/vect/pr22480.c : Enable for effective-target vect_shift.
* gcc.dg/vect/vect-shift-1.c: Remove XFAIL for i?86 and x86_64
targets.
2005-10-02 Mark Mitchell <mark@codesourcery.com>
PR c++/22621

View File

@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-require-effective-target vect_int } */
/* { dg-require-effective-target vect_shift } */
void
test_1 (void)

View File

@ -3,9 +3,6 @@
#include <stdarg.h>
#include <signal.h>
#define N 16
#define MAX 42
extern void abort(void);
int main ()
@ -23,7 +20,5 @@ int main ()
return 0;
}
/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" { xfail i?86-*-* x86_64-*-* } } } */
/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" } } */
/* { dg-final { cleanup-tree-dump "vect" } } */

View File

@ -888,14 +888,22 @@ proc check_effective_target_arm32 { } {
# Return 1 if the target supports hardware vector shift operation.
proc check_effective_target_vect_shift { } {
if { [istarget powerpc*-*-*] } {
set answer 1
global et_vect_shift_saved
if [info exists et_vect_shift_saved] {
verbose "check_effective_target_vect_shift: using cached result" 2
} else {
set answer 0
set et_vect_shift_saved 0
if { [istarget powerpc*-*-*]
|| [istarget ia64-*-*]
|| [istarget i?86-*-*]
|| [istarget x86_64-*-*] } {
set et_vect_shift_saved 1
}
}
verbose "check_effective_target_vect_shift: returning $answer" 2
return $answer
verbose "check_effective_target_vect_shift: returning $et_vect_shift_saved" 2
return $et_vect_shift_saved
}
# Return 1 if the target supports hardware vectors of long, 0 otherwise.
@ -1047,7 +1055,7 @@ proc check_effective_target_vect_no_align { } {
proc check_effective_target_vect_condition { } {
global et_vect_cond_saved
if [info exists et_vect_int_cond] {
if [info exists et_vect_cond_saved] {
verbose "check_effective_target_vect_cond: using cached result" 2
} else {
set et_vect_cond_saved 0