Class Opcode

An opcode that specifies the operation performed by an Instruction.

Import path

import semmle.code.cpp.ir.IR

Direct supertypes

Known direct subtypes

Predicates

getReadMemoryAccess

Gets the kind of memory access performed by this instruction’s MemoryOperand. Holds only for opcodes that read from memory.

getWriteMemoryAccess

Gets the kind of memory access performed by this instruction’s result. Holds only for opcodes with a memory result.

hasAddressOperand

Holds if the instruction has an AddressOperand.

hasBufferSizeOperand

Holds if the instruction has a BufferSizeOperand.

hasMayReadMemoryAccess

Holds if the instruction’s read memory access is a may read, as opposed to a must read.

hasMayWriteMemoryAccess

Holds if the instruction’s write memory access is a may write, as opposed to a must write.

hasOperand

Holds if the instruction must have an operand with the specified OperandTag.

hasOperandInternal

Holds if the instruction must have an operand with the specified OperandTag, ignoring AddressOperandTag and BufferSizeOperandTag.

toString

Gets a textual representation of this element.