[all-commits] [llvm/llvm-project] 454041: [RISCV] Fix crash in getShuffleCost for P-extensio...

Kito Cheng via All-commits all-commits at lists.llvm.org
Thu Mar 12 20:31:47 PDT 2026


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 4540415f19d968ac169309eb8cceb74e0cea9190
      https://github.com/llvm/llvm-project/commit/4540415f19d968ac169309eb8cceb74e0cea9190
  Author: Kito Cheng <kito.cheng at sifive.com>
  Date:   2026-03-13 (Fri, 13 Mar 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
    A llvm/test/Analysis/CostModel/RISCV/rvp-shuffle-reverse.ll

  Log Message:
  -----------
  [RISCV] Fix crash in getShuffleCost for P-extension without V extension (#186149)

RISCVTTIImpl::getShuffleCost() crashes when querying the cost of a
reverse shufflevector on a target with the P-extension but without V/Zve
extensions. The SK_Reverse case calls
getContainerForFixedLengthVector(), which asserts hasVInstructions().

The P-extension uses fixed-width packed SIMD in GPRs, not RVV registers,
so V extension is typically not enabled.

Add an early return for P-extension fixed vectors in getShuffleCost,
consistent with the existing guards in getScalarizationOverhead,
getCastInstrCost, and getVectorInstrCost.



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list