LLVM  10.0.0svn
llvm::IntervalPressure Struct Reference

RegisterPressure computed within a region of instructions delimited by TopIdx and BottomIdx. More...

#include "llvm/CodeGen/RegisterPressure.h"

Inheritance diagram for llvm::IntervalPressure:
[legend]
Collaboration diagram for llvm::IntervalPressure:
[legend]

## Public Member Functions

void reset ()
Clear the result so it can be used for another round of pressure tracking. More...

void openTop (SlotIndex NextTop)
If the current top is not less than or equal to the next index, open it. More...

void openBottom (SlotIndex PrevBottom)
If the current bottom is not greater than the previous index, open it. More...

Public Member Functions inherited from llvm::RegisterPressure
void dump (const TargetRegisterInfo *TRI) const

## Public Attributes

SlotIndex TopIdx
Record the boundary of the region being tracked. More...

SlotIndex BottomIdx

Public Attributes inherited from llvm::RegisterPressure
std::vector< unsignedMaxSetPressure
Map of max reg pressure indexed by pressure set ID, not class ID. More...

List of live in virtual registers or physical register units. More...

## Detailed Description

RegisterPressure computed within a region of instructions delimited by TopIdx and BottomIdx.

During pressure computation, the maximum pressure per register pressure set is increased. Once pressure within a region is fully computed, the live-in and live-out sets are recorded.

This is preferable to RegionPressure when LiveIntervals are available, because delimiting regions by SlotIndex is more robust and convenient than holding block iterators. The block contents can change without invalidating the pressure result.

Definition at line 68 of file RegisterPressure.h.

## ◆ openBottom()

 void IntervalPressure::openBottom ( SlotIndex PrevBottom )

If the current bottom is not greater than the previous index, open it.

Definition at line 210 of file RegisterPressure.cpp.

References llvm::RegisterPressure::LiveInRegs.

## ◆ openTop()

 void IntervalPressure::openTop ( SlotIndex NextTop )

If the current top is not less than or equal to the next index, open it.

We happen to need the SlotIndex for the next top for pressure update.

Definition at line 194 of file RegisterPressure.cpp.

References llvm::RegisterPressure::LiveInRegs.

## ◆ reset()

 void IntervalPressure::reset ( )

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

Definition at line 177 of file RegisterPressure.cpp.

## ◆ BottomIdx

 SlotIndex llvm::IntervalPressure::BottomIdx

Definition at line 71 of file RegisterPressure.h.

## ◆ TopIdx

 SlotIndex llvm::IntervalPressure::TopIdx

Record the boundary of the region being tracked.

Definition at line 70 of file RegisterPressure.h.

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