When using binutils, which does not support vectorization, and the gcc compiler
toolchain, which does support vectorization, the following two types of error
problems occur in gcc regression testing.

1.Failure of common tests in the gcc.dg/vect directory???

Regression testing of GCC has found that vect-bic-bitmask-{12/23}.c has errors
at compile time, and similar problems exist on various architectures (e.g. x86,
aarch64,riscv, etc.). The reason is that the behavior of the program is the
assembly state, and the vector instruction cannot be recognized in the assembly
stage and an error occurs.

2.FAIL items of common vectorization tests are supported.

When LoongArch architecture supports common vector test cases, GCC regression
testing has many failures. Reasons include a lack of detection of targets
Rules, lack of vectorization options, lack of specific compilation options,
check for instruction set differences and test behavior for program Settings,
etc. For details, see the following patches:

chenxiaolong (8):
  LoongArch: testsuite:Add detection procedures supported by the target.
  LoongArch: testsuite:Modify the test behavior of the
    vect-bic-bitmask-{12,23}.c file.
  LoongArch: testsuite:Added test support for vect-{82,83}.c.
  LoongArch: testsuite:Fix FAIL in file bind_c_array_params_2.f90.
  LoongArch: testsuite:Modify the test behavior in file pr60510.f.
  LoongArch: testsuite:Added additional vectorization "-mlasx"
    compilation option.
  LoongArch: testsuite:Added additional vectorization "-mlsx"
    compilation option.
  LoongArch: testsuite:Modify the result check in the FMA file.

 gcc/testsuite/gcc.dg/fma-3.c                  |   2 +-
 gcc/testsuite/gcc.dg/fma-4.c                  |   2 +-
 gcc/testsuite/gcc.dg/fma-6.c                  |   2 +-
 gcc/testsuite/gcc.dg/fma-7.c                  |   2 +-
 gcc/testsuite/gcc.dg/signbit-2.c              |   1 +
 gcc/testsuite/gcc.dg/tree-ssa/scev-16.c       |   1 +
 gcc/testsuite/gcc.dg/vect/bb-slp-pattern-1.c  |   1 +
 .../gcc.dg/vect/slp-widen-mult-half.c         |   1 +
 gcc/testsuite/gcc.dg/vect/vect-82.c           |   2 +-
 gcc/testsuite/gcc.dg/vect/vect-83.c           |   2 +-
 .../gcc.dg/vect/vect-bic-bitmask-12.c         |   2 +-
 .../gcc.dg/vect/vect-bic-bitmask-23.c         |   2 +-
 .../gcc.dg/vect/vect-widen-mult-const-s16.c   |   1 +
 .../gcc.dg/vect/vect-widen-mult-const-u16.c   |   1 +
 .../gcc.dg/vect/vect-widen-mult-half-u8.c     |   1 +
 .../gcc.dg/vect/vect-widen-mult-half.c        |   1 +
 .../gcc.dg/vect/vect-widen-mult-u16.c         |   1 +
 .../gcc.dg/vect/vect-widen-mult-u8-s16-s32.c  |   1 +
 .../gcc.dg/vect/vect-widen-mult-u8-u32.c      |   1 +
 .../gcc.dg/vect/vect-widen-mult-u8.c          |   1 +
 .../gfortran.dg/bind_c_array_params_2.f90     |   4 +-
 .../gfortran.dg/graphite/vect-pr40979.f90     |   1 +
 .../gfortran.dg/vect/fast-math-mgrid-resid.f  |   1 +
 gcc/testsuite/gfortran.dg/vect/pr60510.f      |   1 -
 gcc/testsuite/lib/target-supports.exp         | 219 +++++++++++++-----
 25 files changed, 186 insertions(+), 68 deletions(-)

-- 
2.20.1

Reply via email to