16#ifndef LLVM_LIB_TARGET_NVPTX_NVPTXDWARFDEBUG_H
17#define LLVM_LIB_TARGET_NVPTX_NVPTXDWARFDEBUG_H
42 std::optional<unsigned> &TargetAddrSpace)
const override;
MachineBasicBlock MachineBasicBlock::iterator DebugLoc DL
static GCRegistry::Add< ErlangGC > A("erlang", "erlang-compatible garbage collector")
This file defines the DenseSet and SmallDenseSet classes.
This class is intended to be used as a driving class for all asm writers.
A structured debug information entry.
Implements a dense probed hash-table based set.
VariableLocationKind
Describes the storage kind of a debug variable for target hooks.
DwarfDebug(AsmPrinter *A)
Instances of this class represent a uniqued identifier for a section in the current translation unit.
bool shouldResetBaseAddress(const MCSection &Section) const override
Whether the target requires resetting the base address in range/loc lists.
bool shouldAttachCompileUnitRanges() const override
Whether to attach ranges/low_pc to the compile unit DIE in endModule.
void recordTargetSourceLine(const DebugLoc &DL, unsigned Flags) override
NVPTX-specific source line recording with inlined_at support.
const DIExpression * adjustExpressionForTarget(const DIExpression *Expr, std::optional< unsigned > &TargetAddrSpace) const override
Extract target-specific address space information from a DIExpression.
NVPTXDwarfDebug(AsmPrinter *A)
void initializeTargetDebugInfo(const MachineFunction &MF) override
NVPTX-specific debug info initialization.
void addTargetVariableAttributes(DwarfCompileUnit &CU, DIE &Die, std::optional< unsigned > TargetAddrSpace, VariableLocationKind VarLocKind, const GlobalVariable *GV=nullptr) const override
Add target-specific attributes to a variable DIE (e.g.
This is an optimization pass for GlobalISel generic memory operations.