[llvm] [RISCV][GISEL] IRTranslator for Scalable Vector Store (PR #86699)

Michael Maitland via llvm-commits llvm-commits at lists.llvm.org
Mon Apr 1 10:09:54 PDT 2024


================
@@ -21006,7 +21006,8 @@ bool RISCVTargetLowering::fallBackToDAGISel(const Instruction &Inst) const {
   if (Op == Instruction::Add || Op == Instruction::Sub ||
       Op == Instruction::And || Op == Instruction::Or ||
       Op == Instruction::Xor || Op == Instruction::InsertElement ||
-      Op == Instruction::ShuffleVector || Op == Instruction::Load)
+      Op == Instruction::ShuffleVector || Op == Instruction::Load ||
+      Op == Instruction::Store)
----------------
michaelmaitland wrote:

GISel often crashes before the standard fallback is hit due to misusing TypeSize or something expecting LLT to only work on fixed vector. This is evidenced by almost every GISel patch about scalable vectors fixing something related to this. I don't think we can remove it yet, because if we do, then the compiler will crash and not fallback.

https://github.com/llvm/llvm-project/pull/86699


More information about the llvm-commits mailing list