LLVM  14.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"


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 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 BB, and i.

Member Function Documentation

◆ GetDefIndices()

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

Return the define indices.

Definition at line 86 of file AggressiveAntiDepBreaker.h.

Referenced by llvm::AggressiveAntiDepBreaker::Observe(), and llvm::AggressiveAntiDepBreaker::StartBlock().

◆ 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(), and Reg.

◆ GetKillIndices()

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

Return the kill indices.

Definition at line 83 of file AggressiveAntiDepBreaker.h.

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

◆ GetRegRefs()

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

Return the RegRefs map.

Definition at line 89 of file AggressiveAntiDepBreaker.h.

◆ IsLive()

bool AggressiveAntiDepState::IsLive ( unsigned  Reg)

Return true if Reg is live.

Definition at line 114 of file AggressiveAntiDepBreaker.cpp.

References Reg.

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

◆ LeaveGroup()

unsigned AggressiveAntiDepState::LeaveGroup ( unsigned  Reg)

Definition at line 104 of file AggressiveAntiDepBreaker.cpp.

References Reg.

◆ UnionGroups()

unsigned AggressiveAntiDepState::UnionGroups ( unsigned  Reg1,
unsigned  Reg2 

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