Accumulates no‐wrap and related flags across merged instructions.

Synopsis

Declared in <llvm/Transforms/Utils/Local.h>

struct OverflowTracking;

Member Functions

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.

Data Members

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.

Created with MrDocs