ghc-8.0.2: The GHC API

Safe HaskellNone
LanguageHaskell2010

Debug

Synopsis

Documentation

data DebugBlock #

Debug information about a block of code. Ticks scope over nested blocks.

Constructors

DebugBlock 

Fields

dblIsEntry :: DebugBlock -> Bool #

Is this the entry block?

type UnwindTable = Map GlobalReg UnwindExpr #

Maps registers to expressions that yield their "old" values further up the stack. Most interesting for the stack pointer Sp, but might be useful to document saved registers, too.

data UnwindExpr #

Expressions, used for unwind information

cmmDebugGen :: ModLocation -> RawCmmGroup -> [DebugBlock] #

Extract debug data from a group of procedures. We will prefer source notes that come from the given module (presumably the module that we are currently compiling).

cmmDebugLabels :: (i -> Bool) -> GenCmmGroup d g (ListGraph i) -> [Label] #

cmmDebugLink :: [Label] -> [DebugBlock] -> [DebugBlock] #

Sets position fields in the debug block tree according to native generated code.

debugToMap :: [DebugBlock] -> LabelMap DebugBlock #

Converts debug blocks into a label map for easier lookups