[llvm] [AArch64] Ensure we transferImpOps on BSP pseudo expansions. (PR #149456)
Ricardo Jesus via llvm-commits
llvm-commits at lists.llvm.org
Fri Jul 18 01:29:15 PDT 2025
================
@@ -1205,32 +1205,36 @@ bool AArch64ExpandPseudo::expandMI(MachineBasicBlock &MBB,
Register DstReg = MI.getOperand(0).getReg();
if (DstReg == MI.getOperand(3).getReg()) {
// Expand to BIT
- BuildMI(MBB, MBBI, MI.getDebugLoc(),
- TII->get(Opcode == AArch64::BSPv8i8 ? AArch64::BITv8i8
- : AArch64::BITv16i8))
- .add(MI.getOperand(0))
- .add(MI.getOperand(3))
- .add(MI.getOperand(2))
- .add(MI.getOperand(1));
+ auto I = BuildMI(MBB, MBBI, MI.getDebugLoc(),
+ TII->get(Opcode == AArch64::BSPv8i8 ? AArch64::BITv8i8
+ : AArch64::BITv16i8))
+ .add(MI.getOperand(0))
+ .add(MI.getOperand(3))
+ .add(MI.getOperand(2))
+ .add(MI.getOperand(1));
+ transferImpOps(MI, I, I);
----------------
rj-jesus wrote:
Nit: would it be worth declaring `MachineInstrBuilder MIB` before the if-else chain and moving `transferImpOps(MI, MIB, MIB);` just before `MI.eraseFromParent`?
https://github.com/llvm/llvm-project/pull/149456
More information about the llvm-commits
mailing list