On 2/29/24 00:06, Xi Ruoyao wrote:
The vect_int_mod target selector is evaluated with the options in
DEFAULT_VECTCFLAGS in effect, but these options are not automatically
passed to tests out of the vect directories.  So this test fails on
targets where integer vector modulo operation is supported but requiring
an option to enable, for example LoongArch.

In this test case, the only expected optimization not happened in
original is in corge because it needs forward propogation.  So we can
scan the forwprop2 dump (where the vector operation is not expanded to
scalars yet) instead of optimized, then we don't need to consider
vect_int_mod or not.

gcc/testsuite/ChangeLog:

        PR testsuite/113418
        * gcc.dg/pr104992.c (dg-options): Use -fdump-tree-forwprop2
        instead of -fdump-tree-optimized.
        (dg-final): Scan forwprop2 dump instead of optimized, and remove
        the use of vect_int_mod.
        * lib/target-supports.exp (check_effective_target_vect_int_mod):
        Remove because it's not used anymore.
---

v1->v2: Remove check_effective_target_vect_int_mod as it's now unused.

This fixes the test failure on loongarch64-linux-gnu.  Also tested on
x86_64-linux-gnu.  Ok for trunk?

  gcc/testsuite/gcc.dg/pr104992.c       |  5 ++---
  gcc/testsuite/lib/target-supports.exp | 13 -------------
  2 files changed, 2 insertions(+), 16 deletions(-)
While not strictly a regression, it's just the testsuite so I think this is OK for the trunk, even though we're in stage4.

jeff

Reply via email to