[PATCH] D152380: [WIP][RISCV] Canonicalize towards vmerge w/passthrough representation
Philip Reames via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Wed Jun 7 09:28:35 PDT 2023
reames added inline comments.
================
Comment at: llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp:3442
-
- auto IsVMergeTA = [](unsigned Opcode) {
- return Opcode == RISCV::PseudoVMERGE_VVM_MF8 ||
----------------
Note - I'm removing the TA support entirely here, but given there's still some intrinsic users, we should probably restructure to add recognition of the implicit_def operand to _TU case without dropping the TA support. This will make this change reviewable (though sadly not really testable) on it's own.
================
Comment at: llvm/test/CodeGen/RISCV/rvv/vector-splice.ll:12
; CHECK: # %bb.0:
+; CHECK-NEXT: vmv1r.v v9, v0
; CHECK-NEXT: vsetvli a0, zero, e8, mf8, ta, ma
----------------
Note - This change (and others like it) look concerning. I dug far enough in to this to be fairly sure this is a problem with pre-RA-sched, but haven't yet fully isolated the cause. I suspect there's some missing special casing for IMPLICIT_DEF somewhere, but I haven't figured out exactly where yet.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D152380/new/
https://reviews.llvm.org/D152380
More information about the llvm-commits
mailing list