* [PATCH] test regression fix: Remove xfail for variable length targets @ 2024-01-16 6:35 Juzhe-Zhong 2024-01-16 7:38 ` Richard Biener 0 siblings, 1 reply; 4+ messages in thread From: Juzhe-Zhong @ 2024-01-16 6:35 UTC (permalink / raw) To: gcc-patches; +Cc: rguenther, Tamar.Christina, Juzhe-Zhong Recently notice there is a XPASS in RISC-V: XPASS: gcc.dg/vect/bb-slp-43.c -flto -ffat-lto-objects scan-tree-dump-not slp2 "vector operands from scalars" XPASS: gcc.dg/vect/bb-slp-43.c scan-tree-dump-not slp2 "vector operands from scalars" And checked both ARM SVE and RVV: https://godbolt.org/z/T9cPa7fh3 both has the same dump slp2. So I guess ARM SVE has the same XPASS in this test. gcc/testsuite/ChangeLog: * gcc.dg/vect/bb-slp-43.c: Remove xfail for variable length. --- gcc/testsuite/gcc.dg/vect/bb-slp-43.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gcc/testsuite/gcc.dg/vect/bb-slp-43.c b/gcc/testsuite/gcc.dg/vect/bb-slp-43.c index dad2d24262d..40bd2e0dfbf 100644 --- a/gcc/testsuite/gcc.dg/vect/bb-slp-43.c +++ b/gcc/testsuite/gcc.dg/vect/bb-slp-43.c @@ -14,4 +14,4 @@ f (int *restrict x, short *restrict y) } /* { dg-final { scan-tree-dump-not "mixed mask and nonmask" "slp2" } } */ -/* { dg-final { scan-tree-dump-not "vector operands from scalars" "slp2" { target { { vect_int && vect_bool_cmp } && { vect_unpack && vect_hw_misalign } } xfail { vect_variable_length && { ! vect256 } } } } } */ +/* { dg-final { scan-tree-dump-not "vector operands from scalars" "slp2" { target { { vect_int && vect_bool_cmp } && { vect_unpack && vect_hw_misalign } } } } } */ -- 2.36.3 ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] test regression fix: Remove xfail for variable length targets 2024-01-16 6:35 [PATCH] test regression fix: Remove xfail for variable length targets Juzhe-Zhong @ 2024-01-16 7:38 ` Richard Biener 2024-01-16 7:45 ` juzhe.zhong 0 siblings, 1 reply; 4+ messages in thread From: Richard Biener @ 2024-01-16 7:38 UTC (permalink / raw) To: Juzhe-Zhong; +Cc: gcc-patches, Tamar.Christina On Tue, 16 Jan 2024, Juzhe-Zhong wrote: > Recently notice there is a XPASS in RISC-V: > XPASS: gcc.dg/vect/bb-slp-43.c -flto -ffat-lto-objects scan-tree-dump-not slp2 "vector operands from scalars" > XPASS: gcc.dg/vect/bb-slp-43.c scan-tree-dump-not slp2 "vector operands from scalars" > > And checked both ARM SVE and RVV: > > https://godbolt.org/z/T9cPa7fh3 > > both has the same dump slp2. So I guess ARM SVE has the same XPASS in this test. That's probably because we have vect_variable_length && vect128 instead? Thus, what's the IL after SLP2 (and some DCE)? > gcc/testsuite/ChangeLog: > > * gcc.dg/vect/bb-slp-43.c: Remove xfail for variable length. > > --- > gcc/testsuite/gcc.dg/vect/bb-slp-43.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/gcc/testsuite/gcc.dg/vect/bb-slp-43.c b/gcc/testsuite/gcc.dg/vect/bb-slp-43.c > index dad2d24262d..40bd2e0dfbf 100644 > --- a/gcc/testsuite/gcc.dg/vect/bb-slp-43.c > +++ b/gcc/testsuite/gcc.dg/vect/bb-slp-43.c > @@ -14,4 +14,4 @@ f (int *restrict x, short *restrict y) > } > > /* { dg-final { scan-tree-dump-not "mixed mask and nonmask" "slp2" } } */ > -/* { dg-final { scan-tree-dump-not "vector operands from scalars" "slp2" { target { { vect_int && vect_bool_cmp } && { vect_unpack && vect_hw_misalign } } xfail { vect_variable_length && { ! vect256 } } } } } */ > +/* { dg-final { scan-tree-dump-not "vector operands from scalars" "slp2" { target { { vect_int && vect_bool_cmp } && { vect_unpack && vect_hw_misalign } } } } } */ > -- Richard Biener <rguenther@suse.de> SUSE Software Solutions Germany GmbH, Frankenstrasse 146, 90461 Nuernberg, Germany; GF: Ivo Totev, Andrew McDonald, Werner Knoblich; (HRB 36809, AG Nuernberg) ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Re: [PATCH] test regression fix: Remove xfail for variable length targets 2024-01-16 7:38 ` Richard Biener @ 2024-01-16 7:45 ` juzhe.zhong 2024-01-16 7:48 ` Richard Biener 0 siblings, 1 reply; 4+ messages in thread From: juzhe.zhong @ 2024-01-16 7:45 UTC (permalink / raw) To: rguenther; +Cc: gcc-patches, tamar.christina [-- Attachment #1: Type: text/plain, Size: 2925 bytes --] >> That's probably because we have vect_variable_length && vect128 instead? Yes. Both RVV and SVE uses 128bit vector SLP. The optimized IR (both ARM SVE and RVV are similiar): vect__1.5_189 = MEM <vector(4) int> [(int *)x_50(D)]; vect__1.6_191 = MEM <vector(4) int> [(int *)x_50(D) + 16B]; mask__2.7_192 = vect__1.5_189 == { 1, 1, 1, 1 }; mask__2.7_193 = vect__1.6_191 == { 1, 1, 1, 1 }; mask_patt_156.8_194 = VEC_PACK_TRUNC_EXPR <mask__2.7_192, mask__2.7_193>; vect__3.11_196 = MEM <vector(8) short int> [(short int *)y_51(D)]; mask__4.12_197 = vect__3.11_196 == { 2, 2, 2, 2, 2, 2, 2, 2 }; mask_patt_157.13_198 = mask_patt_156.8_194 & mask__4.12_197; vect_patt_158.14_199 = .VCOND_MASK (mask_patt_157.13_198, { 1, 1, 1, 1, 1, 1, 1, 1 }, { 0, 0, 0, 0, 0, 0, 0, 0 }); vect_patt_159.15_200 = [vec_unpack_lo_expr] vect_patt_158.14_199; vect_patt_159.15_201 = [vec_unpack_hi_expr] vect_patt_158.14_199; juzhe.zhong@rivai.ai From: Richard Biener Date: 2024-01-16 15:38 To: Juzhe-Zhong CC: gcc-patches; Tamar.Christina Subject: Re: [PATCH] test regression fix: Remove xfail for variable length targets On Tue, 16 Jan 2024, Juzhe-Zhong wrote: > Recently notice there is a XPASS in RISC-V: > XPASS: gcc.dg/vect/bb-slp-43.c -flto -ffat-lto-objects scan-tree-dump-not slp2 "vector operands from scalars" > XPASS: gcc.dg/vect/bb-slp-43.c scan-tree-dump-not slp2 "vector operands from scalars" > > And checked both ARM SVE and RVV: > > https://godbolt.org/z/T9cPa7fh3 > > both has the same dump slp2. So I guess ARM SVE has the same XPASS in this test. That's probably because we have vect_variable_length && vect128 instead? Thus, what's the IL after SLP2 (and some DCE)? > gcc/testsuite/ChangeLog: > > * gcc.dg/vect/bb-slp-43.c: Remove xfail for variable length. > > --- > gcc/testsuite/gcc.dg/vect/bb-slp-43.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/gcc/testsuite/gcc.dg/vect/bb-slp-43.c b/gcc/testsuite/gcc.dg/vect/bb-slp-43.c > index dad2d24262d..40bd2e0dfbf 100644 > --- a/gcc/testsuite/gcc.dg/vect/bb-slp-43.c > +++ b/gcc/testsuite/gcc.dg/vect/bb-slp-43.c > @@ -14,4 +14,4 @@ f (int *restrict x, short *restrict y) > } > > /* { dg-final { scan-tree-dump-not "mixed mask and nonmask" "slp2" } } */ > -/* { dg-final { scan-tree-dump-not "vector operands from scalars" "slp2" { target { { vect_int && vect_bool_cmp } && { vect_unpack && vect_hw_misalign } } xfail { vect_variable_length && { ! vect256 } } } } } */ > +/* { dg-final { scan-tree-dump-not "vector operands from scalars" "slp2" { target { { vect_int && vect_bool_cmp } && { vect_unpack && vect_hw_misalign } } } } } */ > -- Richard Biener <rguenther@suse.de> SUSE Software Solutions Germany GmbH, Frankenstrasse 146, 90461 Nuernberg, Germany; GF: Ivo Totev, Andrew McDonald, Werner Knoblich; (HRB 36809, AG Nuernberg) ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Re: [PATCH] test regression fix: Remove xfail for variable length targets 2024-01-16 7:45 ` juzhe.zhong @ 2024-01-16 7:48 ` Richard Biener 0 siblings, 0 replies; 4+ messages in thread From: Richard Biener @ 2024-01-16 7:48 UTC (permalink / raw) To: juzhe.zhong; +Cc: gcc-patches, tamar.christina On Tue, 16 Jan 2024, juzhe.zhong@rivai.ai wrote: > >> That's probably because we have vect_variable_length && vect128 instead? > Yes. Both RVV and SVE uses 128bit vector SLP. > > The optimized IR (both ARM SVE and RVV are similiar): > vect__1.5_189 = MEM <vector(4) int> [(int *)x_50(D)]; > vect__1.6_191 = MEM <vector(4) int> [(int *)x_50(D) + 16B]; > mask__2.7_192 = vect__1.5_189 == { 1, 1, 1, 1 }; > mask__2.7_193 = vect__1.6_191 == { 1, 1, 1, 1 }; > mask_patt_156.8_194 = VEC_PACK_TRUNC_EXPR <mask__2.7_192, mask__2.7_193>; > vect__3.11_196 = MEM <vector(8) short int> [(short int *)y_51(D)]; > mask__4.12_197 = vect__3.11_196 == { 2, 2, 2, 2, 2, 2, 2, 2 }; > mask_patt_157.13_198 = mask_patt_156.8_194 & mask__4.12_197; > vect_patt_158.14_199 = .VCOND_MASK (mask_patt_157.13_198, { 1, 1, 1, 1, 1, 1, 1, 1 }, { 0, 0, 0, 0, 0, 0, 0, 0 }); > vect_patt_159.15_200 = [vec_unpack_lo_expr] vect_patt_158.14_199; > vect_patt_159.15_201 = [vec_unpack_hi_expr] vect_patt_158.14_199; so xfail { vect_variable_length && { ! vect256 } && { ! vect128 } } then? > > > juzhe.zhong@rivai.ai > > From: Richard Biener > Date: 2024-01-16 15:38 > To: Juzhe-Zhong > CC: gcc-patches; Tamar.Christina > Subject: Re: [PATCH] test regression fix: Remove xfail for variable length targets > On Tue, 16 Jan 2024, Juzhe-Zhong wrote: > > > Recently notice there is a XPASS in RISC-V: > > XPASS: gcc.dg/vect/bb-slp-43.c -flto -ffat-lto-objects scan-tree-dump-not slp2 "vector operands from scalars" > > XPASS: gcc.dg/vect/bb-slp-43.c scan-tree-dump-not slp2 "vector operands from scalars" > > > > And checked both ARM SVE and RVV: > > > > https://godbolt.org/z/T9cPa7fh3 > > > > both has the same dump slp2. So I guess ARM SVE has the same XPASS in this test. > > That's probably because we have vect_variable_length && vect128 instead? > Thus, what's the IL after SLP2 (and some DCE)? > > > gcc/testsuite/ChangeLog: > > > > * gcc.dg/vect/bb-slp-43.c: Remove xfail for variable length. > > > > --- > > gcc/testsuite/gcc.dg/vect/bb-slp-43.c | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > diff --git a/gcc/testsuite/gcc.dg/vect/bb-slp-43.c b/gcc/testsuite/gcc.dg/vect/bb-slp-43.c > > index dad2d24262d..40bd2e0dfbf 100644 > > --- a/gcc/testsuite/gcc.dg/vect/bb-slp-43.c > > +++ b/gcc/testsuite/gcc.dg/vect/bb-slp-43.c > > @@ -14,4 +14,4 @@ f (int *restrict x, short *restrict y) > > } > > > > /* { dg-final { scan-tree-dump-not "mixed mask and nonmask" "slp2" } } */ > > -/* { dg-final { scan-tree-dump-not "vector operands from scalars" "slp2" { target { { vect_int && vect_bool_cmp } && { vect_unpack && vect_hw_misalign } } xfail { vect_variable_length && { ! vect256 } } } } } */ > > +/* { dg-final { scan-tree-dump-not "vector operands from scalars" "slp2" { target { { vect_int && vect_bool_cmp } && { vect_unpack && vect_hw_misalign } } } } } */ > > > > -- Richard Biener <rguenther@suse.de> SUSE Software Solutions Germany GmbH, Frankenstrasse 146, 90461 Nuernberg, Germany; GF: Ivo Totev, Andrew McDonald, Werner Knoblich; (HRB 36809, AG Nuernberg) ^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2024-01-16 7:53 UTC | newest] Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2024-01-16 6:35 [PATCH] test regression fix: Remove xfail for variable length targets Juzhe-Zhong 2024-01-16 7:38 ` Richard Biener 2024-01-16 7:45 ` juzhe.zhong 2024-01-16 7:48 ` Richard Biener
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).