12#ifndef LLVM_ANALYSIS_GUARDUTILS_H
13#define LLVM_ANALYSIS_GUARDUTILS_H
44 Value *&WidenableCondition, BasicBlock *&IfTrueBB,
45 BasicBlock *&IfFalseBB);
50 BasicBlock *&IfFalseBB);
SmallVector< MachineOperand, 4 > Cond
@ BasicBlock
Various leaf nodes.
@ User
could "use" a pointer
This is an optimization pass for GlobalISel generic memory operations.
bool isGuard(const User *U)
Returns true iff U has semantics of a guard expressed in a form of call of llvm.experimental....
bool parseWidenableBranch(const User *U, Value *&Condition, Value *&WidenableCondition, BasicBlock *&IfTrueBB, BasicBlock *&IfFalseBB)
If U is widenable branch looking like: cond = ... wc = call i1 @llvm.experimental....
bool isWidenableBranch(const User *U)
Returns true iff U is a widenable branch (that is, parseWidenableBranch returns true).
bool isGuardAsWidenableBranch(const User *U)
Returns true iff U has semantics of a guard expressed in a form of a widenable conditional branch to ...