LLVM 22.0.0git
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< MCRegister, RegisterReference > & GetRegRefs ()
 Return the RegRefs map.
unsigned GetGroup (MCRegister Reg)
void GetGroupRegs (unsigned Group, std::vector< MCRegister > &Regs, std::multimap< MCRegister, AggressiveAntiDepState::RegisterReference > *RegRefs)
unsigned UnionGroups (MCRegister Reg1, MCRegister Reg2)
unsigned LeaveGroup (MCRegister Reg)
bool IsLive (MCRegister 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

Return the define indices.

Definition at line 86 of file AggressiveAntiDepBreaker.h.

◆ GetGroup()

unsigned AggressiveAntiDepState::GetGroup ( MCRegister Reg)

Definition at line 70 of file AggressiveAntiDepBreaker.cpp.

Referenced by GetGroupRegs(), and UnionGroups().

◆ GetGroupRegs()

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

Definition at line 78 of file AggressiveAntiDepBreaker.cpp.

References GetGroup().

◆ GetKillIndices()

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

Return the kill indices.

Definition at line 83 of file AggressiveAntiDepBreaker.h.

◆ GetRegRefs()

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

Return the RegRefs map.

Definition at line 89 of file AggressiveAntiDepBreaker.h.

◆ IsLive()

bool AggressiveAntiDepState::IsLive ( MCRegister Reg)

Return true if Reg is live.

Definition at line 113 of file AggressiveAntiDepBreaker.cpp.

◆ LeaveGroup()

unsigned AggressiveAntiDepState::LeaveGroup ( MCRegister Reg)

Definition at line 103 of file AggressiveAntiDepBreaker.cpp.

◆ UnionGroups()

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

Definition at line 88 of file AggressiveAntiDepBreaker.cpp.

References assert(), GetGroup(), and llvm::Other.


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