LLVM  8.0.1
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 41 of file HexagonBlockRanges.h.

◆ RegToRangeMap

Definition at line 143 of file HexagonBlockRanges.h.

Constructor & Destructor Documentation

◆ HexagonBlockRanges()

HexagonBlockRanges::HexagonBlockRanges ( MachineFunction MF)

Member Function Documentation

◆ computeDeadMap()

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

◆ computeLiveMap()

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

Definition at line 422 of file HexagonBlockRanges.cpp.

References llvm::dbgs(), and LLVM_DEBUG.

Referenced by llvm::HexagonFrameLowering::determineCalleeSaves().

◆ expandToSubRegs()

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

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