* [testsuite] remove ARM big-endian from some vect effective targets
@ 2013-01-15 1:53 Janis Johnson
0 siblings, 0 replies; 2+ messages in thread
From: Janis Johnson @ 2013-01-15 1:53 UTC (permalink / raw)
To: gcc-patches
[-- Attachment #1: Type: text/plain, Size: 622 bytes --]
As described in PR testsuite/54622, lots of tests from gcc.dg/vect fail
for big-endian ARM, apparently with bits of vectorization support
disabled here and there. This patch removes big-endian ARM from
check_effective_target_vect_perm_byte
check_effective_target_vect_perm_short
check_effective_target_vect_widen_mult_qi_to_hi_pattern,
check_effective_target_vect64
and makes check_effective_target_vect_widen_sum_qi_to_hi return 1 for
ARM. For each individual change there are tests that no longer fail
and no tests that regress.
Tested for arm-none-eabi with several multilibs; OK for trunk?
Janis
[-- Attachment #2: gcc-20130114-3 --]
[-- Type: text/plain, Size: 2942 bytes --]
2013-01-15 Janis Johnson <janisjo@codesourcery.com>
PR testsuite/54622
* lib/target-supports.exp (check_effective_target_vect_perm_byte,
check_effective_target_vect_perm_short,
check_effective_target_vect_widen_mult_qi_to_hi_pattern,
check_effective_target_vect64): Return 0 for big-endian ARM.
(check_effective_target_vect_widen_sum_qi_to_hi): Return 1 for ARM.
Index: lib/target-supports.exp
===================================================================
--- lib/target-supports.exp (revision 195178)
+++ lib/target-supports.exp (working copy)
@@ -3082,7 +3082,8 @@
verbose "check_effective_target_vect_perm_byte: using cached result" 2
} else {
set et_vect_perm_byte_saved 0
- if { [is-effective-target arm_neon_ok]
+ if { ([is-effective-target arm_neon_ok]
+ && [is-effective-target arm_little_endian])
|| [istarget aarch64*-*-*]
|| [istarget powerpc*-*-*]
|| [istarget spu-*-*] } {
@@ -3105,7 +3106,8 @@
verbose "check_effective_target_vect_perm_short: using cached result" 2
} else {
set et_vect_perm_short_saved 0
- if { [is-effective-target arm_neon_ok]
+ if { ([is-effective-target arm_neon_ok]
+ && [is-effective-target arm_little_endian])
|| [istarget aarch64*-*-*]
|| [istarget powerpc*-*-*]
|| [istarget spu-*-*] } {
@@ -3175,6 +3177,7 @@
} else {
set et_vect_widen_sum_qi_to_hi_saved 0
if { [check_effective_target_vect_unpack]
+ || [check_effective_target_arm_neon_ok]
|| [istarget ia64-*-*] } {
set et_vect_widen_sum_qi_to_hi_saved 1
}
@@ -3282,7 +3285,9 @@
} else {
set et_vect_widen_mult_qi_to_hi_pattern_saved 0
if { [istarget powerpc*-*-*]
- || ([istarget arm*-*-*] && [check_effective_target_arm_neon_ok]) } {
+ || ([istarget arm*-*-*]
+ && [check_effective_target_arm_neon_ok]
+ && [check_effective_target_arm_little_endian]) } {
set et_vect_widen_mult_qi_to_hi_pattern_saved 1
}
}
@@ -3307,7 +3312,9 @@
|| [istarget ia64-*-*]
|| [istarget i?86-*-*]
|| [istarget x86_64-*-*]
- || ([istarget arm*-*-*] && [check_effective_target_arm_neon_ok]) } {
+ || ([istarget arm*-*-*]
+ && [check_effective_target_arm_neon_ok]
+ && [check_effective_target_arm_little_endian]) } {
set et_vect_widen_mult_hi_to_si_pattern_saved 1
}
}
@@ -3914,7 +3921,9 @@
verbose "check_effective_target_vect64: using cached result" 2
} else {
set et_vect64_saved 0
- if { ([istarget arm*-*-*] && [check_effective_target_arm_neon_ok]) } {
+ if { ([istarget arm*-*-*]
+ && [check_effective_target_arm_neon_ok]
+ && [check_effective_target_arm_little_endian]) } {
set et_vect64_saved 1
}
}
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [testsuite] remove ARM big-endian from some vect effective targets
@ 2013-01-16 13:38 Nick Clifton
0 siblings, 0 replies; 2+ messages in thread
From: Nick Clifton @ 2013-01-16 13:38 UTC (permalink / raw)
To: janis_johnson; +Cc: gcc-patches
Hi Janis,
> 2013-01-15 Janis Johnson <janisjo@codesourcery.com>
>
> PR testsuite/54622
>
> * lib/target-supports.exp (check_effective_target_vect_perm_byte,
> check_effective_target_vect_perm_short,
> check_effective_target_vect_widen_mult_qi_to_hi_pattern,
> check_effective_target_vect64): Return 0 for big-endian ARM.
> (check_effective_target_vect_widen_sum_qi_to_hi): Return 1 for ARM.
Approved - please apply.
Cheers
Nick
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2013-01-16 13:38 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-01-15 1:53 [testsuite] remove ARM big-endian from some vect effective targets Janis Johnson
2013-01-16 13:38 Nick Clifton
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).