Import path
import semmle.code.cpp.ir.implementation.aliased_ssa.internal.AliasAnalysis
Predicates
| addressOperandAllocationAndOffset | Holds if addrOperand is at offset bitOffset from a base instruction of allocation. The offset may be unknown().
|
| addressOperandBaseAndConstantOffset | Holds if addrOperand is at constant offset bitOffset from the value of instruction base. Only holds for the base with the longest chain of propagation to addrOperand.
|
| allocationEscapes | Holds if the address of allocation escapes outside the domain of the analysis. This can occur either because the allocation’s address is taken within the function and escapes, or because the allocation is marked as always escaping via alwaysEscapes().
|
| getAddressOperandAllocation | Gets the allocation into which addrOperand points, if known.
|
| getConstantValue | If the result of instruction instr is an integer constant, returns the value of that constant. Otherwise, returns unknown.
|
| getPointerBitOffset | Computes the offset, in bits, by which the result of instr differs from the pointer argument to instr, if that offset is a constant. Otherwise, returns unknown.
|
Modules
| Print | Predicates used only for printing annotated IR dumps. These should not be used in production queries.
|