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

Module Operand

Provides classes that represent the input values of IR instructions.

Import path

import semmle.code.cpp.ir.implementation.unaliased_ssa.Operand

Classes

AddressOperand

The address operand of an instruction that loads or stores a value from memory (e.g. Load, Store).

ArgumentOperand

An operand representing an argument to a function call. This includes both positional arguments (represented by PositionalArgumentOperand) and the implicit this argument, if any (represented by ThisArgumentOperand).

BufferSizeOperand

The buffer size operand of an instruction that represents a read or write of a buffer.

CallTargetOperand

The operand representing the target function of an Call instruction.

ChiPartialOperand

The partial operand of a Chi node, representing the value being written to part of the memory.

ChiTotalOperand

The total operand of a Chi node, representing the previous value of the memory.

ConditionOperand

The condition operand of a ConditionalBranch or Switch instruction.

LeftOperand

The left operand of a binary instruction (e.g. Add, CompareEQ).

LoadOperand

The source value operand of an instruction that loads a value from memory (e.g. Load, ReturnValue, ThrowValue).

MemoryOperand

An operand that consumes a memory result (e.g. the LoadOperand on a Load instruction).

NonPhiMemoryOperand

A memory operand other than the operand of a Phi instruction.

NonPhiOperand

An operand that is not an operand of a PhiInstruction.

Operand

An operand of an Instruction. The operand represents a use of the result of one instruction (the defining instruction) in another instruction (the use instruction)

PhiInputOperand

An operand of a PhiInstruction.

PositionalArgumentOperand

An operand representing an argument to a function call.

RegisterOperand

An operand that consumes a register (non-memory) result.

RightOperand

The right operand of a binary instruction (e.g. Add, CompareEQ).

SideEffectOperand

An operand representing memory read as a side effect of evaluating another instruction.

StoreValueOperand

The source value operand of a Store instruction.

ThisArgumentOperand

An operand representing the implicit this argument to a member function call.

TypedOperand

A memory operand whose type may be different from the type of the result of its definition.

UnaryOperand

The sole operand of a unary instruction (e.g. Convert, Negate, Copy).