[PATCH] D125747: [RISCV] Enable scalable vectorization by default for RVV

Philip Reames via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Jun 2 12:28:38 PDT 2022


reames requested changes to this revision.
reames added a comment.
This revision now requires changes to proceed.

FYI, we seem to have some lurking functional issues with scalable vectorization.  I tend to use sqllite as an easy test case for spotting assembly issues, and trying it with scalable vectorization (and without specifying a min vector length), promptly crashed.

  clang -isystem /.../gnu-toolchain/sysroot/usr/include/ --target=riscv64 -Xclang -target-feature -Xclang +v,+f,+m,+c,+d,+zba sqlite-autoconf-3380500/sqlite3.c -c -O2 -S -mllvm -scalable-vectorization=on

The crash is:
Warning: Invalid size request on a scalable vector; Possible incorrect use of MVT::getVectorNumElements() for scalable vector. Scalable flag may be dropped, use MVT::getVectorElementCount() instead
clang: /home/preames/llvm-dev/llvm-project/llvm/include/llvm/ADT/Optional.h:195: T& llvm::optional_detail::OptionalStorage<T, true>::getValue() & [with T = long int]: Assertion `hasVal' failed.
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace, preprocessed source, and associated run script.
With the last interesting frame being:  llvm::CodeMetrics::analyzeBasicBlock


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D125747/new/

https://reviews.llvm.org/D125747



More information about the llvm-commits mailing list