[PATCH] D96365: [RISCV] Add support for matching .vx and .vi forms of binary instructions for fixed vectors.
Fraser Cormack via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Feb 11 02:00:03 PST 2021
frasercrmck added a comment.
Could you perhaps explain why the splats (at least as non-roots) are matched like this and not with the existing complex patterns extended to also check VMV_V_X?
================
Comment at: llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td:4060
-foreach vti = AllIntegerVectors in {
- def : Pat<(vti.Vector (riscv_vmv_v_x_vl GPR:$rs2, (XLenVT (VLOp GPR:$vl)))),
- (!cast<Instruction>("PseudoVMV_V_X_"#vti.LMul.MX)
- $rs2, GPR:$vl, vti.SEW)>;
- def : Pat<(vti.Vector (riscv_vmv_v_x_vl simm5:$imm5, (XLenVT (VLOp GPR:$vl)))),
- (!cast<Instruction>("PseudoVMV_V_I_"#vti.LMul.MX)
- simm5:$imm5, GPR:$vl, vti.SEW)>;
+ // vmv.v.x/vmv.v.i are handled in RISCInstrVInstrINfoVVLPatterns.td
}
----------------
frasercrmck wrote:
> Minor typo: `RISCInstrVInstrINfoVVL` -> `RISCVInstrInfoVVL`
I think this has slipped back in after the rebase? `RISCInstrVInstrINfoVVLPatterns.td` should be `RISCVInstrInfoVVLPatterns.td`
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D96365/new/
https://reviews.llvm.org/D96365
More information about the llvm-commits
mailing list