Hi Kewen,
On 2023-04-19 10:53, Kewen.Lin wrote:
Hi Jeff,
on 2023/4/19 10:03, Jiufu Guo wrote:
Hi,
On P7, option -mno-allow-movmisalign is added during testing, which
prevents slp happen on the case.
Like Like PR65484 and PR87306, this patch use vect_hw_misalig to guard
Dup like... ~~ missing the last
character n.
Always thanks for your helpful catching and comments!
Committed via r14-105-g57e7229a29ca0e.
BR,
Jeff (Jiufu)
the case on powerpc targets.
Tested on ppc64{le,} and x86_64.
Is this ok for trunk?
BR,
Jeff (Jiufu)
gcc/testsuite/ChangeLog:
PR testsuite/106879
* gcc.dg/vect/bb-slp-layout-19.c: Modify to guard the check with
vect_hw_misalig on POWERs.
... ~~~~~ Same here.
OK for trunk with these nits fixed, thanks!
BR,
Kewen
---
gcc/testsuite/gcc.dg/vect/bb-slp-layout-19.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/gcc/testsuite/gcc.dg/vect/bb-slp-layout-19.c
b/gcc/testsuite/gcc.dg/vect/bb-slp-layout-19.c
index f075a83a25b..faf98e8d3c0 100644
--- a/gcc/testsuite/gcc.dg/vect/bb-slp-layout-19.c
+++ b/gcc/testsuite/gcc.dg/vect/bb-slp-layout-19.c
@@ -31,4 +31,9 @@ void f()
e[3] = b3;
}
-/* { dg-final { scan-tree-dump-times "add new stmt: \[^\\n\\r\]* =
VEC_PERM_EXPR" 3 "slp1" { target { vect_int_mult && vect_perm } } } }
*/
+/* On older powerpc hardware (POWER7 and earlier), the default flag
+ -mno-allow-movmisalign prevents vectorization. On POWER8 and
later,
+ when vect_hw_misalign is true, vectorization occurs. For other
+ targets, ! vect_no_align is a sufficient test. */
+
+/* { dg-final { scan-tree-dump-times "add new stmt: \[^\\n\\r\]* =
VEC_PERM_EXPR" 3 "slp1" { target { { vect_int_mult && vect_perm } && {
{ ! powerpc*-*-* } || { vect_hw_misalign } } } } } } */