[all-commits] [llvm/llvm-project] 58f164: [RISCV][llvm-mca] Use correct LMUL and SEW for str...
Michael Maitland via All-commits
all-commits at lists.llvm.org
Thu Jan 4 12:40:44 PST 2024
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 58f1640635feff282935153d295dfb4ea1818401
https://github.com/llvm/llvm-project/commit/58f1640635feff282935153d295dfb4ea1818401
Author: Michael Maitland <michaeltmaitland at gmail.com>
Date: 2024-01-04 (Thu, 04 Jan 2024)
Changed paths:
M llvm/lib/Target/RISCV/MCA/RISCVCustomBehaviour.cpp
A llvm/test/tools/llvm-mca/RISCV/SiFive7/strided-load-store.s
Log Message:
-----------
[RISCV][llvm-mca] Use correct LMUL and SEW for strided loads and stores (#76869)
The pseudos for strided loads and stores use the SEW coming from the
name. For example, vlse8 has SEW=8 and vlse16 has SEW=16.
When llvm-mca tries to lookup (VLSE8_V, SEW=S, LMUL=L) in the inverse
pseudo table, a result will only be found when S=8, where S was set from
the previous vsetvli instruction. Instead, for a match to be found, we
must lookup (VLSE8_V, SEW=8, LMUL=L') where L' is the EMUL which was
calculated by scaling the LMUL and SEW from the previous vsetvli and the
SEW=8.
More information about the All-commits
mailing list