LLVM: llvm::ObjectSizeOpts Struct Reference (original) (raw)

Various options to control the behavior of getObjectSize. More...

#include "[llvm/Analysis/MemoryBuiltins.h](MemoryBuiltins%5F8h%5Fsource.html)"

Public Attributes
Mode EvalMode = Mode::ExactSizeFromOffset
How we want to evaluate this object's size.
bool RoundToAlign = false
Whether to round the result up to the alignment of allocas, byval arguments, and global variables.
bool NullIsUnknownSize = false
If this is true, null pointers in address space 0 will be treated as though they can't be evaluated.
AAResults * AA = nullptr
If set, used for more accurate evaluation.

Various options to control the behavior of getObjectSize.

Definition at line 138 of file MemoryBuiltins.h.

Mode

Controls how we handle conditional statements with unknown conditions.

Enumerator
ExactSizeFromOffset All branches must be known and have the same size, starting from the offset, to be merged.
ExactUnderlyingSizeAndOffset All branches must be known and have the same underlying size and offset to be merged.
Min Evaluate all branches of an unknown condition. If all evaluations succeed, pick the minimum size.
Max Same as Min, except we pick the maximum size of all of the branches.

Definition at line 140 of file MemoryBuiltins.h.

AA

AAResults* llvm::ObjectSizeOpts::AA = nullptr

EvalMode

NullIsUnknownSize

bool llvm::ObjectSizeOpts::NullIsUnknownSize = false

RoundToAlign

bool llvm::ObjectSizeOpts::RoundToAlign = false


The documentation for this struct was generated from the following file: