ddc-core-llvm-0.4.2.2: Disciplined Disciple Compiler LLVM code generator.

Safe HaskellNone
LanguageHaskell98

DDC.Llvm.Analysis.Defs

Synopsis

Documentation

data Def Source

How a variable is defined.

Constructors

DefVar

Variable is given a non-constant value.

DefAlias Var

Variable is an alias of another variable.

DefClosedConstant Exp

Variable binds some closed, constant expression.

Instances

takeDefOfInstr :: Instr -> Maybe (Var, Def) Source

If this instruction defines a variable, then collect some information about it.

defsOfBlock :: Block -> Map Var (Label, Def) Source

Collect information about how all the local variables in this block are defined.