//==-- OverflowInstAnalysis.cpp - Utils to fold overflow insts ----*- C++ -*-=// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// // // This file holds routines to help analyse overflow instructions // and fold them into constants or other overflow instructions // //===----------------------------------------------------------------------===// #include "llvm/Analysis/OverflowInstAnalysis.h" #include "llvm/IR/Instructions.h" #include "llvm/IR/PatternMatch.h" usingnamespacellvm; usingnamespacellvm::PatternMatch; bool llvm::isCheckForZeroAndMulWithOverflow(Value *Op0, Value *Op1, bool IsAnd, Use *&Y) { … } bool llvm::isCheckForZeroAndMulWithOverflow(Value *Op0, Value *Op1, bool IsAnd) { … }