[llvm] [NFC][CodeGen] Create method to clear registers (PR #66958)
Simon Pilgrim via llvm-commits
llvm-commits at lists.llvm.org
Thu Sep 21 02:30:56 PDT 2023
================
@@ -562,48 +562,17 @@ void X86FrameLowering::emitZeroCallUsedRegs(BitVector RegsToZero,
RegsToZero.reset(Reg);
}
+ // Zero out the GPRs first.
for (MCRegister Reg : GPRsToZero.set_bits())
- BuildMI(MBB, MBBI, DL, TII.get(X86::XOR32rr), Reg)
- .addReg(Reg, RegState::Undef)
- .addReg(Reg, RegState::Undef);
+ TII.buildClearRegister(Reg, MBB, MBBI, DL);
- // Zero out registers.
+ // Zero out the remaining registers.
for (MCRegister Reg : RegsToZero.set_bits()) {
if (ST.hasMMX() && X86::VR64RegClass.contains(Reg))
// FIXME: Ignore MMX registers?
continue;
----------------
RKSimon wrote:
You might as well move the (lack of) MMX handling into buildClearRegister as well
https://github.com/llvm/llvm-project/pull/66958
More information about the llvm-commits
mailing list