[llvm] [AArch64][SME] Remove implicit-def's on smstart (PR #69012)
Sander de Smalen via llvm-commits
llvm-commits at lists.llvm.org
Mon Nov 6 07:50:58 PST 2023
================
@@ -7221,6 +7221,21 @@ static bool checkZExtBool(SDValue Arg, const SelectionDAG &DAG) {
return ZExtBool;
}
+void AArch64TargetLowering::AdjustInstrPostInstrSelection(MachineInstr &MI,
+ SDNode *Node) const {
+ // Live-in physreg copies that are glued to SMSTART are applied as
+ // implicit-def's in the InstrEmitter. Here we remove them, allowing the
+ // register allocator to pass call args in callee saved regs, without extra
+ // copies to avoid these fake clobbers of actually-preserved GPRs.
+ if (MI.getOpcode() == AArch64::MSRpstatesvcrImm1)
----------------
sdesmalen-arm wrote:
Can we do the same thing for `MSRpstatePseudo` ?
https://github.com/llvm/llvm-project/pull/69012
More information about the llvm-commits
mailing list