@@ -2489,22 +2489,23 @@ bool PPCFrameLowering::spillCalleeSavedRegisters(
2489
2489
if (Spilled[Dst])
2490
2490
continue ;
2491
2491
2492
- if (VSRContainingGPRs[Dst].second != 0 ) {
2492
+ const auto &VSR = VSRContainingGPRs[Dst];
2493
+ if (VSR.second != 0 ) {
2493
2494
assert (Subtarget.hasP9Vector () &&
2494
2495
" mtvsrdd is unavailable on pre-P9 targets." );
2495
2496
2496
2497
NumPESpillVSR += 2 ;
2497
2498
BuildMI (MBB, MI, DL, TII.get (PPC::MTVSRDD), Dst)
2498
- .addReg (VSRContainingGPRs[Dst] .first , getKillRegState (true ))
2499
- .addReg (VSRContainingGPRs[Dst] .second , getKillRegState (true ));
2500
- } else if (VSRContainingGPRs[Dst] .second == 0 ) {
2499
+ .addReg (VSR .first , getKillRegState (true ))
2500
+ .addReg (VSR .second , getKillRegState (true ));
2501
+ } else if (VSR .second == 0 ) {
2501
2502
assert (Subtarget.hasP8Vector () &&
2502
2503
" Can't move GPR to VSR on pre-P8 targets." );
2503
2504
2504
2505
++NumPESpillVSR;
2505
2506
BuildMI (MBB, MI, DL, TII.get (PPC::MTVSRD),
2506
2507
TRI->getSubReg (Dst, PPC::sub_64))
2507
- .addReg (VSRContainingGPRs[Dst] .first , getKillRegState (true ));
2508
+ .addReg (VSR .first , getKillRegState (true ));
2508
2509
} else {
2509
2510
llvm_unreachable (" More than two GPRs spilled to a VSR!" );
2510
2511
}
0 commit comments