vect: Allow same precision for bit-precision conversions.
In PR111794 we miss a vectorization because on riscv type precision and mode precision differ for mask types. We can still vectorize when allowing assignments with the same precision for dest and source which is what this patch does. gcc/ChangeLog: PR tree-optimization/111794 * tree-vect-stmts.cc (vectorizable_assignment): Add same-precision exception for dest and source. gcc/testsuite/ChangeLog: * gcc.target/riscv/rvv/autovec/slp-mask-1.c: New test. * gcc.target/riscv/rvv/autovec/slp-mask-run-1.c: New test.
Showing
- gcc/testsuite/gcc.target/riscv/rvv/autovec/slp-mask-1.c 18 additions, 0 deletionsgcc/testsuite/gcc.target/riscv/rvv/autovec/slp-mask-1.c
- gcc/testsuite/gcc.target/riscv/rvv/autovec/slp-mask-run-1.c 31 additions, 0 deletionsgcc/testsuite/gcc.target/riscv/rvv/autovec/slp-mask-run-1.c
- gcc/tree-vect-stmts.cc 7 additions, 5 deletionsgcc/tree-vect-stmts.cc
Loading
Please register or sign in to comment