LLVM 20.0.0git
|
#include "llvm/ADT/DenseMap.h"
#include "llvm/ADT/IndexedMap.h"
#include "llvm/ADT/SmallPtrSet.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/ADT/UniqueVector.h"
#include "llvm/CodeGen/LexicalScopes.h"
#include "llvm/CodeGen/MachineBasicBlock.h"
#include "llvm/CodeGen/MachineInstr.h"
#include "llvm/CodeGen/TargetRegisterInfo.h"
#include "llvm/IR/DebugInfoMetadata.h"
#include <optional>
#include "LiveDebugValues.h"
Go to the source code of this file.
Classes | |
class | LiveDebugValues::DebugVariableMap |
Mapping from DebugVariable to/from a unique identifying number. More... | |
class | LiveDebugValues::LocIdx |
Handle-class for a particular "location". More... | |
struct | LiveDebugValues::SpillLoc |
class | LiveDebugValues::ValueIDNum |
Unique identifier for a value defined by an instruction, as a value type. More... | |
struct | llvm::DenseMapInfo< LocIdx > |
struct | llvm::DenseMapInfo< ValueIDNum > |
struct | LiveDebugValues::FuncValueTable |
A collection of ValueTables, one per BB in a function, with convenient accessor methods. More... | |
class | LiveDebugValues::SpillLocationNo |
Thin wrapper around an integer – designed to give more type safety to spill location numbers. More... | |
class | LiveDebugValues::DbgValueProperties |
Meta qualifiers for a value. More... | |
struct | LiveDebugValues::DbgOp |
TODO: Might pack better if we changed this to a Struct of Arrays, since MachineOperand is width 32, making this struct width 33. More... | |
struct | LiveDebugValues::ResolvedDbgOp |
A DbgOp whose ID (if any) has resolved to an actual location, LocIdx. More... | |
struct | LiveDebugValues::DbgOpID |
An ID used in the DbgOpIDMap (below) to lookup a stored DbgOp. More... | |
struct | LiveDebugValues::DbgOpID::IsConstIndexPair |
class | LiveDebugValues::DbgOpIDMap |
Class storing the complete set of values that are observed by DbgValues within the current function. More... | |
class | LiveDebugValues::DbgValue |
Class recording the (high level) value of a variable. More... | |
class | LiveDebugValues::LocIdxToIndexFunctor |
class | LiveDebugValues::MLocTracker |
Tracker for what values are in machine locations. More... | |
class | LiveDebugValues::MLocTracker::MLocIterator |
Iterator for locations and the values they contain. More... | |
class | LiveDebugValues::MLocTracker::MLocIterator::value_type |
class | LiveDebugValues::VLocTracker |
Collection of DBG_VALUEs observed when traversing a block. More... | |
class | LiveDebugValues::InstrRefBasedLDV |
Namespaces | |
namespace | LiveDebugValues |
namespace | llvm |
This is an optimization pass for GlobalISel generic memory operations. | |
Macros | |
#define | NUM_LOC_BITS 24 |
#define | MAX_DBG_OPS 8 |
#define | DEBUG_TYPE "LiveDebugValues" |
Typedefs | |
using | LiveDebugValues::DebugVariableID = unsigned |
using | LiveDebugValues::VarAndLoc = std::pair< DebugVariable, const DILocation * > |
using | LiveDebugValues::ValueTable = SmallVector< ValueIDNum, 0 > |
Type for a table of values in a block. | |
using | LiveDebugValues::FragmentOfVar = std::pair< const DILocalVariable *, DIExpression::FragmentInfo > |
Types for recording sets of variable fragments that overlap. | |
using | LiveDebugValues::OverlapMap = DenseMap< FragmentOfVar, SmallVector< DIExpression::FragmentInfo, 1 > > |
#define DEBUG_TYPE "LiveDebugValues" |
#define MAX_DBG_OPS 8 |
Definition at line 509 of file InstrRefBasedImpl.h.
#define NUM_LOC_BITS 24 |
Definition at line 89 of file InstrRefBasedImpl.h.