Lines Matching defs:MachineCopyPropagation
1 //===- MachineCopyPropagation.cpp - Machine Copy Propagation Pass ---------===//
383 class MachineCopyPropagation : public MachineFunctionPass {
394 MachineCopyPropagation(bool CopyInstr = false)
444 char MachineCopyPropagation::ID = 0;
446 char &llvm::MachineCopyPropagationID = MachineCopyPropagation::ID;
448 INITIALIZE_PASS(MachineCopyPropagation, DEBUG_TYPE,
451 void MachineCopyPropagation::ReadRegister(MCRegister Reg, MachineInstr &Reader,
468 void MachineCopyPropagation::readSuccessorLiveIns(
509 bool MachineCopyPropagation::eraseIfRedundant(MachineInstr &Copy,
555 bool MachineCopyPropagation::isBackwardPropagatableRegClassCopy(
573 bool MachineCopyPropagation::isForwardableRegClassCopy(const MachineInstr &Copy,
645 bool MachineCopyPropagation::hasImplicitOverlap(const MachineInstr &MI,
659 bool MachineCopyPropagation::hasOverlappingMultipleDef(
672 void MachineCopyPropagation::forwardUses(MachineInstr &MI) {
774 void MachineCopyPropagation::ForwardCopyPropagateBlock(MachineBasicBlock &MBB) {
789 "MachineCopyPropagation should be run after register allocation!");
886 "MachineCopyPropagation should be run after register allocation!");
989 void MachineCopyPropagation::propagateDefs(MachineInstr &MI) {
1047 void MachineCopyPropagation::BackwardCopyPropagateBlock(
1181 void MachineCopyPropagation::EliminateSpillageCopies(MachineBasicBlock &MBB) {
1452 bool MachineCopyPropagation::runOnMachineFunction(MachineFunction &MF) {
1488 return new MachineCopyPropagation(UseCopyInstr);