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

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

#include "CodeGen/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 41 of file AggressiveAntiDepBreaker.h.

Constructor & Destructor Documentation

◆ AggressiveAntiDepState()

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

Definition at line 60 of file AggressiveAntiDepBreaker.cpp.

References llvm::MachineBasicBlock::size().

Member Function Documentation

◆ GetDefIndices()

std::vector<unsigned>& llvm::AggressiveAntiDepState::GetDefIndices ( )
inline

◆ GetGroup()

unsigned AggressiveAntiDepState::GetGroup ( unsigned  Reg)

◆ GetGroupRegs()

void AggressiveAntiDepState::GetGroupRegs ( unsigned  Group,
std::vector< unsigned > &  Regs,
std::multimap< unsigned, AggressiveAntiDepState::RegisterReference > *  RegRefs 
)

Definition at line 84 of file AggressiveAntiDepBreaker.cpp.

References GetGroup().

Referenced by CriticalPathStep().

◆ GetKillIndices()

std::vector<unsigned>& llvm::AggressiveAntiDepState::GetKillIndices ( )
inline

◆ GetRegRefs()

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

Return the RegRefs map.

Definition at line 90 of file AggressiveAntiDepBreaker.h.

References Regs.

Referenced by llvm::AggressiveAntiDepBreaker::BreakAntiDependencies(), and CriticalPathStep().

◆ IsLive()

bool AggressiveAntiDepState::IsLive ( unsigned  Reg)

◆ LeaveGroup()

unsigned AggressiveAntiDepState::LeaveGroup ( unsigned  Reg)

Definition at line 110 of file AggressiveAntiDepBreaker.cpp.

Referenced by CriticalPathStep().

◆ UnionGroups()

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

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