CodeQL library for C/C++
codeql/cpp-all 12.0.3 (changelog, source)
Search

Module SsaImpl

Import path

import semmle.code.cpp.ir.dataflow.internal.SsaImpl

Imports

SourceVariables
SsaCached

The final SSA predicates used for dataflow purposes.

SsaImplCommon

Predicates

defToNode

INTERNAL: Do not use.

hasIndirectOperand

Holds if indirectionIndex is a valid non-zero indirection index for operand op. That is, indirectionIndex is between 1 and the maximum indirection for the operand’s type.

hasRawIndirectInstruction

Holds if the (instr, indirectionIndex) columns should be assigned a RawIndirectInstruction value.

hasRawIndirectOperand

Holds if the (operand, indirectionIndex) columns should be assigned a RawIndirectOperand value.

outNodeHasAddressAndIndex
ssaFlow

Holds if there is def-use or use-use flow from nodeFrom to nodeTo.

Classes

DefImpl
Definition

An static single assignment (SSA) definition.

DirectExplicitDefinition

An SSA definition that corresponds to an explicit definition.

ExplicitDefinition

An SSA definition that corresponds to an explicit definition.

FinalParameterUse
GlobalDef
GlobalDefImpl

A definition that models a synthetic “initial definition” of a global variable just after the function entry point.

GlobalUse

A use that models a synthetic “last use” of a global variable just before a function returns.

IndirectExplicitDefinition

An explicit SSA definition that writes an indirect value to a pointer.

PhiNode

An static single assignment (SSA) phi node.

SynthNode
UseImpl

Modules

BarrierGuard
BarrierGuardWithIntParam
SsaCached

The final SSA predicates used for dataflow purposes.