Skip to main content

Module attributes

Module attributes 

Source
Expand description

Attributes belonging to the LLVM dialect.

Structs§

AddressSpaceAttr
Address space of a pointer or global, corresponding to LLVM’s addrspace(N).
AggregateAttr
A constant aggregate, with a constant attribute per element: LLVM’s ConstantArray, ConstantStruct or ConstantVector (and their Data variants)
AlignmentAttr
BytesAttr
An attribute containing a sequence of bytes: LLVM’s ConstantDataArray of i8s.
CaseValuesAttr
An attribute that contains a list of case values for a switch operation.
CaseValuesAttrVerifyErr
FastmathFlagParseErr
FastmathFlags
Fast math flags for floating point operations.
FastmathFlagsAttr
GepIndicesAttr
GepNoWrapFlagParseErr
GepNoWrapFlags
No-wrap flags for getelementptr operations.
GepNoWrapFlagsAttr
InsertExtractValueIndicesAttr
IntegerOverflowFlagsAttr
Integer overflow flags for arithmetic operations. The description below is from LLVM’s release notes that added the flags. “nsw” and “nuw” bits indicate that the operation is guaranteed to not overflow (in the signed or unsigned case, respectively). This gives the optimizer more information and can be used for things like C signed integer values, which are undefined on overflow.
PoisonAttr
The poison value of a type.
ShuffleVectorMaskAttr
SplatAttr
A vector constant all of whose elements are element: LLVM’s splat (...)
SymbolAddrAttr
The address of a global variable or a function, LLVM’s ptr @symbol.
UndefAttr
The undef value of a type.
ZeroAttr
The “zero” value of a type: a null pointer, or an all-zero-bits aggregate.

Enums§

AtomicOrderingAttr
Memory ordering for an atomic operation
AtomicRmwKindAttr
The kind of an LLVM atomicrmw operation.
ConstAggregateVerifyErr
FCmpPredicateAttr
GepIndexAttr
An index for a GEP can be either a constant or an SSA operand. Contrary to its name, this isn’t an [Attribute][pliron::attribute::Attribute].
ICmpPredicateAttr
LinkageAttr
SyncScopeAttr
Synchronization scope of an atomic operation

Statics§

ATTR_KEY_LLVM_DATA_LAYOUT
Attribute key for the LLVM data layout string of a [ModuleOp].
ATTR_KEY_LLVM_TARGET_TRIPLE
Attribute key for the LLVM target triple of a [ModuleOp].

Functions§

get_data_layout
Get the LLVM data layout of module, if set.
get_target_triple
Get the LLVM target triple of module, if set.
set_data_layout
Set the LLVM data layout of module.
set_target_triple
Set the LLVM target triple of module.