Side table of dbg_value and dbg_label info for SelectionDAG ISel.

Synopsis

Declared in <llvm/CodeGen/SelectionDAG.h>

class SDDbgInfo;

Description

We do not build SDNodes for these so as not to perturb the generated code; instead the info is kept off to the side in this structure. Each SDNode may have one or more associated dbg_value entries. This information is kept in DbgValMap. Byval parameters are handled separately because they don't use alloca's, which busts the normal mechanism. There is good reason for handling all parameters separately: they may not have code generated for them, they should always go at the beginning of the function regardless of other code motion, and debug info for them is potentially useful even if the parameter is unused. Right now only byval parameters are handled separately.

Type Aliases

Name

Description

DbgIterator

Iterator over SDDbgValue entries.

DbgLabelIterator

Iterator over SDDbgLabel entries.

Member Functions

Name

Description

SDDbgInfo [constructor]

Constructors

operator= [deleted]

Deleted copy assignment.

ByvalParmDbgBegin

Return an iterator to the first byval‐parameter SDDbgValue.

ByvalParmDbgEnd

Return an iterator one past the last byval‐parameter SDDbgValue.

DbgBegin

Return an iterator to the first SDDbgValue.

DbgEnd

Return an iterator one past the last SDDbgValue.

DbgLabelBegin

Return an iterator to the first SDDbgLabel.

DbgLabelEnd

Return an iterator one past the last SDDbgLabel.

add

add overloads

clear

Clear all recorded debug values, labels, and allocator state.

empty

Return true if there are no recorded debug values or labels.

erase

Invalidate all DbgValues attached to the node and remove it from the Node‐to‐DbgValues map.

getAlloc

Return the allocator used for debug‐info objects.

getSDDbgValues

Return the debug values attached to Node, if any.

Created with MrDocs