LLVM 20.0.0git
|
#include "Target/Hexagon/RDFCopy.h"
Public Types | |
using | EqualityMap = std::map< RegisterRef, RegisterRef > |
Public Member Functions | |
CopyPropagation (DataFlowGraph &dfg) | |
virtual | ~CopyPropagation ()=default |
bool | run () |
void | trace (bool On) |
bool | trace () const |
DataFlowGraph & | getDFG () |
virtual bool | interpretAsCopy (const MachineInstr *MI, EqualityMap &EM) |
using llvm::rdf::CopyPropagation::EqualityMap = std::map<RegisterRef, RegisterRef> |
|
inline |
|
virtualdefault |
|
inline |
|
virtual |
Definition at line 40 of file RDFCopy.cpp.
References assert(), llvm::Register::isPhysicalRegister(), llvm_unreachable, MI, llvm::rdf::RegisterRef::Reg, and TRI.
bool CopyPropagation::run | ( | ) |
Definition at line 129 of file RDFCopy.cpp.
References llvm::rdf::NodeAddr< T >::Addr, Addr, assert(), llvm::CallingConv::C, Copies, CpCount, CpLimit, llvm::dbgs(), llvm::rdf::PhysicalRegisterInfo::equal_to(), F, llvm::rdf::NodeAttrs::Fixed, for(), llvm::rdf::RefNode::getSibling(), I, llvm::rdf::NodeAddr< T >::Id, llvm::MCSubRegIndexIterator::isValid(), llvm::TargetRegisterClass::LaneMask, llvm_unreachable, N, llvm::rdf::NodeAttrs::PhiRef, llvm::rdf::NodeAttrs::Stmt, and TRI.