LLVM 23.0.0git
llvm::rdf::AggressiveCopyPropagation Struct Reference

#include "Target/Hexagon/HexagonAggressiveRDFCopy.h"

Inheritance diagram for llvm::rdf::AggressiveCopyPropagation:
[legend]

Public Member Functions

 AggressiveCopyPropagation (DataFlowGraph &dfg)
virtual ~AggressiveCopyPropagation ()=default
bool run ()
virtual bool interpretAsCopy (const MachineInstr *MI, EqualityMap &EM)
Public Member Functions inherited from llvm::rdf::CopyPropagationBase
 CopyPropagationBase (DataFlowGraph &dfg)
virtual ~CopyPropagationBase ()=default
void trace (bool On)
bool trace () const
DataFlowGraphgetDFG ()

Additional Inherited Members

Public Types inherited from llvm::rdf::CopyPropagationBase
using EqualityMap = std::map<RegisterRef, RegisterRef, RegisterRefLess>
Protected Attributes inherited from llvm::rdf::CopyPropagationBase
const MachineDominatorTreeMDT
DataFlowGraphDFG
DataFlowGraph::DefStackMap DefM
bool Trace = false
std::map< RegisterRef, std::map< NodeId, NodeId >, RegisterRefLessRDefMap
std::map< NodeId, EqualityMapCopyMap

Detailed Description

Definition at line 25 of file HexagonAggressiveRDFCopy.h.

Constructor & Destructor Documentation

◆ AggressiveCopyPropagation()

llvm::rdf::AggressiveCopyPropagation::AggressiveCopyPropagation ( DataFlowGraph & dfg)
inline

◆ ~AggressiveCopyPropagation()

virtual llvm::rdf::AggressiveCopyPropagation::~AggressiveCopyPropagation ( )
virtualdefault

References B(), and MI.

Member Function Documentation

◆ interpretAsCopy()

bool AggressiveCopyPropagation::interpretAsCopy ( const MachineInstr * MI,
EqualityMap & EM )
virtual

◆ run()


The documentation for this struct was generated from the following files: