[all-commits] [llvm/llvm-project] f7bb69: [RISCV] Implement isElementTypeLegalForScalableVec...
Philip Reames via All-commits
all-commits at lists.llvm.org
Fri Jun 10 13:21:29 PDT 2022
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: f7bb691d6140e83699a89c4adf67c1d850852a9c
https://github.com/llvm/llvm-project/commit/f7bb691d6140e83699a89c4adf67c1d850852a9c
Author: Philip Reames <preames at rivosinc.com>
Date: 2022-06-10 (Fri, 10 Jun 2022)
Changed paths:
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.h
A llvm/test/Transforms/LoopVectorize/RISCV/illegal-type.ll
Log Message:
-----------
[RISCV] Implement isElementTypeLegalForScalableVector TTI hook
This brings us into alignment with AArch64, and in the process fixes a compiler crash bug in uniform store handling in the vectorizer.
Before the recent invalid cost bailout work, this would have also avoided crashes on invalid costs in some cases. I honestly think the vectorizer should gracefully bailout on uniform stores it can't use a scatter for, but it doesn't, so lets take the path of least resistance here. It's also possible that there are other vectorizer bugs AArch64 isn't seeing because of this hook; we don't want to be finding them either.
Differential Revision: https://reviews.llvm.org/D127514
More information about the All-commits
mailing list