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

#include "Target/Hexagon/BitTracker.h"


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 989 of file BitTracker.cpp.

◆ has()

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

Definition at line 351 of file BitTracker.h.

Referenced by trace().

◆ lookup()

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

Definition at line 356 of file BitTracker.h.

References assert(), and F().

Referenced by isDebug(), and trace().

◆ print_cells()

void BitTracker::print_cells ( raw_ostream OS) const

Definition at line 182 of file BitTracker.cpp.

References llvm::dbgs(), P, and llvm::printReg().

Referenced by run(), and trace().

◆ put()

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

Definition at line 993 of file BitTracker.cpp.

Referenced by trace().

◆ reached()

bool BT::reached ( const MachineBasicBlock B) const

Definition at line 1024 of file BitTracker.cpp.

References assert(), and llvm::MachineBasicBlock::getNumber().

Referenced by trace().

◆ run()

void BT::run ( )

Definition at line 1118 of file BitTracker.cpp.

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

Referenced by INITIALIZE_PASS().

◆ subst()

void BT::subst ( RegisterRef  OldRR,
RegisterRef  NewRR 

◆ trace()

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

Definition at line 50 of file BitTracker.h.

References B, llvm::empty(), has(), lookup(), MI, MRI, print_cells(), push(), put(), reached(), Reg, llvm::size(), subst(), and visit().

Referenced by INITIALIZE_PASS().

◆ visit()

void BT::visit ( const MachineInstr MI)

Definition at line 1032 of file BitTracker.cpp.

References assert(), B, llvm::MachineBasicBlock::begin(), and llvm::MachineInstr::isBranch().

Referenced by trace().

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