Skip to main content

Module op_interfaces

Module op_interfaces 

Source
Expand description

[Op] Interfaces defined in the LLVM dialect.

Structs§

FastMathFlagMissingErr
FastmathFlagMissingErr
IntBinArithOpErr
IntBinArithOpWithOverflowFlagErr
NNegFlagMissingErr
PointerTypeResultVerifyErr
SyncScopeMissingErr

Enums§

ScalarOrVectorErr

Statics§

ATTR_KEY_FAST_MATH_FLAGS
Attribute key for fastmath flags.
ATTR_KEY_INTEGER_OVERFLOW_FLAGS
Attribute key for integer overflow flags.
ATTR_KEY_LLVM_ALIGNMENT
Attribute key for alignment.
ATTR_KEY_LLVM_SYMBOL_NAME
Attribute key for LLVM symbol name.
ATTR_KEY_LLVM_VOLATILE
Attribute key for volatile memory operations.
ATTR_KEY_NNEG_FLAG
Attribute key for nneg flag.
ATTR_KEY_SYNC_SCOPE
Attribute key for the synchronization scope of an atomic [Op].

Traits§

AlignableOpInterface
Ops that can have an alignment set.
BinArithOp
Binary arithmetic [Op].
CastOpInterface
A Cast [Op] has one argument and one result.
CastOpWithNNegInterface
A Cast [Op] with NNEG flag.
FastMathFlags
Ops that have fast math flags.
FloatBinArithOp
Floating point binary arithmetic [Op]
FloatBinArithOpWithFastMathFlags
Floating point binary arithmetic [Op] with FastmathFlagsAttr
IntBinArithOp
Integer binary arithmetic [Op]
IntBinArithOpWithOverflowFlag
Integer binary arithmetic [Op] with IntegerOverflowFlagsAttr
IsDeclaration
Is a global value (variable or function) declaration.
LlvmSymbolName
Since LLVM symbols can have characters that are illegal in pliron, this interface provides a way to get the original LLVM symbol name.
NNegFlag
PointerTypeResult
An [Op] with a single result whose type is PointerType
ScalarOrVectorOpd
An operand whose type is either T or VectorType<T>.
ScalarOrVectorOpdImpls
An operand whose type either impls I or is VectorType<T: I>.
ScalarOrVectorRes
A result whose type is either T or VectorType<T>.
ScalarOrVectorResImpls
A result whose type either impls I or is VectorType<T: I>.
SyncScopeInterface
Atomic [Op]s that have a synchronization scope.
VolatilityOpInterface
Ops that can be marked volatile.