LLVM 20.0.0git
|
#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) |
Definition at line 31 of file HexagonBlockRanges.h.
using llvm::HexagonBlockRanges::RegisterSet = std::set<RegisterRef> |
Definition at line 43 of file HexagonBlockRanges.h.
using llvm::HexagonBlockRanges::RegToRangeMap = std::map<RegisterRef, RangeList> |
Definition at line 145 of file HexagonBlockRanges.h.
HexagonBlockRanges::HexagonBlockRanges | ( | MachineFunction & | MF | ) |
Definition at line 218 of file HexagonBlockRanges.cpp.
References llvm::TargetRegisterInfo::regclasses().
HexagonBlockRanges::RegToRangeMap HexagonBlockRanges::computeDeadMap | ( | InstrIndexMap & | IndexMap, |
RegToRangeMap & | LiveMap | ||
) |
Definition at line 427 of file HexagonBlockRanges.cpp.
References A, llvm::dbgs(), llvm::HexagonBlockRanges::IndexType::Entry, llvm::HexagonBlockRanges::IndexType::Exit, expandToSubRegs(), F, llvm::HexagonBlockRanges::InstrIndexMap::getBlock(), llvm::HexagonBlockRanges::InstrIndexMap::getNextIndex(), llvm::MachineBasicBlock::getParent(), llvm::HexagonBlockRanges::InstrIndexMap::getPrevIndex(), llvm::MachineFunction::getRegInfo(), LLVM_DEBUG, MRI, llvm::HexagonBlockRanges::IndexType::None, P, and TRI.
HexagonBlockRanges::RegToRangeMap HexagonBlockRanges::computeLiveMap | ( | InstrIndexMap & | IndexMap | ) |
Definition at line 417 of file HexagonBlockRanges.cpp.
References llvm::dbgs(), LLVM_DEBUG, and TRI.
|
static |
Definition at line 260 of file HexagonBlockRanges.cpp.
References assert(), I, MRI, and TRI.
Referenced by computeDeadMap().