Accumulates no-wrap and related flags across merged instructions.
Declared in <llvm/Transforms/Utils/Local.h>
struct OverflowTracking;
| Name | Description |
|---|---|
OverflowTracking [constructor] | Construct an overflow tracker with optimistic default flags. |
applyFlags | Apply accumulated no-wrap flags to an instruction when applicable. |
mergeFlags | Merge in the no-wrap flags from an instruction. |
| Name | Description |
|---|---|
AllKnownNonNegative | Whether every merged value is known non-negative. |
AllKnownNonZero | Whether every merged value is known non-zero. |
HasNSW | Whether every merged instruction has the nsw flag. |
HasNUW | Whether every merged instruction has the nuw flag. |
IsDisjoint | Whether every merged instruction has the disjoint flag. |
Opcode | Opcode of merged instructions. All instructions passed to mergeFlags must have the same opcode. |