[Bug testsuite/106516] New test case gcc.dg/pr104992.c fails on power 10
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106516 Andrew Pinski changed: What|Removed |Added Target Milestone|--- |13.0
[Bug testsuite/106516] New test case gcc.dg/pr104992.c fails on power 10
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106516 Kewen Lin changed: What|Removed |Added Resolution|--- |FIXED Status|ASSIGNED|RESOLVED --- Comment #10 from Kewen Lin --- Should be fixed on trunk.
[Bug testsuite/106516] New test case gcc.dg/pr104992.c fails on power 10
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106516 --- Comment #9 from CVS Commits --- The master branch has been updated by Kewen Lin : https://gcc.gnu.org/g:c28957176dc0adff6e4b8fcbe6b91f5b82900563 commit r13-2983-gc28957176dc0adff6e4b8fcbe6b91f5b82900563 Author: Kewen Lin Date: Fri Sep 30 07:16:36 2022 -0500 rs6000/test: Adjust pr104992.c with vect_int_mod [PR106516] As PR106516 shows, we can get unexpected gimple outputs for function thud on some target which supports modulus operation for vector int. This patch introduces one effective target vect_int_mod for it, then adjusts the test case with it. PR testsuite/106516 gcc/testsuite/ChangeLog: * gcc.dg/pr104992.c: Adjust with vect_int_mod. * lib/target-supports.exp (check_effective_target_vect_int_mod): New effective target.
[Bug testsuite/106516] New test case gcc.dg/pr104992.c fails on power 10
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106516 --- Comment #8 from Peter Bergner --- (In reply to Kewen Lin from comment #7) > In this patch, I mainly > followed the existing practice vect_int_mult (there are also some similar > effective targets describing target vector support capability). With this > way, if some other arches support this in future, target owners need to add > their own conditions. Yes, and those target maintainers will notice when they add the HW support and then see this test case FAIL, just like we did on P10.
[Bug testsuite/106516] New test case gcc.dg/pr104992.c fails on power 10
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106516 --- Comment #7 from Kewen Lin --- (In reply to Peter Bergner from comment #6) > (In reply to Kewen Lin from comment #5) > > Created attachment 53492 [details] > > Adjust pr104992.c with vect_int_mod > > > > > So it sounds like we want a generic target supports test that is true on > > > targets (like power10) with a vector mod and key off that. Any ideas how > > > we > > > can do that? > > > > Add one effective target vect_int_mod for it, one quick grepping for i386 > > and aarch64 shows they don't have such support. > > Heh, I was thinking of whether we could actually test whether an actual > target supported it, but given no other arches seem to be failing this test > case other than P10, I guess that will work. :-) Thanks for the clarification, I guess that's doable. In this patch, I mainly followed the existing practice vect_int_mult (there are also some similar effective targets describing target vector support capability). With this way, if some other arches support this in future, target owners need to add their own conditions.
[Bug testsuite/106516] New test case gcc.dg/pr104992.c fails on power 10
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106516 --- Comment #6 from Peter Bergner --- (In reply to Kewen Lin from comment #5) > Created attachment 53492 [details] > Adjust pr104992.c with vect_int_mod > > > So it sounds like we want a generic target supports test that is true on > > targets (like power10) with a vector mod and key off that. Any ideas how we > > can do that? > > Add one effective target vect_int_mod for it, one quick grepping for i386 > and aarch64 shows they don't have such support. Heh, I was thinking of whether we could actually test whether an actual target supported it, but given no other arches seem to be failing this test case other than P10, I guess that will work. :-)
[Bug testsuite/106516] New test case gcc.dg/pr104992.c fails on power 10
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106516 Kewen Lin changed: What|Removed |Added Assignee|unassigned at gcc dot gnu.org |linkw at gcc dot gnu.org Status|NEW |ASSIGNED --- Comment #5 from Kewen Lin --- Created attachment 53492 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=53492=edit Adjust pr104992.c with vect_int_mod > So it sounds like we want a generic target supports test that is true on > targets (like power10) with a vector mod and key off that. Any ideas how we > can do that? Add one effective target vect_int_mod for it, one quick grepping for i386 and aarch64 shows they don't have such support.
[Bug testsuite/106516] New test case gcc.dg/pr104992.c fails on power 10
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106516 --- Comment #4 from Peter Bergner --- (In reply to Kewen Lin from comment #2) > Confirmed, this is a test issue, power10 and up specific. > > The difference comes from the function thud, it aims to test the pattern > works for vector type. Power10 starts to support the insn vmodsw for vector > integer mod. [snip] > We can adjust the test case to expect 6 times "%" on target power10_ok > specially, but I wonder if we also find this fail on some other targets > which supports vector mod, if so, one overall complete guard would be better. So it sounds like we want a generic target supports test that is true on targets (like power10) with a vector mod and key off that. Any ideas how we can do that?
[Bug testsuite/106516] New test case gcc.dg/pr104992.c fails on power 10
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106516 Kewen Lin changed: What|Removed |Added CC||meissner at gcc dot gnu.org --- Comment #3 from Kewen Lin --- *** Bug 106681 has been marked as a duplicate of this bug. ***
[Bug testsuite/106516] New test case gcc.dg/pr104992.c fails on power 10
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106516 Kewen Lin changed: What|Removed |Added Ever confirmed|0 |1 CC||linkw at gcc dot gnu.org Last reconfirmed||2022-08-04 Status|UNCONFIRMED |NEW --- Comment #2 from Kewen Lin --- Confirmed, this is a test issue, power10 and up specific. The difference comes from the function thud, it aims to test the pattern works for vector type. Power10 starts to support the insn vmodsw for vector integer mod. So it gets: vector(4) int thud (vector(4) int x, vector(4) int y) _1 = x_3(D) % y_4(D); _2 = _1 == { 0, 0, 0, 0 }; instead of [local count: 1073741824]: _7 = BIT_FIELD_REF ; _8 = BIT_FIELD_REF ; _9 = _7 % _8; _10 = BIT_FIELD_REF ; _11 = BIT_FIELD_REF ; _12 = _10 % _11; _13 = BIT_FIELD_REF ; _14 = BIT_FIELD_REF ; _15 = _13 % _14; _16 = BIT_FIELD_REF ; _17 = BIT_FIELD_REF ; _18 = _16 % _17; _1 = {_9, _12, _15, _18}; _2 = _1 == { 0, 0, 0, 0 }; We can adjust the test case to expect 6 times "%" on target power10_ok specially, but I wonder if we also find this fail on some other targets which supports vector mod, if so, one overall complete guard would be better.
[Bug testsuite/106516] New test case gcc.dg/pr104992.c fails on power 10
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106516 seurer at gcc dot gnu.org changed: What|Removed |Added CC||bergner at gcc dot gnu.org Summary|New test case |New test case |gcc.dg/pr104992.c fails |gcc.dg/pr104992.c fails on ||power 10 --- Comment #1 from seurer at gcc dot gnu.org --- I should have said it ONLY fails on power 10. Works fine on power 9 and earlier. I can't find a valid email address for Sam Feifer to use for bugzilla.