[llvm] [RISCV][GISEL] instruction-select for G_SPLAT_VECTOR (PR #111193)
Craig Topper via llvm-commits
llvm-commits at lists.llvm.org
Fri Oct 4 12:07:08 PDT 2024
================
@@ -568,6 +569,18 @@ bool RISCVInstructionSelector::select(MachineInstr &MI) {
return true;
}
+ // FIXME: We create a IMPLICIT_DEF and a G_CONSTANT in preISelLower when
+ // we encounter a G_SPLAT_VECTOR. We cannot select the G_CONSTANT until after
+ // the MI is lowered, since renderVLOp needs to see the G_CONSTANT. It would
+ // be nice if the InstructionSelector selected these instructions without
+ // needing to call select on them explicitly.
+ if (OpcWasGSplatVector) {
----------------
topperc wrote:
How about adding `earlySelect` like AArch64 and put all of the SPLAT_VECTOR code together in there instead of splitting it across preISelLower and this code?
https://github.com/llvm/llvm-project/pull/111193
More information about the llvm-commits
mailing list