LLVM  4.0.0
Classes | Public Member Functions | List of all members
llvm::AggressiveAntiDepState Class Reference

Contains all the state necessary for anti-dep breaking. More...

#include <AggressiveAntiDepBreaker.h>

Classes

struct  RegisterReference
 Information about a register reference within a liverange. More...
 

Public Member Functions

 AggressiveAntiDepState (const unsigned TargetRegs, MachineBasicBlock *BB)
 
std::vector< unsigned > & GetKillIndices ()
 Return the kill indices. More...
 
std::vector< unsigned > & GetDefIndices ()
 Return the define indices. More...
 
std::multimap< unsigned,
RegisterReference > & 
GetRegRefs ()
 Return the RegRefs map. More...
 
unsigned GetGroup (unsigned Reg)
 
void GetGroupRegs (unsigned Group, std::vector< unsigned > &Regs, std::multimap< unsigned, AggressiveAntiDepState::RegisterReference > *RegRefs)
 
unsigned UnionGroups (unsigned Reg1, unsigned Reg2)
 
unsigned LeaveGroup (unsigned Reg)
 
bool IsLive (unsigned Reg)
 Return true if Reg is live. More...
 

Detailed Description

Contains all the state necessary for anti-dep breaking.

Definition at line 36 of file AggressiveAntiDepBreaker.h.

Constructor & Destructor Documentation

AggressiveAntiDepState::AggressiveAntiDepState ( const unsigned  TargetRegs,
MachineBasicBlock BB 
)

Definition at line 42 of file AggressiveAntiDepBreaker.cpp.

References i, and llvm::MachineBasicBlock::size().

Member Function Documentation

std::vector<unsigned>& llvm::AggressiveAntiDepState::GetDefIndices ( )
inline
unsigned AggressiveAntiDepState::GetGroup ( unsigned  Reg)
void AggressiveAntiDepState::GetGroupRegs ( unsigned  Group,
std::vector< unsigned > &  Regs,
std::multimap< unsigned, AggressiveAntiDepState::RegisterReference > *  RegRefs 
)

Definition at line 68 of file AggressiveAntiDepBreaker.cpp.

References GetGroup().

std::vector<unsigned>& llvm::AggressiveAntiDepState::GetKillIndices ( )
inline
std::multimap<unsigned, RegisterReference>& llvm::AggressiveAntiDepState::GetRegRefs ( )
inline

Return the RegRefs map.

Definition at line 84 of file AggressiveAntiDepBreaker.h.

Referenced by llvm::AggressiveAntiDepBreaker::BreakAntiDependencies().

bool AggressiveAntiDepState::IsLive ( unsigned  Reg)
unsigned AggressiveAntiDepState::LeaveGroup ( unsigned  Reg)

Definition at line 95 of file AggressiveAntiDepBreaker.cpp.

unsigned AggressiveAntiDepState::UnionGroups ( unsigned  Reg1,
unsigned  Reg2 
)

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