@@ -471,22 +471,19 @@ void RISCVRegisterInfo::lowerSegmentSpillReload(MachineBasicBlock::iterator II,
471471 }
472472
473473 MCRegister ActualReg = findVRegWithEncoding (RegClass, RegEncoding);
474- MachineInstrBuilder MI;
475- if (IsSpill)
476- MI = BuildMI (MBB, II, DL, TII->get (Opcode)).addReg (ActualReg);
477- else
478- MI = BuildMI (MBB, II, DL, TII->get (Opcode), ActualReg);
479-
480- MI.addReg (Base, getKillRegState (I + RegNumHandled == NumRegs))
481- .addMemOperand (MF.getMachineMemOperand (OldMMO, OldMMO->getOffset (),
482- VRegSize * RegNumHandled));
474+ MachineInstrBuilder MIB =
475+ BuildMI (MBB, II, DL, TII->get (Opcode))
476+ .addReg (ActualReg, getDefRegState (!IsSpill))
477+ .addReg (Base, getKillRegState (I + RegNumHandled == NumRegs))
478+ .addMemOperand (MF.getMachineMemOperand (OldMMO, OldMMO->getOffset (),
479+ VRegSize * RegNumHandled));
483480
484481 // Adding implicit-use of super register to describe we are using part of
485482 // super register, that prevents machine verifier complaining when part of
486483 // subreg is undef, see comment in MachineVerifier::checkLiveness for more
487484 // detail.
488485 if (IsSpill)
489- MI .addReg (Reg, RegState::Implicit);
486+ MIB .addReg (Reg, RegState::Implicit);
490487
491488 PreHandledNum = RegNumHandled;
492489 RegEncoding += RegNumHandled;
0 commit comments