Expand description
arith dialect.
The arith dialect is intended to hold basic integer and floating point
mathematical operations. This includes unary, binary, and ternary arithmetic
ops, bitwise and shift ops, cast ops, and compare ops. Operations in this
dialect also accept vectors and tensors of integers or floats. The dialect
assumes integers are represented by bitvectors with a two’s complement
representation. Unless otherwise stated, the operations within this dialect
propagate poison values, i.e., if any of its inputs are poison, then the
output is poison. Unless otherwise stated, operations applied to vector
and tensor values propagates poison elementwise.
Structs§
- AddF
Operation - An
addfoperation. Floating point addition operation. - AddF
Operation Builder - A builder for an
addfoperation. - AddI
Operation - An
addioperation. Integer addition operation. - AddI
Operation Builder - A builder for an
addioperation. - AddUI
Extended Operation - An
addui_extendedoperation. extended unsigned integer addition operation returning sum and overflow bit . - AddUI
Extended Operation Builder - A builder for an
addui_extendedoperation. - AndI
Operation - An
andioperation. Integer binary and. - AndI
Operation Builder - A builder for an
andioperation. - Bitcast
Operation - A
bitcastoperation. Bitcast between values of equal bit width. - Bitcast
Operation Builder - A builder for a
bitcastoperation. - Ceil
DivSI Operation - A
ceildivsioperation. Signed ceil integer division operation. - Ceil
DivSI Operation Builder - A builder for a
ceildivsioperation. - Ceil
DivUI Operation - A
ceildivuioperation. Unsigned ceil integer division operation. - Ceil
DivUI Operation Builder - A builder for a
ceildivuioperation. - CmpF
Operation - A
cmpfoperation. Floating-point comparison operation. - CmpF
Operation Builder - A builder for a
cmpfoperation. - CmpI
Operation - A
cmpioperation. Integer comparison operation. - CmpI
Operation Builder - A builder for a
cmpioperation. - Constant
Operation - A
constantoperation. Integer or floating point constant. - Constant
Operation Builder - A builder for a
constantoperation. - DivF
Operation - A
divfoperation. Floating point division operation. - DivF
Operation Builder - A builder for a
divfoperation. - DivSI
Operation - A
divsioperation. Signed integer division operation. - DivSI
Operation Builder - A builder for a
divsioperation. - DivUI
Operation - A
divuioperation. Unsigned integer division operation. - DivUI
Operation Builder - A builder for a
divuioperation. - ExtF
Operation - An
extfoperation. Cast from floating-point to wider floating-point. - ExtF
Operation Builder - A builder for an
extfoperation. - ExtSI
Operation - An
extsioperation. Integer sign extension operation. - ExtSI
Operation Builder - A builder for an
extsioperation. - ExtUI
Operation - An
extuioperation. Integer zero extension operation. - ExtUI
Operation Builder - A builder for an
extuioperation. - FPToSI
Operation - A
fptosioperation. Cast from floating-point type to integer type. - FPToSI
Operation Builder - A builder for a
fptosioperation. - FPToUI
Operation - A
fptouioperation. Cast from floating-point type to integer type. - FPToUI
Operation Builder - A builder for a
fptouioperation. - Floor
DivSI Operation - A
floordivsioperation. Signed floor integer division operation. - Floor
DivSI Operation Builder - A builder for a
floordivsioperation. - Index
Cast Operation - An
index_castoperation. Cast between index and integer types. - Index
Cast Operation Builder - A builder for an
index_castoperation. - Index
CastUI Operation - An
index_castuioperation. Unsigned cast between index and integer types. - Index
CastUI Operation Builder - A builder for an
index_castuioperation. - MaxNumF
Operation - A
maxnumfoperation. Floating-point maximum operation. - MaxNumF
Operation Builder - A builder for a
maxnumfoperation. - MaxSI
Operation - A
maxsioperation. Signed integer maximum operation. - MaxSI
Operation Builder - A builder for a
maxsioperation. - MaxUI
Operation - A
maxuioperation. Unsigned integer maximum operation. - MaxUI
Operation Builder - A builder for a
maxuioperation. - MaximumF
Operation - A
maximumfoperation. Floating-point maximum operation. - MaximumF
Operation Builder - A builder for a
maximumfoperation. - MinNumF
Operation - A
minnumfoperation. Floating-point minimum operation. - MinNumF
Operation Builder - A builder for a
minnumfoperation. - MinSI
Operation - A
minsioperation. Signed integer minimum operation. - MinSI
Operation Builder - A builder for a
minsioperation. - MinUI
Operation - A
minuioperation. Unsigned integer minimum operation. - MinUI
Operation Builder - A builder for a
minuioperation. - MinimumF
Operation - A
minimumfoperation. Floating-point minimum operation. - MinimumF
Operation Builder - A builder for a
minimumfoperation. - MulF
Operation - A
mulfoperation. Floating point multiplication operation. - MulF
Operation Builder - A builder for a
mulfoperation. - MulI
Operation - A
mulioperation. Integer multiplication operation. . - MulI
Operation Builder - A builder for a
mulioperation. - MulSI
Extended Operation - A
mulsi_extendedoperation. extended signed integer multiplication operation . - MulSI
Extended Operation Builder - A builder for a
mulsi_extendedoperation. - MulUI
Extended Operation - A
mului_extendedoperation. extended unsigned integer multiplication operation . - MulUI
Extended Operation Builder - A builder for a
mului_extendedoperation. - NegF
Operation - A
negfoperation. Floating point negation. - NegF
Operation Builder - A builder for a
negfoperation. - OrIOperation
- An
orioperation. Integer binary or. - OrIOperation
Builder - A builder for an
orioperation. - RemF
Operation - A
remfoperation. Floating point division remainder operation. - RemF
Operation Builder - A builder for a
remfoperation. - RemSI
Operation - A
remsioperation. Signed integer division remainder operation. - RemSI
Operation Builder - A builder for a
remsioperation. - RemUI
Operation - A
remuioperation. Unsigned integer division remainder operation. - RemUI
Operation Builder - A builder for a
remuioperation. - SIToFP
Operation - A
sitofpoperation. Cast from integer type to floating-point. - SIToFP
Operation Builder - A builder for a
sitofpoperation. - Scaling
ExtF Operation - A
scaling_extfoperation. Upcasts input floats using provided scales values following OCP MXFP Spec. - Scaling
ExtF Operation Builder - A builder for a
scaling_extfoperation. - Scaling
TruncF Operation - A
scaling_truncfoperation. Downcasts input floating point values using provided scales values following OCP MXFP Spec. - Scaling
TruncF Operation Builder - A builder for a
scaling_truncfoperation. - Select
Operation - A
selectoperation. Select operation. - Select
Operation Builder - A builder for a
selectoperation. - ShLI
Operation - A
shlioperation. Integer left-shift. - ShLI
Operation Builder - A builder for a
shlioperation. - ShRSI
Operation - A
shrsioperation. Signed integer right-shift. - ShRSI
Operation Builder - A builder for a
shrsioperation. - ShRUI
Operation - A
shruioperation. Unsigned integer right-shift. - ShRUI
Operation Builder - A builder for a
shruioperation. - SubF
Operation - A
subfoperation. Floating point subtraction operation. - SubF
Operation Builder - A builder for a
subfoperation. - SubI
Operation - A
subioperation. Integer subtraction operation. . - SubI
Operation Builder - A builder for a
subioperation. - TruncF
Operation - A
truncfoperation. Cast from floating-point to narrower floating-point. - TruncF
Operation Builder - A builder for a
truncfoperation. - TruncI
Operation - A
truncioperation. Integer truncation operation. - TruncI
Operation Builder - A builder for a
truncioperation. - UIToFP
Operation - An
uitofpoperation. Cast from unsigned integer type to floating-point. - UIToFP
Operation Builder - A builder for an
uitofpoperation. - XOrI
Operation - A
xorioperation. Integer binary xor. - XOrI
Operation Builder - A builder for a
xorioperation.
Enums§
Functions§
- addf
- Creates an
addfoperation. - addi
- Creates an
addioperation. - addui_
extended - Creates an
addui_extendedoperation. - andi
- Creates an
andioperation. - bitcast
- Creates a
bitcastoperation. - ceildivsi
- Creates a
ceildivsioperation. - ceildivui
- Creates a
ceildivuioperation. - cmpf
- Creates a
cmpfoperation. - cmpi
- Creates a
cmpioperation. - constant
- Creates a
constantoperation. - divf
- Creates a
divfoperation. - divsi
- Creates a
divsioperation. - divui
- Creates a
divuioperation. - extf
- Creates an
extfoperation. - extsi
- Creates an
extsioperation. - extui
- Creates an
extuioperation. - floordivsi
- Creates a
floordivsioperation. - fptosi
- Creates a
fptosioperation. - fptoui
- Creates a
fptouioperation. - index_
cast - Creates an
index_castoperation. - index_
castui - Creates an
index_castuioperation. - maximumf
- Creates a
maximumfoperation. - maxnumf
- Creates a
maxnumfoperation. - maxsi
- Creates a
maxsioperation. - maxui
- Creates a
maxuioperation. - minimumf
- Creates a
minimumfoperation. - minnumf
- Creates a
minnumfoperation. - minsi
- Creates a
minsioperation. - minui
- Creates a
minuioperation. - mulf
- Creates a
mulfoperation. - muli
- Creates a
mulioperation. - mulsi_
extended - Creates a
mulsi_extendedoperation. - mului_
extended - Creates a
mului_extendedoperation. - negf
- Creates a
negfoperation. - ori
- Creates an
orioperation. - remf
- Creates a
remfoperation. - remsi
- Creates a
remsioperation. - remui
- Creates a
remuioperation. - scaling_
extf - Creates a
scaling_extfoperation. - scaling_
truncf - Creates a
scaling_truncfoperation. - select
- Creates a
selectoperation. - shli
- Creates a
shlioperation. - shrsi
- Creates a
shrsioperation. - shrui
- Creates a
shruioperation. - sitofp
- Creates a
sitofpoperation. - subf
- Creates a
subfoperation. - subi
- Creates a
subioperation. - truncf
- Creates a
truncfoperation. - trunci
- Creates a
truncioperation. - uitofp
- Creates an
uitofpoperation. - xori
- Creates a
xorioperation.