[all-commits] [llvm/llvm-project] d34437: [RISCV] Recognize a zipeven/zipodd requiring large...

Philip Reames via All-commits all-commits at lists.llvm.org
Thu Apr 10 02:29:27 PDT 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: d34437e9e17be59a5b9da1937fec21886779885b
      https://github.com/llvm/llvm-project/commit/d34437e9e17be59a5b9da1937fec21886779885b
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2025-04-10 (Thu, 10 Apr 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-zipeven-zipodd.ll

  Log Message:
  -----------
  [RISCV] Recognize a zipeven/zipodd requiring larger SEW (#134923)

This is a follow up to f8ee58a3c, and improves code generation for the
XRivosVizip extension.

If we have a slide pair which could be a zipeven or zipodd if the
shuffle was widened, widen the shuffle and then mask the zipeven or
zipodd.

This is basically working around an order of matching issue; we match
the slide pair variants before trying widening. I considered whether we
should just widen slide pairs without any consideration of the zip
idioms, but the resulting codegen changes look mostly like churn, and
have no clear evidence of profitability.



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