There are two places we made a workaround in PPCInstrInfo.cpp to avoid readsRegister() bug.
// MachineInstr::readsRegister only returns true if the machine // instruction reads the exact register or its super-register. It // does not consider uses of sub-registers which seems like strange // behaviour. Nonetheless, if we end up with a 64-bit register here, // get the corresponding 32-bit register to check. unsigned Reg = RegMO.getReg(); if (PPC::G8RCRegClass.contains(Reg)) Reg = Reg - PPC::X0 + PPC::R0;
This is not needed anymore. readsRegister() is fixed in https://reviews.llvm.org/D54128