LLVM: lib/CodeGen/MIRCanonicalizerPass.cpp File Reference (original) (raw)
Go to the source code of this file.
| Macros | |
|---|---|
| #define | DEBUG_TYPE "mir-canonicalizer" |
| Functions | |
|---|---|
| INITIALIZE_PASS_BEGIN (MIRCanonicalizer, "mir-canonicalizer", "Rename Register Operands Canonically", false, false) INITIALIZE_PASS_END(MIRCanonicalizer | |
| mir Rename Register Operands static false std::vector< MachineBasicBlock * > | GetRPOList (MachineFunction &MF) |
| static bool | rescheduleLexographically (std::vector< MachineInstr * > instructions, MachineBasicBlock *MBB, std::function< MachineBasicBlock::iterator()> getPos) |
| static bool | rescheduleCanonically (unsigned &PseudoIdempotentInstCount, MachineBasicBlock *MBB) |
| static bool | propagateLocalCopies (MachineBasicBlock *MBB) |
| static bool | doDefKillClear (MachineBasicBlock *MBB) |
| static bool | runOnBasicBlock (MachineBasicBlock *MBB, unsigned BasicBlockNum, VRegRenamer &Renamer) |
◆ DEBUG_TYPE
#define DEBUG_TYPE "mir-canonicalizer"
◆ doDefKillClear()
◆ GetRPOList()
◆ INITIALIZE_PASS_BEGIN()
| INITIALIZE_PASS_BEGIN | ( | MIRCanonicalizer | , |
|---|---|---|---|
| "mir-canonicalizer" | , | ||
| "Rename Register Operands Canonically" | , | ||
| false | , | ||
| false | ) |
◆ propagateLocalCopies()
◆ rescheduleCanonically()
Definition at line 124 of file MIRCanonicalizerPass.cpp.
References Changed, llvm::dbgs(), llvm::MachineOperand::dump(), E(), llvm::find_if(), llvm::MachineInstr::getParent(), llvm::MachineOperand::getReg(), II, llvm::is_contained(), llvm::MachineOperand::isDef(), llvm::MachineOperand::isReg(), llvm::Register::isVirtual(), LLVM_DEBUG, MBB, MI, MRI, and rescheduleLexographically().
Referenced by runOnBasicBlock().
◆ rescheduleLexographically()
◆ runOnBasicBlock()
◆ CanonicalizeFunctionNumber
◆ canonicalizer
◆ Canonically
mir Rename Register Operands Canonically