LLVM API Documentation

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Public Attributes | List of all members
llvm::RegionPressure Struct Reference

#include <RegisterPressure.h>

Inheritance diagram for llvm::RegionPressure:
Inheritance graph
[legend]
Collaboration diagram for llvm::RegionPressure:
Collaboration graph
[legend]

Public Member Functions

void reset ()
 Clear the result so it can be used for another round of pressure tracking. More...
 
void openTop (MachineBasicBlock::const_iterator PrevTop)
 If the current top is the previous instruction (before receding), open it. More...
 
void openBottom (MachineBasicBlock::const_iterator PrevBottom)
 If the current bottom is the previous instr (before advancing), open it. More...
 
- Public Member Functions inherited from llvm::RegisterPressure
void increase (unsigned Reg, const TargetRegisterInfo *TRI, const MachineRegisterInfo *MRI)
 
void decrease (unsigned Reg, const TargetRegisterInfo *TRI, const MachineRegisterInfo *MRI)
 
void dump (const TargetRegisterInfo *TRI) const
 

Public Attributes

MachineBasicBlock::const_iterator TopPos
 Record the boundary of the region being tracked. More...
 
MachineBasicBlock::const_iterator BottomPos
 
- Public Attributes inherited from llvm::RegisterPressure
std::vector< unsignedMaxSetPressure
 Map of max reg pressure indexed by pressure set ID, not class ID. More...
 
SmallVector< unsigned, 8 > LiveInRegs
 List of live in virtual registers or physical register units. More...
 
SmallVector< unsigned, 8 > LiveOutRegs
 

Detailed Description

RegisterPressure computed within a region of instructions delimited by TopPos and BottomPos. This is a less precise version of IntervalPressure for use when LiveIntervals are unavailable.

Definition at line 80 of file RegisterPressure.h.

Member Function Documentation

void RegionPressure::openBottom ( MachineBasicBlock::const_iterator  PrevBottom)

If the current bottom is the previous instr (before advancing), open it.

Definition at line 143 of file RegisterPressure.cpp.

References BottomPos, llvm::SmallVectorImpl< T >::clear(), and llvm::RegisterPressure::LiveInRegs.

void RegionPressure::openTop ( MachineBasicBlock::const_iterator  PrevTop)

If the current top is the previous instruction (before receding), open it.

Definition at line 127 of file RegisterPressure.cpp.

References llvm::SmallVectorImpl< T >::clear(), llvm::RegisterPressure::LiveInRegs, and TopPos.

void RegionPressure::reset ( )

Clear the result so it can be used for another round of pressure tracking.

Definition at line 110 of file RegisterPressure.cpp.

References BottomPos, llvm::SmallVectorImpl< T >::clear(), llvm::RegisterPressure::LiveInRegs, llvm::RegisterPressure::LiveOutRegs, llvm::RegisterPressure::MaxSetPressure, and TopPos.

Member Data Documentation

MachineBasicBlock::const_iterator llvm::RegionPressure::BottomPos

Definition at line 83 of file RegisterPressure.h.

Referenced by openBottom(), and reset().

MachineBasicBlock::const_iterator llvm::RegionPressure::TopPos

Record the boundary of the region being tracked.

Definition at line 82 of file RegisterPressure.h.

Referenced by openTop(), and reset().


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