LLVM 20.0.0git
Public Member Functions | Public Attributes | List of all members
llvm::RegionPressure Struct Reference

RegisterPressure computed within a region of instructions delimited by TopPos and BottomPos. More...

#include "llvm/CodeGen/RegisterPressure.h"

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

Public Member Functions

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

Public Attributes

MachineBasicBlock::const_iterator TopPos
 Record the boundary of the region being tracked.
 
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.
 
SmallVector< RegisterMaskPair, 8 > LiveInRegs
 List of live in virtual registers or physical register units.
 
SmallVector< RegisterMaskPair, 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 82 of file RegisterPressure.h.

Member Function Documentation

◆ openBottom()

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

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

Definition at line 217 of file RegisterPressure.cpp.

References BottomPos, and llvm::RegisterPressure::LiveInRegs.

◆ openTop()

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

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

Definition at line 201 of file RegisterPressure.cpp.

References llvm::RegisterPressure::LiveInRegs, and TopPos.

◆ reset()

void RegionPressure::reset ( )

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

Definition at line 184 of file RegisterPressure.cpp.

References BottomPos, llvm::RegisterPressure::LiveInRegs, llvm::RegisterPressure::LiveOutRegs, llvm::RegisterPressure::MaxSetPressure, and TopPos.

Member Data Documentation

◆ BottomPos

MachineBasicBlock::const_iterator llvm::RegionPressure::BottomPos

Definition at line 85 of file RegisterPressure.h.

Referenced by llvm::RegPressureTracker::isBottomClosed(), openBottom(), and reset().

◆ TopPos

MachineBasicBlock::const_iterator llvm::RegionPressure::TopPos

Record the boundary of the region being tracked.

Definition at line 84 of file RegisterPressure.h.

Referenced by llvm::RegPressureTracker::isTopClosed(), openTop(), and reset().


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