LLVM 20.0.0git
Classes | Public Types | Public Member Functions | List of all members
llvm::BitTracker Struct Reference

#include "Target/Hexagon/BitTracker.h"

Classes

struct  BitMask
 
struct  BitRef
 
struct  BitValue
 
struct  MachineEvaluator
 
struct  RegisterCell
 
struct  RegisterRef
 

Public Types

using BranchTargetList = SetVector< const MachineBasicBlock * >
 
using CellMapType = std::map< unsigned, RegisterCell >
 

Public Member Functions

 BitTracker (const MachineEvaluator &E, MachineFunction &F)
 
 ~BitTracker ()
 
void run ()
 
void trace (bool On=false)
 
bool has (unsigned Reg) const
 
const RegisterCelllookup (unsigned Reg) const
 
RegisterCell get (RegisterRef RR) const
 
void put (RegisterRef RR, const RegisterCell &RC)
 
void subst (RegisterRef OldRR, RegisterRef NewRR)
 
bool reached (const MachineBasicBlock *B) const
 
void visit (const MachineInstr &MI)
 
void print_cells (raw_ostream &OS) const
 

Detailed Description

Definition at line 35 of file BitTracker.h.

Member Typedef Documentation

◆ BranchTargetList

Definition at line 43 of file BitTracker.h.

◆ CellMapType

Definition at line 44 of file BitTracker.h.

Constructor & Destructor Documentation

◆ BitTracker()

BitTracker::BitTracker ( const MachineEvaluator E,
MachineFunction F 
)

Definition at line 187 of file BitTracker.cpp.

◆ ~BitTracker()

BitTracker::~BitTracker ( )

Definition at line 191 of file BitTracker.cpp.

Member Function Documentation

◆ get()

BT::RegisterCell BT::get ( RegisterRef  RR) const

Definition at line 990 of file BitTracker.cpp.

References llvm::BitTracker::MachineEvaluator::getCell().

◆ has()

bool llvm::BitTracker::has ( unsigned  Reg) const
inline

Definition at line 352 of file BitTracker.h.

References Reg.

◆ lookup()

const BitTracker::RegisterCell & llvm::BitTracker::lookup ( unsigned  Reg) const
inline

Definition at line 357 of file BitTracker.h.

References assert(), F, and Reg.

◆ print_cells()

void BitTracker::print_cells ( raw_ostream OS) const

Definition at line 182 of file BitTracker.cpp.

References llvm::dbgs(), P, llvm::printReg(), and llvm::BitTracker::MachineEvaluator::TRI.

Referenced by run().

◆ put()

void BT::put ( RegisterRef  RR,
const RegisterCell RC 
)

Definition at line 994 of file BitTracker.cpp.

References llvm::BitTracker::MachineEvaluator::putCell().

◆ reached()

bool BT::reached ( const MachineBasicBlock B) const

◆ run()

void BT::run ( )

Definition at line 1118 of file BitTracker.cpp.

References assert(), B, llvm::dbgs(), and print_cells().

◆ subst()

void BT::subst ( RegisterRef  OldRR,
RegisterRef  NewRR 
)

◆ trace()

void llvm::BitTracker::trace ( bool  On = false)
inline

Definition at line 50 of file BitTracker.h.

◆ visit()

void BT::visit ( const MachineInstr MI)

Definition at line 1033 of file BitTracker.cpp.

References assert(), and MI.


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