Hi Richard, on 2020/3/5 上午3:09, Richard Sandiford wrote: > "Kewen.Lin" <li...@linux.ibm.com> writes: >> Hi, >> >> >> --- a/gcc/testsuite/gcc.dg/vect/vect-over-widen-17.c >> +++ b/gcc/testsuite/gcc.dg/vect/vect-over-widen-17.c >> @@ -41,6 +41,10 @@ main (void) >> } >> >> /* { dg-final { scan-tree-dump-not {vect_recog_over_widening_pattern: >> detected} "vect" } } */ >> -/* { dg-final { scan-tree-dump-not {vector[^\n]*char} "vect" } } */ >> +/* { dg-final { scan-tree-dump-not {vector[^\n]*char} "vect" { target { { ! >> powerpc*-*-* } || { powerpc*-*-* && vect_hw_misalign } } } } } >> +/* On Power, if there is no vect_hw_misalign support, unaligned vector >> access >> + adopts realign_load scheme. It requires rs6000_builtin_mask_for_load to >> + generate mask whose return type is vector char. */ >> +/* { dg-final { scan-tree-dump-times {vector[^\n]*char} 1 "vect" { target { >> powerpc*-*-* && { ! vect_hw_misalign } } } } } */ > > Thanks for looking at this. The patch is OK as-is. However, since > vect-over-widen-17.c is a negative test for generic code, there probably > isn't much need for the new scan-tree-dump-times line, and it could start > failing if we make different optimisation decisions in future. So the > patch is also OK with just the change to the scan-tree-dump-not line, > if you prefer that. (Please keep the comment either way though -- > it's really helpful.) >
Thanks for your suggestion! The new patch is updated as below. I removed the scan-tree-dump-times, as well as powerpc specific requirement. Does it look good to you especially the later? Thanks in advance! BR, Kewen gcc/testsuite/ChangeLog 2020-03-05 Kewen Lin <li...@gcc.gnu.org> PR testsuite/94019 * gcc.dg/vect/vect-over-widen-17.c: Don't expect vector char if it's without misaligned vector access support. ------ diff --git a/gcc/testsuite/gcc.dg/vect/vect-over-widen-17.c b/gcc/testsuite/gcc.dg/vect/vect-over-widen-17.c index 0448260..333d74a 100644 --- a/gcc/testsuite/gcc.dg/vect/vect-over-widen-17.c +++ b/gcc/testsuite/gcc.dg/vect/vect-over-widen-17.c @@ -41,6 +41,9 @@ main (void) } /* { dg-final { scan-tree-dump-not {vect_recog_over_widening_pattern: detected} "vect" } } */ -/* { dg-final { scan-tree-dump-not {vector[^\n]*char} "vect" } } */ +/* On Power, if there is no vect_hw_misalign support, unaligned vector access + adopts realign_load scheme. It requires rs6000_builtin_mask_for_load to + generate mask whose return type is vector char. */ +/* { dg-final { scan-tree-dump-not {vector[^\n]*char} "vect" { target vect_hw_misalign } } } */ /* { dg-final { scan-tree-dump-not {vector[^ ]* int} "vect" } } */ /* { dg-final { scan-tree-dump-times "vectorized 1 loop" 1 "vect" } } */