CodeQL library for C/C++
Search

Module ValueNumberingInternal

Import path

import semmle.code.cpp.ir.implementation.aliased_ssa.gvn.internal.ValueNumberingInternal

Predicates

tvalueNumber

Gets the value number assigned to instr, if any. Returns at most one result.

tvalueNumberOfOperand

Gets the value number assigned to the exact definition of op, if any. Returns at most one result.

Classes

CongruentCopyInstruction

A CopyInstruction whose source operand’s value is congruent to the definition of that source operand. For example: Point p = { 1, 2 }; Point q = p; int a = p.x; The use of p on line 2 is linked to the definition of p on line 1, and is congruent to that definition because it accesses the exact same memory. The use of p.x on line 3 is linked to the definition of p on line 1 as well, but is not congruent to that definition because p.x accesses only a subset of the memory defined by p.

LoadTotalOverlapInstruction

Datatypes