15 #ifndef LLVM_TRANSFORMS_UTILS_CALLPROMOTIONUTILS_H 16 #define LLVM_TRANSFORMS_UTILS_CALLPROMOTIONUTILS_H 30 const char **FailureReason =
nullptr);
39 Instruction *
promoteCall(CallSite CS, Function *Callee,
40 CastInst **RetBitCast =
nullptr);
50 MDNode *BranchWeights =
nullptr);
54 #endif // LLVM_TRANSFORMS_UTILS_CALLPROMOTIONUTILS_H This class represents lattice values for constants.
bool isLegalToPromote(CallSite CS, Function *Callee, const char **FailureReason=nullptr)
Return true if the given indirect call site can be made to call Callee.
Instruction * promoteCall(CallSite CS, Function *Callee, CastInst **RetBitCast=nullptr)
Promote the given indirect call site to unconditionally call Callee.
Instruction * promoteCallWithIfThenElse(CallSite CS, Function *Callee, MDNode *BranchWeights=nullptr)
Promote the given indirect call site to conditionally call Callee.