The current status (for rv64gcv) is:
=== gcc tests ===
Running target unix/-march=rv64gcv
XPASS: gcc.dg/vect/bb-slp-subgroups-3.c -flto -ffat-lto-objects
scan-tree-dump-times slp2 "optimized: basic block" 2
XPASS: gcc.dg/vect/bb-slp-subgroups-3.c scan-tree-dump-times slp2 "optimized:
basic block" 2
XPASS: gcc.dg/vect/no-scevccp-outer-16.c scan-tree-dump-times vect "OUTER LOOP
VECTORIZED." 1
XPASS: gcc.dg/vect/no-scevccp-outer-17.c scan-tree-dump-times vect "OUTER LOOP
VECTORIZED." 1
XPASS: gcc.dg/vect/no-scevccp-outer-19.c scan-tree-dump-times vect "OUTER LOOP
VECTORIZED." 1
XPASS: gcc.dg/vect/no-scevccp-outer-21.c scan-tree-dump-times vect "OUTER LOOP
VECTORIZED." 1
FAIL: gcc.dg/vect/no-scevccp-outer-7.c scan-tree-dump-times vect
"vect_recog_widen_mult_pattern: detected" 1
FAIL: gcc.dg/vect/no-scevccp-vect-iv-3.c scan-tree-dump-times vect
"vect_recog_widen_sum_pattern: detected" 1
FAIL: gcc.dg/vect/pr57705.c -flto -ffat-lto-objects scan-tree-dump-times vect
"vectorized 1 loop" 2
FAIL: gcc.dg/vect/pr57705.c scan-tree-dump-times vect "vectorized 1 loop" 2
FAIL: gcc.dg/vect/pr65518.c -flto -ffat-lto-objects scan-tree-dump-times vect
"vectorized 0 loops in function" 2
FAIL: gcc.dg/vect/pr65518.c scan-tree-dump-times vect "vectorized 0 loops in
function" 2
FAIL: gcc.dg/vect/slp-1.c -flto -ffat-lto-objects scan-tree-dump-times vect
"vectorizing stmts using SLP" 4
FAIL: gcc.dg/vect/slp-1.c scan-tree-dump-times vect "vectorizing stmts using
SLP" 4
FAIL: gcc.dg/vect/slp-12a.c -flto -ffat-lto-objects scan-tree-dump-times vect
"vectorizing stmts using SLP" 1
FAIL: gcc.dg/vect/slp-12a.c scan-tree-dump-times vect "vectorizing stmts using
SLP" 1
FAIL: gcc.dg/vect/slp-16.c -flto -ffat-lto-objects scan-tree-dump-times vect
"vectorizing stmts using SLP" 2
FAIL: gcc.dg/vect/slp-16.c scan-tree-dump-times vect "vectorizing stmts using
SLP" 2
FAIL: gcc.dg/vect/slp-34-big-array.c -flto -ffat-lto-objects
scan-tree-dump-times vect "vectorizing stmts using SLP" 2
FAIL: gcc.dg/vect/slp-34-big-array.c scan-tree-dump-times vect "vectorizing
stmts using SLP" 2
FAIL: gcc.dg/vect/slp-34.c -flto -ffat-lto-objects scan-tree-dump-times vect
"vectorizing stmts using SLP" 2
FAIL: gcc.dg/vect/slp-34.c scan-tree-dump-times vect "vectorizing stmts using
SLP" 2
FAIL: gcc.dg/vect/slp-35.c -flto -ffat-lto-objects scan-tree-dump-times vect
"vectorizing stmts using SLP" 1
FAIL: gcc.dg/vect/slp-35.c scan-tree-dump-times vect "vectorizing stmts using
SLP" 1
XPASS: gcc.dg/vect/slp-reduc-3.c -flto -ffat-lto-objects scan-tree-dump-times
vect "vectorizing stmts using SLP" 1
XPASS: gcc.dg/vect/slp-reduc-3.c scan-tree-dump-times vect "vectorizing stmts
using SLP" 1
FAIL: gcc.dg/vect/slp-reduc-4.c -flto -ffat-lto-objects scan-tree-dump vect
"vectorizing stmts using SLP"
FAIL: gcc.dg/vect/slp-reduc-4.c scan-tree-dump vect "vectorizing stmts using
SLP"
FAIL: gcc.dg/vect/slp-reduc-7.c -flto -ffat-lto-objects execution test
FAIL: gcc.dg/vect/slp-reduc-7.c execution test
XPASS: gcc.dg/vect/vect-24.c -flto -ffat-lto-objects scan-tree-dump-times vect
"vectorized 3 loops" 1
XPASS: gcc.dg/vect/vect-24.c scan-tree-dump-times vect "vectorized 3 loops" 1
FAIL: gcc.dg/vect/vect-alias-check-4.c (test for warnings, line 34)
FAIL: gcc.dg/vect/vect-alias-check-4.c at line 19 (test for warnings, line 17)
FAIL: gcc.dg/vect/vect-alias-check-4.c at line 27 (test for warnings, line 25)
FAIL: gcc.dg/vect/vect-alias-check-4.c (test for excess errors)
FAIL: gcc.dg/vect/vect-alias-check-4.c -flto -ffat-lto-objects (test for
warnings, line 34)
FAIL: gcc.dg/vect/vect-alias-check-4.c -flto -ffat-lto-objects at line 19
(test for warnings, line 17)
FAIL: gcc.dg/vect/vect-alias-check-4.c -flto -ffat-lto-objects at line 27
(test for warnings, line 25)
FAIL: gcc.dg/vect/vect-alias-check-4.c -flto -ffat-lto-objects (test for excess
errors)
FAIL: gcc.dg/vect/vect-bic-bitmask-12.c -flto -ffat-lto-objects scan-tree-dump
dce7 "<=\\\\s*.+{ 255,.+}"
FAIL: gcc.dg/vect/vect-bic-bitmask-12.c scan-tree-dump dce7 "<=\\\\s*.+{
255,.+}"
FAIL: gcc.dg/vect/vect-bic-bitmask-23.c -flto -ffat-lto-objects scan-tree-dump
dce7 "<=\\\\s*.+{ 255, 15, 1, 65535 }"
FAIL: gcc.dg/vect/vect-bic-bitmask-23.c scan-tree-dump dce7 "<=\\\\s*.+{ 255,
15, 1, 65535 }"
FAIL: gcc.dg/vect/vect-multitypes-11.c -flto -ffat-lto-objects
scan-tree-dump-times vect "vectorized 1 loops" 1
FAIL: gcc.dg/vect/vect-multitypes-11.c scan-tree-dump-times vect "vectorized 1
loops" 1
All of these are well understood. For slp-reduc-7.c there is already a fix
posted and we will be needing a vsetvl pass fix after that.
Therefore, I'm going to push this to the trunk.
Note there are also a number of fortran vect failures that we haven't
looked at yet:
=== gfortran tests ===
Running target unix/-march=rv64gcv
FAIL: gfortran.dg/vect/O3-bb-slp-1.f -O (test for excess errors)
FAIL: gfortran.dg/vect/O3-bb-slp-2.f -O (test for excess errors)
FAIL: gfortran.dg/vect/O3-pr36119.f90 -O (test for excess errors)
FAIL: gfortran.dg/vect/O3-pr39595.f -O (test for excess errors)
FAIL: gfortran.dg/vect/Ofast-pr50414.f90 -O (test for excess errors)
FAIL: gfortran.dg/vect/cost-model-pr34445.f -O (test for excess errors)
FAIL: gfortran.dg/vect/cost-model-pr34445a.f -O (test for excess errors)
FAIL: gfortran.dg/vect/fast-math-pr38968.f90 -O (test for excess errors)
FAIL: gfortran.dg/vect/fast-math-real8-pr40801.f90 -O (test for excess
errors)
FAIL: gfortran.dg/vect/fast-math-real8-pr40801.f90 -O (test for excess
errors)
FAIL: gfortran.dg/vect/no-fre-no-copy-prop-O3-pr51704.f90 -O (test for
excess errors)
FAIL: gfortran.dg/vect/pr100981-1.f90 -O (test for excess errors)
FAIL: gfortran.dg/vect/pr106253.f -O (test for excess errors)
FAIL: gfortran.dg/vect/pr107254.f90 -O0 (test for excess errors)
FAIL: gfortran.dg/vect/pr107254.f90 -O1 (test for excess errors)
FAIL: gfortran.dg/vect/pr107254.f90 -O2 (test for excess errors)
FAIL: gfortran.dg/vect/pr107254.f90 -O3 -fomit-frame-pointer -funroll-loops
-fpeel-loops -ftracer -finline-functions (test for excess errors)
FAIL: gfortran.dg/vect/pr107254.f90 -O3 -g (test for excess errors)
FAIL: gfortran.dg/vect/pr107254.f90 -Os (test for excess errors)
FAIL: gfortran.dg/vect/pr108979.f90 -O (test for excess errors)
FAIL: gfortran.dg/vect/pr33301.f -O (test for excess errors)
FAIL: gfortran.dg/vect/pr39318.f90 -O (test for excess errors)
FAIL: gfortran.dg/vect/pr46213.f90 -O (test for excess errors)
FAIL: gfortran.dg/vect/pr49955.f -O (test for excess errors)
FAIL: gfortran.dg/vect/pr50178.f90 -O (test for excess errors)
FAIL: gfortran.dg/vect/pr50412.f90 -O (test for excess errors)
FAIL: gfortran.dg/vect/pr51058-2.f90 -O (test for excess errors)
FAIL: gfortran.dg/vect/pr51058.f90 -O (test for excess errors)
FAIL: gfortran.dg/vect/pr51285.f90 -O (test for excess errors)
FAIL: gfortran.dg/vect/pr61171.f -O (test for excess errors)
FAIL: gfortran.dg/vect/pr62283.f -O (test for excess errors)
FAIL: gfortran.dg/vect/pr69466.f90 -O (test for excess errors)
FAIL: gfortran.dg/vect/pr69882.f90 -O (test for excess errors)
FAIL: gfortran.dg/vect/pr69980.f90 -O (test for excess errors)
FAIL: gfortran.dg/vect/pr70043.f90 -O (test for excess errors)
FAIL: gfortran.dg/vect/pr84913.f90 -O (test for excess errors)
FAIL: gfortran.dg/vect/pr85853.f90 -O0 (test for excess errors)
FAIL: gfortran.dg/vect/pr85853.f90 -O1 (test for excess errors)
FAIL: gfortran.dg/vect/pr85853.f90 -O2 (test for excess errors)
FAIL: gfortran.dg/vect/pr85853.f90 -O3 -fomit-frame-pointer -funroll-loops
-fpeel-loops -ftracer -finline-functions (test for excess errors)
FAIL: gfortran.dg/vect/pr85853.f90 -O3 -g (test for excess errors)
FAIL: gfortran.dg/vect/pr85853.f90 -Os (test for excess errors)
FAIL: gfortran.dg/vect/pr89535.f90 -O (test for excess errors)
FAIL: gfortran.dg/vect/pr90681.f -O (test for excess errors)
FAIL: gfortran.dg/vect/pr95403.f -O (test for excess errors)
FAIL: gfortran.dg/vect/pr96920.f90 -O (test for excess errors)
FAIL: gfortran.dg/vect/pr97761.f90 -O (test for excess errors)
FAIL: gfortran.dg/vect/pr99721.f90 -O (test for excess errors)
FAIL: gfortran.dg/vect/pr99746.f90 -O (test for excess errors)
FAIL: gfortran.dg/vect/pr99807.f90 -O (test for excess errors)
FAIL: gfortran.dg/vect/pr99825.f90 -O (test for excess errors)
FAIL: gfortran.dg/vect/pr99924.f90 -O (test for excess errors)
FAIL: gfortran.dg/vect/vect-5.f90 -O (test for excess errors)
FAIL: gfortran.dg/vect/vect-6.f -O (test for excess errors)
FAIL: gfortran.dg/vect/vect-9.f90 -O (test for excess errors)
FAIL: gfortran.dg/vect/vect-alias-check-1.F90 -O0 (test for excess errors)
FAIL: gfortran.dg/vect/vect-alias-check-1.F90 -O1 (test for excess errors)
FAIL: gfortran.dg/vect/vect-alias-check-1.F90 -O2 (test for excess errors)
FAIL: gfortran.dg/vect/vect-alias-check-1.F90 -O3 -fomit-frame-pointer
-funroll-loops -fpeel-loops -ftracer -finline-functions (test for excess
errors)
FAIL: gfortran.dg/vect/vect-alias-check-1.F90 -O3 -g (test for excess errors)
FAIL: gfortran.dg/vect/vect-alias-check-1.F90 -Os (test for excess errors)
Most (all?) of those are due to:
f951: Warning: command-line option '-Wno-psabi' is valid for
C/C++/D/LTO/ObjC/ObjC++ but not for Fortran
so no real bug.
Regards
Robin