CodeQL library for C/C++
Search

Class RangeSsaDefinition

A definition of one or more SSA variables, including phi node definitions. An SSA variable is effectively the pair of a definition and the (non-SSA) variable that it defines. Note definitions and uses can be coincident, due to the presence of parameter definitions and phi nodes.

Import path

import cpp

Direct supertypes

Indirect supertypes

Known direct subtypes

    Predicates

    definedByParameter

    Whether this definition is from a parameter

    getAPhiInput

    Gets a definition of v that is a phi input for this basic block.

    getAUse

    Gets a use of the SSA variable represented by the pair (this, v).

    getAVariable

    Gets a variable corresponding to a SSA StackVariable defined by this definition.

    getBasicBlock

    Gets the basic block containing this definition.

    getDefiningValue

    Gets the expression assigned to this SsaDefinition.

    getDefinition

    Gets the control flow node for this definition.

    getLocation

    Gets the primary location of this definition.

    isGuardPhi

    If this definition is a phi node corresponding to a guard, then return the variable and the guard.

    isPhiNode

    Whether this definition is a phi node for variable v.

    reachesEndOfBB

    Holds if this definition of the variable v reached the end of the basic block b.

    toString

    A string representation of the SSA variable represented by the pair (this, v).

    Inherited predicates

    getAPrimaryQlClass

    Gets the name of a primary CodeQL class to which this element belongs.

    from ElementBase
    getCanonicalQLClass

    DEPRECATED: use getAPrimaryQlClass instead.

    from ElementBase
    toString

    Gets a textual representation of this element.

    from ElementBase

    Charpred