LLVM 20.0.0git
Classes | Public Types | Public Member Functions | Static Public Member Functions | List of all members
llvm::HexagonBlockRanges Struct Reference

#include "Target/Hexagon/HexagonBlockRanges.h"

Classes

class  IndexRange
 
class  IndexType
 
class  InstrIndexMap
 
struct  PrintRangeMap
 
class  RangeList
 
struct  RegisterRef
 

Public Types

using RegisterSet = std::set< RegisterRef >
 
using RegToRangeMap = std::map< RegisterRef, RangeList >
 

Public Member Functions

 HexagonBlockRanges (MachineFunction &MF)
 
RegToRangeMap computeLiveMap (InstrIndexMap &IndexMap)
 
RegToRangeMap computeDeadMap (InstrIndexMap &IndexMap, RegToRangeMap &LiveMap)
 

Static Public Member Functions

static RegisterSet expandToSubRegs (RegisterRef R, const MachineRegisterInfo &MRI, const TargetRegisterInfo &TRI)
 

Detailed Description

Definition at line 31 of file HexagonBlockRanges.h.

Member Typedef Documentation

◆ RegisterSet

Definition at line 43 of file HexagonBlockRanges.h.

◆ RegToRangeMap

Definition at line 145 of file HexagonBlockRanges.h.

Constructor & Destructor Documentation

◆ HexagonBlockRanges()

HexagonBlockRanges::HexagonBlockRanges ( MachineFunction MF)

Definition at line 219 of file HexagonBlockRanges.cpp.

References llvm::TargetRegisterInfo::regclasses().

Member Function Documentation

◆ computeDeadMap()

HexagonBlockRanges::RegToRangeMap HexagonBlockRanges::computeDeadMap ( InstrIndexMap IndexMap,
RegToRangeMap LiveMap 
)

◆ computeLiveMap()

HexagonBlockRanges::RegToRangeMap HexagonBlockRanges::computeLiveMap ( InstrIndexMap IndexMap)

Definition at line 418 of file HexagonBlockRanges.cpp.

References llvm::dbgs(), LLVM_DEBUG, and TRI.

◆ expandToSubRegs()

HexagonBlockRanges::RegisterSet HexagonBlockRanges::expandToSubRegs ( RegisterRef  R,
const MachineRegisterInfo MRI,
const TargetRegisterInfo TRI 
)
static

Definition at line 261 of file HexagonBlockRanges.cpp.

References assert(), I, MRI, and TRI.

Referenced by computeDeadMap().


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