llvm::instrumentor::LoadIO

The instrumentation opportunity for load instructions.

Synopsis

Declared in <llvm/Transforms/IPO/Instrumentor.h>

struct LoadIO
    : InstructionIO<Instruction::Load>

Base Classes

NameDescription
InstructionIO<Instruction::Load>Common base for instruction instrumentation opportunities.

Type Aliases

NameDescription
ConfigTy Configuration bitset type for load opportunities.

Enums

NameDescription
ConfigKind Selector of arguments for load opportunities.

Member Functions

NameDescription
LoadIO [constructor]Construct a load opportunity.
~LoadIO [destructor] [virtual]Destroy the load opportunity.
getAllOpcodes [virtual]Get all opcodes for this instrumentation opportunity (override).
getName [virtual]Get the instruction opportunity name.
getValueType [virtual]Get the type of the loaded value.
init Initialize the load opportunity and its runtime arguments.

Static Member Functions

NameDescription
getAlignment Return the alignment of the load.
getAtomicityOrdering Return the atomicity ordering of the load.
getBasePointerInfo Return base-pointer info for the load pointer.
getNumOpcodes Get the number of opcodes.
getPointer Return the pointer operand of the load.
getPointerAS Return the address space of the load pointer.
getSyncScopeId Return the sync scope id of the load.
getValue Return the loaded value.
getValueSize Return the size of the loaded value.
getValueSubTypeId Return the subtype id of the loaded value.
getValueTypeId Return the type id of the loaded value.
isVolatile Return whether the load is volatile.
populate Create load opportunities for PRE and POST positions.
setPointer Replace the load pointer with a runtime-provided value.

Data Members

NameDescription
Config Per-opportunity configuration for load instrumentation.

Static Data Members

NameDescription
OpcodesArray Compile-time array of opcodes handled by this opportunity.