[all-commits] [llvm/llvm-project] 7e64ad: [RISCV] Extend zvqdot matching to handle reduction...
Philip Reames via All-commits
all-commits at lists.llvm.org
Fri May 9 08:10:07 PDT 2025
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 7e64ade2ef1af72db235f6d76ecd319abc09690e
https://github.com/llvm/llvm-project/commit/7e64ade2ef1af72db235f6d76ecd319abc09690e
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-05-09 (Fri, 09 May 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-zvqdotq.ll
Log Message:
-----------
[RISCV] Extend zvqdot matching to handle reduction trees (#138965)
Now that we have matching for vqdot in it's basic variants, we can
extend the matcher to handle reduction trees instead of individual
reductions. This is important as we canonicalize reductions by
performing a tree in the vector domain before the root reduction
instruction.
The particular approach taken here has the unfortunate implication that
non-matches visit the entire reduction tree once for each time the
reduction root is visited in DAG. While conceptually problematic for
compile time, this is probably fine in practice as we should only visit
the root once per pass of DAGCombine. I don't really see a better
solution - suggestions welcome.
---------
Co-authored-by: Luke Lau <luke_lau at icloud.com>
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