[Bug target/111311] RISC-V regression testsuite errors with --param=riscv-autovec-preference=scalable
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111311 --- Comment #20 from Patrick O'Neill --- (In reply to JuzheZhong from comment #19) > Dump FAILs should be ignored as I said before since they are also failed on > other > targets. I have analyzed all dump FAILs. Got it - I posted all the failures for completeness. Edwin is going to send an RFC soon to XFAIL those dump FAILs.
[Bug target/111311] RISC-V regression testsuite errors with --param=riscv-autovec-preference=scalable
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111311 --- Comment #19 from JuzheZhong --- Dump FAILs should be ignored as I said before since they are also failed on other targets. I have analyzed all dump FAILs.
[Bug target/111311] RISC-V regression testsuite errors with --param=riscv-autovec-preference=scalable
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111311 --- Comment #18 from Patrick O'Neill --- 2023-11-04 -> 2023-11-15 rv64gcv glibc on qemu status update: gcc: 83 -> 46 g++: 13 -> 13 gfortran: 30 -> 14 All of these have been resolved failures, no new regressions replaced resolved ones on rv64gcv during this time period. Data from: https://github.com/patrick-rivos/gcc-postcommit-ci/issues/177 === gcc: Unexpected fails for rv64gcv lp64d medlow === FAIL: c-c++-common/spec-barrier-1.c -Wc++-compat (test for excess errors) FAIL: c-c++-common/vector-subscript-4.c -Wc++-compat scan-tree-dump-not optimized "vector" XPASS: gcc.dg/attr-alloc_size-11.c missing range info for short (test for warnings, line 51) XPASS: gcc.dg/attr-alloc_size-11.c missing range info for signed char (test for warnings, line 50) FAIL: gcc.dg/signbit-2.c scan-tree-dump optimized "\\s+>\\s+{ 0(, 0)+ }" FAIL: gcc.dg/signbit-2.c scan-tree-dump-not optimized "\\s+>>\\s+31" FAIL: gcc.dg/signbit-5.c execution test XPASS: gcc.dg/uninit-pred-9_b.c bogus warning (test for bogus messages, line 20) FAIL: gcc.dg/unroll-8.c scan-rtl-dump loop2_unroll "Not unrolling loop, doesn't roll" FAIL: gcc.dg/unroll-8.c scan-rtl-dump loop2_unroll "likely upper bound: 6" FAIL: gcc.dg/unroll-8.c scan-rtl-dump loop2_unroll "realistic bound: -1" FAIL: gcc.dg/var-expand1.c scan-rtl-dump loop2_unroll "Expanding Accumulator" FAIL: gcc.dg/tree-prof/val-prof-1.c scan-tree-dump optimized "if \\(n_[0-9]* != 257\\)" FAIL: gcc.dg/tree-prof/val-prof-3.c scan-tree-dump optimized "if \\(_[0-9]* \\< n_[0-9]*" FAIL: gcc.dg/tree-prof/val-prof-4.c scan-tree-dump optimized "if \\(n_[0-9]* \\>" FAIL: gcc.dg/tree-ssa/copy-headers-8.c scan-tree-dump-times ch2 "Conditional combines static and invariant" 1 FAIL: gcc.dg/tree-ssa/copy-headers-8.c scan-tree-dump-times ch2 "Will duplicate bb" 2 FAIL: gcc.dg/tree-ssa/cunroll-16.c scan-tree-dump cunroll "optimized: loop with [0-9]+ iterations completely unrolled" FAIL: gcc.dg/tree-ssa/cunroll-16.c scan-tree-dump-not optimized "foo" FAIL: gcc.dg/tree-ssa/gen-vect-34.c scan-tree-dump-times vect "vectorized 1 loops" 1 FAIL: gcc.dg/tree-ssa/loop-bound-1.c scan-tree-dump ivopts "bounded by 254" FAIL: gcc.dg/tree-ssa/loop-bound-2.c scan-tree-dump ivopts "bounded by 254" XPASS: gcc.dg/tree-ssa/pr84512.c scan-tree-dump optimized "return 285;" FAIL: gcc.dg/tree-ssa/predcom-4.c scan-tree-dump-times pcom "Combination" 1 FAIL: gcc.dg/tree-ssa/predcom-4.c scan-tree-dump-times pcom "Unrolling 3 times." 1 FAIL: gcc.dg/tree-ssa/predcom-5.c scan-tree-dump-times pcom "Combination" 2 FAIL: gcc.dg/tree-ssa/predcom-5.c scan-tree-dump-times pcom "Unrolling 3 times." 1 FAIL: gcc.dg/tree-ssa/predcom-9.c scan-tree-dump pcom "Executing predictive commoning without unrolling" FAIL: gcc.dg/tree-ssa/reassoc-46.c scan-tree-dump-times optimized "(?:vect_)?sum_[\\d._]+ = (?:(?:vect_)?_[\\d._]+ \\+ (?:vect_)?sum_[\\d._]+|(?:vect_)?sum_[\\d._]+ \\+ (?:vect_)?_[\\d._]+)" 1 FAIL: gcc.dg/tree-ssa/scev-10.c scan-tree-dump-times ivopts " Type:\\tREFERENCE ADDRESS\n" 1 FAIL: gcc.dg/tree-ssa/scev-11.c scan-tree-dump-times ivopts " Type:\\tREFERENCE ADDRESS\n" 2 FAIL: gcc.dg/tree-ssa/scev-14.c scan-tree-dump ivopts "Overflowness wrto loop niter:\tNo-overflow" FAIL: gcc.dg/tree-ssa/scev-9.c scan-tree-dump-times ivopts " Type:\\tREFERENCE ADDRESS\n" 1 FAIL: gcc.dg/tree-ssa/split-path-11.c scan-tree-dump-times split-paths "join point for if-convertable half-diamond" 1 XPASS: gcc.dg/tree-ssa/ssa-fre-3.c scan-tree-dump fre1 "Replaced \\(int\\) aa_.*with a_" FAIL: gcc.dg/tree-ssa/update-threading.c scan-tree-dump-times optimized "Invalid sum" 0 FAIL: gcc.dg/vect/pr103116-1.c -flto -ffat-lto-objects scan-tree-dump vect "Data access with gaps requires scalar epilogue loop" FAIL: gcc.dg/vect/pr103116-1.c scan-tree-dump vect "Data access with gaps requires scalar epilogue loop" FAIL: gcc.dg/vect/pr103116-2.c -flto -ffat-lto-objects scan-tree-dump vect "peeling for gaps insufficient for access" FAIL: gcc.dg/vect/pr103116-2.c scan-tree-dump vect "peeling for gaps insufficient for access" FAIL: gcc.target/riscv/rvv/autovec/gather-scatter/gather_load_run-12.c execution test FAIL: gcc.target/riscv/rvv/autovec/gather-scatter/gather_load_run-12.c execution test FAIL: gcc.target/riscv/rvv/autovec/gather-scatter/gather_load_run-12.c execution test FAIL: gcc.target/riscv/rvv/autovec/gather-scatter/gather_load_run-12.c execution test FAIL: gcc.target/riscv/rvv/autovec/gather-scatter/gather_load_run-12.c execution test FAIL: gcc.target/riscv/rvv/autovec/gather-scatter/gather_load_run-12.c execution test === g++: Unexpected fails for rv64gcv lp64d medlow === FAIL: c-c++-common/spec-barrier-1.c -std=gnu++14 (test for excess errors) FAIL: c-c++-common/spec-barrier-1.c -std=gnu++17 (test for excess errors) FAIL: c-c++-common/spec-barrier-1.c -std=gnu++20 (test for excess errors) FAIL: c-c++-common/spec-barrier-1.c -std=gnu++98 (test for excess errors) FAIL:
[Bug target/111311] RISC-V regression testsuite errors with --param=riscv-autovec-preference=scalable
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111311 Edwin Lu changed: What|Removed |Added CC||ewlu at rivosinc dot com --- Comment #17 from Edwin Lu --- (In reply to Patrick O'Neill from comment #8) > === gcc: Unexpected fails for rv64gcv lp64d medlow === > FAIL: gcc.dg/unroll-8.c scan-rtl-dump loop2_unroll "Not unrolling loop, > doesn't roll" > FAIL: gcc.dg/unroll-8.c scan-rtl-dump loop2_unroll "likely upper bound: 6" > FAIL: gcc.dg/unroll-8.c scan-rtl-dump loop2_unroll "realistic bound: -1" tracked in https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112531
[Bug target/111311] RISC-V regression testsuite errors with --param=riscv-autovec-preference=scalable
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111311 --- Comment #16 from Vineet Gupta --- (In reply to Patrick O'Neill from comment #8) > Updated regression list using r14-5070-g4ea36076d66 on rv64gcv: > > === gcc: Unexpected fails for rv64gcv lp64d medlow === > FAIL: gcc.c-torture/execute/memset-3.c -O3 -fomit-frame-pointer > -funroll-loops -fpeel-loops -ftracer -finline-functions execution test > FAIL: gcc.c-torture/execute/memset-3.c -O3 -g execution test memset-3 failure tracked separately: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112447
[Bug target/111311] RISC-V regression testsuite errors with --param=riscv-autovec-preference=scalable
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111311 --- Comment #15 from JuzheZhong --- Update status: There are only these following dump FAILs: FAIL: gcc.dg/signbit-2.c scan-tree-dump optimized "\\s+>\\s+{ 0(, 0)+ }" FAIL: gcc.dg/signbit-2.c scan-tree-dump-not optimized "\\s+>>\\s+31" XPASS: gcc.dg/uninit-pred-9_b.c bogus warning (test for bogus messages, line 20) FAIL: gcc.dg/var-expand1.c scan-rtl-dump loop2_unroll "Expanding Accumulator" FAIL: gcc.dg/tree-ssa/gen-vect-34.c scan-tree-dump-times vect "vectorized 1 loops" 1 FAIL: gcc.dg/tree-ssa/loop-bound-1.c scan-tree-dump ivopts "bounded by 254" FAIL: gcc.dg/tree-ssa/loop-bound-2.c scan-tree-dump ivopts "bounded by 254" XPASS: gcc.dg/tree-ssa/pr84512.c scan-tree-dump optimized "return 285;" FAIL: gcc.dg/tree-ssa/predcom-4.c scan-tree-dump-times pcom "Combination" 1 FAIL: gcc.dg/tree-ssa/predcom-4.c scan-tree-dump-times pcom "Unrolling 3 times." 1 FAIL: gcc.dg/tree-ssa/predcom-5.c scan-tree-dump-times pcom "Combination" 2 FAIL: gcc.dg/tree-ssa/predcom-5.c scan-tree-dump-times pcom "Unrolling 3 times." 1 FAIL: gcc.dg/tree-ssa/predcom-9.c scan-tree-dump pcom "Executing predictive commoning without unrolling" FAIL: gcc.dg/tree-ssa/reassoc-46.c scan-tree-dump-times optimized "(?:vect_)?sum_[\\d._]+ = (?:(?:vect_)?_[\\d._]+ \\+ (?:vect_)?sum_[\\d._]+|(?:vect_)?sum_[\\d._]+ \\+ (?:vect_)?_[\\d._]+)" 1 FAIL: gcc.dg/tree-ssa/scev-10.c scan-tree-dump-times ivopts " Type:\\tREFERENCE ADDRESS\n" 1 FAIL: gcc.dg/tree-ssa/scev-11.c scan-tree-dump-times ivopts " Type:\\tREFERENCE ADDRESS\n" 2 FAIL: gcc.dg/tree-ssa/scev-14.c scan-tree-dump ivopts "Overflowness wrto loop niter:\tNo-overflow" FAIL: gcc.dg/tree-ssa/scev-9.c scan-tree-dump-times ivopts " Type:\\tREFERENCE ADDRESS\n" 1 FAIL: gcc.dg/tree-ssa/split-path-11.c scan-tree-dump-times split-paths "join point for if-convertable half-diamond" 1 Confirm these FAILs also happen on ARM SVE and they don't fix them. So, it doesn't make sense we dedicate efforts to fix them. Just ignore them. Other than that, we have 2 more FAILs in vect testsuite, these 2 patches will fix them: https://gcc.gnu.org/pipermail/gcc-patches/2023-November/635589.html https://gcc.gnu.org/pipermail/gcc-patches/2023-November/635591.html After these 2 patches, no dump FAILs need to be fixed, just ignore other dump FAILs should be reasonable. Then, we move forward to fix execution FAILs.
[Bug target/111311] RISC-V regression testsuite errors with --param=riscv-autovec-preference=scalable
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111311 --- Comment #14 from Jeffrey A. Law --- As Andrew said, if there's a test that depends on behavior of -INT_MIN, then the test needs to be fixed. That's undefined behavior.
[Bug target/111311] RISC-V regression testsuite errors with --param=riscv-autovec-preference=scalable
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111311 --- Comment #13 from Andrew Pinski --- (In reply to JuzheZhong from comment #12) > signbit execution issue should be ignored. It's ISA issue not compiler issue. > > I knew this issue long time ago and confirm Clang has the sam issue: > > https://github.com/riscv-collab/riscv-gnu-toolchain/issues/1075 INT_MIN well negativing INT_MIN is undefined ... If there is a testcase that depends on that, we should fix the testcase (now with -fwrapv it should be well defined).
[Bug target/111311] RISC-V regression testsuite errors with --param=riscv-autovec-preference=scalable
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111311 --- Comment #12 from JuzheZhong --- signbit execution issue should be ignored. It's ISA issue not compiler issue. I knew this issue long time ago and confirm Clang has the sam issue: https://github.com/riscv-collab/riscv-gnu-toolchain/issues/1075
[Bug target/111311] RISC-V regression testsuite errors with --param=riscv-autovec-preference=scalable
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111311 --- Comment #11 from Vineet Gupta --- (In reply to Robin Dapp from comment #10) > As a general remark: Some of those are present on other backends as well, > some have been introduced by recent common-code changes and some are bogus > test prerequisites or checks. Is is possible to this identification (so we can at least mark them xfail or some such). A lot of folks working on middle-end know this for certain, but for the mere mortals every test failure seems just the same and equally important :-)
[Bug target/111311] RISC-V regression testsuite errors with --param=riscv-autovec-preference=scalable
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111311 --- Comment #10 from Robin Dapp --- As a general remark: Some of those are present on other backends as well, some have been introduced by recent common-code changes and some are bogus test prerequisites or checks. I'm not saying we are in perfect shape but we have several months to deal with most of those - if there is a high-severity bug we can of course still do common code changes if necessary, although the bar will be higher. FYI 5ish of the mentioned bugs will be gone with the slp-reduc-7.c fix but it will introduce another backend missed optimization - at first this might appear worse (just by numbers) but it actually isn't. Once stage 1 is over I'm going to focus on the Fortran tests as well as the signbit execution tests (in case they are still there at that time).
[Bug target/111311] RISC-V regression testsuite errors with --param=riscv-autovec-preference=scalable
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111311 --- Comment #8 from Patrick O'Neill --- Updated regression list using r14-5070-g4ea36076d66 on rv64gcv: === gcc: Unexpected fails for rv64gcv lp64d medlow === FAIL: gcc.c-torture/execute/memset-3.c -O3 -fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer -finline-functions execution test FAIL: gcc.c-torture/execute/memset-3.c -O3 -g execution test FAIL: c-c++-common/spec-barrier-1.c -Wc++-compat (test for excess errors) FAIL: c-c++-common/vector-subscript-4.c -Wc++-compat scan-tree-dump-not optimized "vector" XPASS: gcc.dg/attr-alloc_size-11.c missing range info for short (test for warnings, line 51) XPASS: gcc.dg/attr-alloc_size-11.c missing range info for signed char (test for warnings, line 50) FAIL: gcc.dg/signbit-2.c scan-tree-dump optimized "\\s+>\\s+{ 0(, 0)+ }" FAIL: gcc.dg/signbit-2.c scan-tree-dump-not optimized "\\s+>>\\s+31" FAIL: gcc.dg/signbit-5.c execution test XPASS: gcc.dg/uninit-pred-9_b.c bogus warning (test for bogus messages, line 20) FAIL: gcc.dg/unroll-8.c scan-rtl-dump loop2_unroll "Not unrolling loop, doesn't roll" FAIL: gcc.dg/unroll-8.c scan-rtl-dump loop2_unroll "likely upper bound: 6" FAIL: gcc.dg/unroll-8.c scan-rtl-dump loop2_unroll "realistic bound: -1" FAIL: gcc.dg/var-expand1.c scan-rtl-dump loop2_unroll "Expanding Accumulator" FAIL: gcc.dg/tree-prof/val-prof-1.c scan-tree-dump optimized "if \\(n_[0-9]* != 257\\)" FAIL: gcc.dg/tree-prof/val-prof-3.c scan-tree-dump optimized "if \\(_[0-9]* \\< n_[0-9]*" FAIL: gcc.dg/tree-prof/val-prof-4.c scan-tree-dump optimized "if \\(n_[0-9]* \\>" FAIL: gcc.dg/tree-ssa/copy-headers-8.c scan-tree-dump-times ch2 "Conditional combines static and invariant" 1 FAIL: gcc.dg/tree-ssa/copy-headers-8.c scan-tree-dump-times ch2 "Will duplicate bb" 2 FAIL: gcc.dg/tree-ssa/cunroll-16.c scan-tree-dump cunroll "optimized: loop with [0-9]+ iterations completely unrolled" FAIL: gcc.dg/tree-ssa/cunroll-16.c scan-tree-dump-not optimized "foo" FAIL: gcc.dg/tree-ssa/gen-vect-11b.c scan-tree-dump-times vect "vectorized 0 loops" 1 FAIL: gcc.dg/tree-ssa/gen-vect-11c.c scan-tree-dump-times vect "vectorized 0 loops" 1 FAIL: gcc.dg/tree-ssa/gen-vect-26.c scan-tree-dump-times vect "Alignment of access forced using peeling" 1 FAIL: gcc.dg/tree-ssa/gen-vect-28.c scan-tree-dump-times vect "Alignment of access forced using peeling" 1 FAIL: gcc.dg/tree-ssa/gen-vect-34.c scan-tree-dump-times vect "vectorized 1 loops" 1 FAIL: gcc.dg/tree-ssa/loop-bound-1.c scan-tree-dump ivopts "bounded by 254" FAIL: gcc.dg/tree-ssa/loop-bound-2.c scan-tree-dump ivopts "bounded by 254" XPASS: gcc.dg/tree-ssa/pr84512.c scan-tree-dump optimized "return 285;" FAIL: gcc.dg/tree-ssa/predcom-4.c scan-tree-dump-times pcom "Combination" 1 FAIL: gcc.dg/tree-ssa/predcom-4.c scan-tree-dump-times pcom "Unrolling 3 times." 1 FAIL: gcc.dg/tree-ssa/predcom-5.c scan-tree-dump-times pcom "Combination" 2 FAIL: gcc.dg/tree-ssa/predcom-5.c scan-tree-dump-times pcom "Unrolling 3 times." 1 FAIL: gcc.dg/tree-ssa/predcom-9.c scan-tree-dump pcom "Executing predictive commoning without unrolling" FAIL: gcc.dg/tree-ssa/reassoc-46.c scan-tree-dump-times optimized "(?:vect_)?sum_[\\d._]+ = (?:(?:vect_)?_[\\d._]+ \\+ (?:vect_)?sum_[\\d._]+|(?:vect_)?sum_[\\d._]+ \\+ (?:vect_)?_[\\d._]+)" 1 FAIL: gcc.dg/tree-ssa/scev-10.c scan-tree-dump-times ivopts " Type:\\tREFERENCE ADDRESS\n" 1 FAIL: gcc.dg/tree-ssa/scev-11.c scan-tree-dump-times ivopts " Type:\\tREFERENCE ADDRESS\n" 2 FAIL: gcc.dg/tree-ssa/scev-14.c scan-tree-dump ivopts "Overflowness wrto loop niter:\tNo-overflow" FAIL: gcc.dg/tree-ssa/scev-9.c scan-tree-dump-times ivopts " Type:\\tREFERENCE ADDRESS\n" 1 FAIL: gcc.dg/tree-ssa/split-path-11.c scan-tree-dump-times split-paths "join point for if-convertable half-diamond" 1 XPASS: gcc.dg/tree-ssa/ssa-fre-3.c scan-tree-dump fre1 "Replaced \\(int\\) aa_.*with a_" FAIL: gcc.dg/tree-ssa/update-threading.c scan-tree-dump-times optimized "Invalid sum" 0 FAIL: gcc.dg/vect/bb-slp-33.c -flto -ffat-lto-objects scan-tree-dump-times slp2 "vectorizing stmts using SLP" 2 FAIL: gcc.dg/vect/bb-slp-33.c scan-tree-dump-times slp2 "vectorizing stmts using SLP" 2 FAIL: gcc.dg/vect/bb-slp-39.c -flto -ffat-lto-objects scan-tree-dump-times slp2 "vectorizing stmts using SLP" 3 FAIL: gcc.dg/vect/bb-slp-39.c scan-tree-dump-times slp2 "vectorizing stmts using SLP" 3 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" FAIL: gcc.dg/vect/bb-slp-cond-1.c -flto -ffat-lto-objects scan-tree-dump-times vect "loop vectorized" 1 FAIL: gcc.dg/vect/bb-slp-cond-1.c scan-tree-dump-times vect "loop vectorized" 1 FAIL: gcc.dg/vect/bb-slp-over-widen-1.c -flto -ffat-lto-objects scan-tree-dump-times slp2 "optimized: basic block" 2 FAIL: gcc.dg/vect/bb-slp-over-widen-1.c scan-tree-dump-times slp2 "optimized: basic block" 2 FAIL:
[Bug target/111311] RISC-V regression testsuite errors with --param=riscv-autovec-preference=scalable
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111311 --- Comment #9 from Vineet Gupta --- (In reply to Patrick O'Neill from comment #8) > Updated regression list using r14-5070-g4ea36076d66 on rv64gcv: > > Failure list from: > https://github.com/patrick-rivos/gcc-postcommit-ci/issues/109 And just for completeness, we have this as starting point of investigation. linux: rv64gc lp64d medlow 34/17 13/430/5 linux: rv64gcv lp64d medlow multilib83/52 13/430/11
[Bug target/111311] RISC-V regression testsuite errors with --param=riscv-autovec-preference=scalable
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111311 --- Comment #7 from CVS Commits --- The master branch has been updated by Pan Li : https://gcc.gnu.org/g:88a0a883960910530bfefa750461168f539f4a00 commit r14-3840-g88a0a883960910530bfefa750461168f539f4a00 Author: Juzhe-Zhong Date: Thu Sep 7 15:28:31 2023 +0800 RISC-V: Enable RVV scalable vectorization by default[PR111311] This patch is not ready but they all will be fixed very soon. gcc/ChangeLog: PR target/111311 * config/riscv/riscv.opt: Set default as scalable vectorization.
[Bug target/111311] RISC-V regression testsuite errors with --param=riscv-autovec-preference=scalable
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111311 --- Comment #6 from CVS Commits --- The trunk branch has been updated by Lehua Ding : https://gcc.gnu.org/g:d05aac047e0643d5c32b706c4c3b12e13f35e19a commit r14-3834-gd05aac047e0643d5c32b706c4c3b12e13f35e19a Author: Juzhe-Zhong Date: Mon Sep 11 11:25:02 2023 +0800 RISC-V: Add VLS modes VEC_PERM support[PR111311] This patch add VLS modes VEC_PERM support which fix these following FAILs in https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111311: FAIL: gcc.dg/tree-ssa/forwprop-40.c scan-tree-dump-times optimized "BIT_FIELD_REF" 0 FAIL: gcc.dg/tree-ssa/forwprop-40.c scan-tree-dump-times optimized "BIT_INSERT_EXPR" 0 FAIL: gcc.dg/tree-ssa/forwprop-41.c scan-tree-dump-times optimized "BIT_FIELD_REF" 0 FAIL: gcc.dg/tree-ssa/forwprop-41.c scan-tree-dump-times optimized "BIT_INSERT_EXPR" 1 These FAILs are fixed after this patch. PR target/111311 gcc/ChangeLog: * config/riscv/autovec.md: Add VLS modes. * config/riscv/riscv-protos.h (cmp_lmul_le_one): New function. (cmp_lmul_gt_one): Ditto. * config/riscv/riscv-v.cc (cmp_lmul_le_one): Ditto. (cmp_lmul_gt_one): Ditto. * config/riscv/riscv.cc (riscv_print_operand): Add VLS modes. (riscv_vectorize_vec_perm_const): Ditto. * config/riscv/vector-iterators.md: Ditto. * config/riscv/vector.md: Ditto. gcc/testsuite/ChangeLog: * gcc.target/riscv/rvv/autovec/partial/slp-1.c: Adapt test. * gcc.target/riscv/rvv/autovec/partial/slp-16.c: Ditto. * gcc.target/riscv/rvv/autovec/partial/slp-17.c: Ditto. * gcc.target/riscv/rvv/autovec/partial/slp-3.c: Ditto. * gcc.target/riscv/rvv/autovec/partial/slp-5.c: Ditto. * gcc.target/riscv/rvv/autovec/vls/compress-1.c: New test. * gcc.target/riscv/rvv/autovec/vls/compress-2.c: New test. * gcc.target/riscv/rvv/autovec/vls/compress-3.c: New test. * gcc.target/riscv/rvv/autovec/vls/compress-4.c: New test. * gcc.target/riscv/rvv/autovec/vls/compress-5.c: New test. * gcc.target/riscv/rvv/autovec/vls/compress-6.c: New test. * gcc.target/riscv/rvv/autovec/vls/merge-1.c: New test. * gcc.target/riscv/rvv/autovec/vls/merge-2.c: New test. * gcc.target/riscv/rvv/autovec/vls/merge-3.c: New test. * gcc.target/riscv/rvv/autovec/vls/merge-4.c: New test. * gcc.target/riscv/rvv/autovec/vls/merge-5.c: New test. * gcc.target/riscv/rvv/autovec/vls/merge-6.c: New test. * gcc.target/riscv/rvv/autovec/vls/merge-7.c: New test. * gcc.target/riscv/rvv/autovec/vls/perm-1.c: New test. * gcc.target/riscv/rvv/autovec/vls/perm-2.c: New test. * gcc.target/riscv/rvv/autovec/vls/perm-3.c: New test. * gcc.target/riscv/rvv/autovec/vls/perm-4.c: New test. * gcc.target/riscv/rvv/autovec/vls/perm-5.c: New test. * gcc.target/riscv/rvv/autovec/vls/perm-6.c: New test. * gcc.target/riscv/rvv/autovec/vls/perm-7.c: New test.
[Bug target/111311] RISC-V regression testsuite errors with --param=riscv-autovec-preference=scalable
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111311 --- Comment #5 from CVS Commits --- The master branch has been updated by Pan Li : https://gcc.gnu.org/g:0d50facd937bda26e3083046dc5dec8fca47e1e6 commit r14-3825-g0d50facd937bda26e3083046dc5dec8fca47e1e6 Author: Juzhe-Zhong Date: Sun Sep 10 07:57:44 2023 +0800 RISC-V: Fix dump FILE of VSETVL PASS[PR111311] To make the dump FILE not too big, add TDF_DETAILS. This patch fix these following FAILs in https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111311 FAIL: gcc.c-torture/unsorted/dump-noaddr.c.*r.vsetvl, -O3 -fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer -finline-functions comparison FAIL: gcc.c-torture/unsorted/dump-noaddr.c.*r.vsetvl, -O3 -g comparison gcc/ChangeLog: PR target/111311 * config/riscv/riscv-vsetvl.cc (pass_vsetvl::vsetvl_fusion): Add TDF_DETAILS. (pass_vsetvl::pre_vsetvl): Ditto. (pass_vsetvl::init): Ditto. (pass_vsetvl::lazy_vsetvl): Ditto.
[Bug target/111311] RISC-V regression testsuite errors with --param=riscv-autovec-preference=scalable
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111311 --- Comment #4 from JuzheZhong --- Update status: All C++ FAILs are fixed. There are only 38 FAILs in total: FAIL: gcc.c-torture/unsorted/dump-noaddr.c.*r.vsetvl, -O3 -fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer -finline-functions compariso n FAIL: gcc.c-torture/unsorted/dump-noaddr.c.*r.vsetvl, -O3 -g comparison FAIL: gcc.dg/Wstringop-overflow-70.c (test for warnings, line 22) FAIL: gcc.dg/pr104992.c scan-tree-dump-times optimized " % " 9 FAIL: gcc.dg/pr70252.c (internal compiler error: in gimple_expand_vec_cond_expr, at gimple-isel.cc:284) FAIL: gcc.dg/pr70252.c (test for excess errors) FAIL: gcc.dg/pr92301.c execution test FAIL: gcc.dg/signbit-2.c scan-tree-dump-not optimized "\\s+>>\\s+31" FAIL: gcc.dg/signbit-5.c execution test FAIL: gcc.dg/unroll-8.c scan-rtl-dump loop2_unroll "Not unrolling loop, doesn't roll" FAIL: gcc.dg/unroll-8.c scan-rtl-dump loop2_unroll "likely upper bound: 6" FAIL: gcc.dg/unroll-8.c scan-rtl-dump loop2_unroll "realistic bound: -1" FAIL: gcc.dg/var-expand1.c scan-rtl-dump loop2_unroll "Expanding Accumulator" FAIL: gcc.dg/tree-ssa/cunroll-16.c scan-tree-dump cunroll "optimized: loop with [0-9]+ iterations completely unrolled" FAIL: gcc.dg/tree-ssa/cunroll-16.c scan-tree-dump-not optimized "foo" FAIL: gcc.dg/tree-ssa/forwprop-40.c scan-tree-dump-times optimized "BIT_FIELD_REF" 0 FAIL: gcc.dg/tree-ssa/forwprop-40.c scan-tree-dump-times optimized "BIT_INSERT_EXPR" 0 FAIL: gcc.dg/tree-ssa/forwprop-41.c scan-tree-dump-times optimized "BIT_FIELD_REF" 0 FAIL: gcc.dg/tree-ssa/forwprop-41.c scan-tree-dump-times optimized "BIT_INSERT_EXPR" 1 FAIL: gcc.dg/tree-ssa/gen-vect-11b.c scan-tree-dump-times vect "vectorized 0 loops" 1 FAIL: gcc.dg/tree-ssa/gen-vect-11c.c scan-tree-dump-times vect "vectorized 0 loops" 1 FAIL: gcc.dg/tree-ssa/gen-vect-26.c scan-tree-dump-times vect "Alignment of access forced using peeling" 1 FAIL: gcc.dg/tree-ssa/gen-vect-28.c scan-tree-dump-times vect "Alignment of access forced using peeling" 1 FAIL: gcc.dg/tree-ssa/loop-bound-1.c scan-tree-dump ivopts "bounded by 254" FAIL: gcc.dg/tree-ssa/loop-bound-2.c scan-tree-dump ivopts "bounded by 254" FAIL: gcc.dg/tree-ssa/predcom-2.c scan-tree-dump-times pcom "Unrolling 2 times." 2 FAIL: gcc.dg/tree-ssa/predcom-4.c scan-tree-dump-times pcom "Combination" 1 FAIL: gcc.dg/tree-ssa/predcom-4.c scan-tree-dump-times pcom "Unrolling 3 times." 1 FAIL: gcc.dg/tree-ssa/predcom-5.c scan-tree-dump-times pcom "Combination" 2 FAIL: gcc.dg/tree-ssa/predcom-5.c scan-tree-dump-times pcom "Unrolling 3 times." 1 FAIL: gcc.dg/tree-ssa/predcom-9.c scan-tree-dump pcom "Executing predictive commoning without unrolling" FAIL: gcc.dg/tree-ssa/reassoc-46.c scan-tree-dump-times optimized "(?:vect_)?sum_[\\d._]+ = (?:(?:vect_)?_[\\d._]+ \\+ (?:vect_)?sum_[\\d._]+|(?:v ect_)?sum_[\\d._]+ \\+ (?:vect_)?_[\\d._]+)" 1 FAIL: gcc.dg/tree-ssa/scev-10.c scan-tree-dump-times ivopts " Type:\\tREFERENCE ADDRESS\n" 1 FAIL: gcc.dg/tree-ssa/scev-11.c scan-tree-dump-times ivopts " Type:\\tREFERENCE ADDRESS\n" 2 FAIL: gcc.dg/tree-ssa/scev-14.c scan-tree-dump ivopts "Overflowness wrto loop niter:\tNo-overflow" FAIL: gcc.dg/tree-ssa/scev-9.c scan-tree-dump-times ivopts " Type:\\tREFERENCE ADDRESS\n" 1 FAIL: gcc.dg/tree-ssa/split-path-11.c scan-tree-dump-times split-paths "join point for if-convertable half-diamond" 1 FAIL: gcc.target/riscv/rvv/base/vector-abi-9.c (test for warnings, line 9) Most of them are Dump FAIL which are because of missing VLS modes patterns. Will address them soon
[Bug target/111311] RISC-V regression testsuite errors with --param=riscv-autovec-preference=scalable
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111311 --- Comment #3 from JuzheZhong --- Confirm master GCC FAILs: gcc FAILs: 166 FAIL: gcc.c-torture/execute/pr53645-2.c -O2 -flto -fuse-linker-plugin -fno-fat-lto-objects (test for excess errors) FAIL: gcc.c-torture/execute/pr53645.c -O2 -flto -fuse-linker-plugin -fno-fat-lto-objects (test for excess errors) FAIL: gcc.c-torture/unsorted/dump-noaddr.c.*r.vsetvl, -O3 -fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer -finline-functions comparison FAIL: gcc.c-torture/unsorted/dump-noaddr.c.*r.vsetvl, -O3 -g comparison FAIL: gcc.dg/analyzer/pr105252.c (test for excess errors) FAIL: gcc.dg/analyzer/pr96713.c (internal compiler error: in emit_move_multi_word, at expr.cc:4079) FAIL: gcc.dg/analyzer/pr96713.c (test for excess errors) FAIL: c-c++-common/opaque-vector.c -Wc++-compat (internal compiler error: in emit_move_multi_word, at expr.cc:4079) FAIL: c-c++-common/opaque-vector.c -Wc++-compat (test for excess errors) FAIL: c-c++-common/pr105998.c -Wc++-compat (internal compiler error: in emit_move_multi_word, at expr.cc:4079) FAIL: c-c++-common/pr105998.c -Wc++-compat (test for excess errors) FAIL: c-c++-common/scal-to-vec2.c -Wc++-compat (test for excess errors) FAIL: c-c++-common/vector-compare-1.c -Wc++-compat (test for excess errors) FAIL: c-c++-common/vector-compare-2.c -Wc++-compat (test for excess errors) FAIL: c-c++-common/vector-scalar.c -Wc++-compat (internal compiler error: in emit_move_multi_word, at expr.cc:4079) FAIL: c-c++-common/vector-scalar.c -Wc++-compat (test for excess errors) FAIL: gcc.dg/Wstrict-aliasing-bogus-ref-all-2.c (test for excess errors) XPASS: gcc.dg/Wstringop-overflow-47.c pr97027 (test for warnings, line 72) XPASS: gcc.dg/Wstringop-overflow-47.c pr97027 (test for warnings, line 77) XPASS: gcc.dg/Wstringop-overflow-47.c pr97027 note (test for warnings, line 68) FAIL: gcc.dg/Wstringop-overflow-70.c (test for warnings, line 22) FAIL: gcc.dg/pr100239.c (internal compiler error: in emit_move_multi_word, at expr.cc:4079) FAIL: gcc.dg/pr100239.c (test for excess errors) FAIL: gcc.dg/pr100292.c (test for excess errors) FAIL: gcc.dg/pr104992.c scan-tree-dump-times optimized " % " 9 FAIL: gcc.dg/pr105049.c (test for excess errors) FAIL: gcc.dg/pr108805.c (test for excess errors) FAIL: gcc.dg/pr34856.c (test for excess errors) FAIL: gcc.dg/pr35442.c (test for excess errors) FAIL: gcc.dg/pr53060.c (test for excess errors) FAIL: gcc.dg/pr63914.c (test for excess errors) FAIL: gcc.dg/pr70252.c (internal compiler error: in gimple_expand_vec_cond_expr, at gimple-isel.cc:284) FAIL: gcc.dg/pr70252.c (test for excess errors) FAIL: gcc.dg/pr85430.c (test for excess errors) FAIL: gcc.dg/pr85467.c (test for excess errors) FAIL: gcc.dg/pr92301.c execution test FAIL: gcc.dg/pr96453.c (test for excess errors) FAIL: gcc.dg/pr96466.c (test for excess errors) FAIL: gcc.dg/pr97238.c (internal compiler error: in emit_move_multi_word, at expr.cc:4079) FAIL: gcc.dg/pr97238.c (test for excess errors) FAIL: gcc.dg/signbit-2.c scan-tree-dump-not optimized "\\s+>>\\s+31" FAIL: gcc.dg/signbit-5.c execution test FAIL: gcc.dg/unroll-8.c scan-rtl-dump loop2_unroll "Not unrolling loop, doesn't roll" FAIL: gcc.dg/unroll-8.c scan-rtl-dump loop2_unroll "likely upper bound: 6" FAIL: gcc.dg/unroll-8.c scan-rtl-dump loop2_unroll "realistic bound: -1" FAIL: gcc.dg/var-expand1.c scan-rtl-dump loop2_unroll "Expanding Accumulator" FAIL: gcc.dg/vshift-6.c (test for excess errors) FAIL: gcc.dg/vshift-7.c (test for excess errors) FAIL: gcc.dg/ipa/ipa-sra-19.c (test for excess errors) FAIL: c-c++-common/torture/builtin-convertvector-2.c -O0 (test for excess errors) FAIL: c-c++-common/torture/builtin-convertvector-2.c -O1 (test for excess errors) FAIL: c-c++-common/torture/builtin-convertvector-2.c -O2 (test for excess errors) FAIL: c-c++-common/torture/builtin-convertvector-2.c -O2 -flto -fno-use-linker-plugin -flto-partition=none (test for excess errors) FAIL: c-c++-common/torture/builtin-convertvector-2.c -O3 -g (test for excess errors) FAIL: c-c++-common/torture/builtin-convertvector-2.c -Os (test for excess errors) FAIL: c-c++-common/torture/builtin-shufflevector-2.c -O0 (internal compiler error: in emit_move_multi_word, at expr.cc:4079) FAIL: c-c++-common/torture/builtin-shufflevector-2.c -O0 (test for excess errors) FAIL: c-c++-common/torture/builtin-shufflevector-2.c -O1 (test for excess errors) FAIL: c-c++-common/torture/builtin-shufflevector-2.c -O2 (test for excess errors) FAIL: c-c++-common/torture/builtin-shufflevector-2.c -O2 -flto -fno-use-linker-plugin -flto-partition=none (test for excess errors) FAIL: c-c++-common/torture/builtin-shufflevector-2.c -O2 -flto -fuse-linker-plugin -fno-fat-lto-objects (test for excess errors) FAIL: c-c++-common/torture/builtin-shufflevector-2.c -O3 -fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer -finline-functions (test for excess errors) FAIL:
[Bug target/111311] RISC-V regression testsuite errors with --param=riscv-autovec-preference=scalable
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111311 --- Comment #2 from JuzheZhong --- All FAILS in this PR are not a big deal which will be easily addressed (except LTO). We should enable vect.exp tests which have full coverage of vector tests. But we are still have 2 real FAILS (current 46FAILS = 44 dump FAILs and 2 execution FAILs). https://gcc.gnu.org/pipermail/gcc-patches/2023-August/628838.html I am waiting for those 2 real FAILS are fixed then merge that patch.
[Bug target/111311] RISC-V regression testsuite errors with --param=riscv-autovec-preference=scalable
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111311 --- Comment #1 from JuzheZhong --- Except the known issue (LTO issue). All other issues are either bugus FAILS or very simple bugs. Fixing them just need a few days (maybe 2 ~ 3days). I will fix them first before sending new feature patches and the future new patches should always pass all regression tests with enablig vector extension.