enum class RecurKind

Description

These are the kinds of recurrences that we support.

Declared at: llvm/include/llvm/Analysis/IVDescriptors.h:35

Enumerators

NameValueComment
None0Not a recurrence.
Add1Sum of integers.
Mul2Product of integers.
Or3Bitwise or logical OR of integers.
And4Bitwise or logical AND of integers.
Xor5Bitwise or logical XOR of integers.
SMin6Signed integer min implemented in terms of select(cmp()).
SMax7Signed integer max implemented in terms of select(cmp()).
UMin8Unisgned integer min implemented in terms of select(cmp()).
UMax9Unsigned integer max implemented in terms of select(cmp()).
FAdd10Sum of floats.
FMul11Product of floats.
FMin12FP min implemented in terms of select(cmp()).
FMax13FP max implemented in terms of select(cmp()).
FMulAdd14Fused multiply-add of floats (a * b + c).
SelectICmp15Integer select(icmp(),x,y) where one of (x,y) is loop invariant
SelectFCmp16Integer select(fcmp(),x,y) where one of (x,y) is loop invariant