LLVM 20.0.0git
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.
 
std::vector< unsigned > & GetDefIndices ()
 Return the define indices.
 
std::multimap< unsigned, RegisterReference > & GetRegRefs ()
 Return the RegRefs map.
 
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.
 

Detailed Description

Contains all the state necessary for anti-dep breaking.

Definition at line 40 of file AggressiveAntiDepBreaker.h.

Constructor & Destructor Documentation

◆ AggressiveAntiDepState()

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

Definition at line 54 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 78 of file AggressiveAntiDepBreaker.cpp.

References GetGroup().

◆ GetKillIndices()

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

◆ GetRegRefs()

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

Return the RegRefs map.

Definition at line 89 of file AggressiveAntiDepBreaker.h.

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

◆ IsLive()

bool AggressiveAntiDepState::IsLive ( unsigned  Reg)

◆ LeaveGroup()

unsigned AggressiveAntiDepState::LeaveGroup ( unsigned  Reg)

Definition at line 104 of file AggressiveAntiDepBreaker.cpp.

◆ UnionGroups()

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

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