llvm::MemOp

Describes a memset, memcpy, or memmove lowering candidate.

Synopsis

Declared in <llvm/CodeGen/TargetLowering.h>

struct MemOp;

Member Functions

NameDescription
getDstAlign Return the required destination alignment for this memory operation.
getSrcAlign Return the inferred alignment of the source for this memcpy or memmove operation.
isAligned Return true if both the source and destination of this memory operation are aligned.
isDstAligned Return true if the destination of this memory operation is aligned to the given boundary.
isFixedDstAlign Return true if the destination alignment of this memory operation cannot change.
isMemcpy Return true if this memory operation is a memcpy.
isMemcpyOrMemmove Return true if this memory operation is a memcpy or memmove.
isMemcpyOrMemmoveWithFixedDstAlign Return true if this is a memcpy or memmove whose destination alignment cannot change.
isMemcpyStrSrc Return true if this memcpy's source is an in-register constant string.
isMemmove Return true if this memory operation is a memmove.
isMemset Return true if this memory operation is a memset.
isSrcAligned Return true if the source of this memory operation is aligned to the given boundary.
isVolatile Return true if this memory operation is volatile.
isZeroMemset Return true if this memset operation stores all zero bytes.
size The size, in bytes, of the memory location accessed.

Static Member Functions

NameDescription
Copy Construct a MemOp describing a memcpy operation.
Move Construct a MemOp describing a memmove operation.
Set Build a MemOp describing a memset.