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


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 421 of file HexagonBlockRanges.cpp.

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

◆ expandToSubRegs()

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

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