Return true if Op0 and Op1 match a zero check with mul‐with‐overflow.

Synopses

Declared in <llvm/Analysis/OverflowInstAnalysis.h>

Return true if Op0 and Op1 match a zero check with mul‐with‐overflow.

bool
isCheckForZeroAndMulWithOverflow(
    Value* Op0,
    Value* Op1,
    bool IsAnd);

Return true if Op0 and Op1 match a zero check with mul‐with‐overflow.

bool
isCheckForZeroAndMulWithOverflow(
    Value* Op0,
    Value* Op1,
    bool IsAnd,
    Use*& Y);

Return Value

  • True if Op0 and Op1 match a zero check with mul‐with‐overflow.

  • True if Op0 and Op1 match one of the patterns above.

Parameters

Name

Description

Op0

Zero‐comparison operand of the select or logic operation.

Op1

Overflow‐bit (or inverted overflow‐bit) operand.

IsAnd

True for the and/select‐false pattern; false for or/select‐true.

Y

Set to the use of the non‐zero multiplicand when a match is found.

Created with MrDocs