//===-- ConstantFolding.h - Analyze constant folding possibilities --------===// // // The LLVM Compiler Infrastructure // // This file was developed by the LLVM research group and is distributed under // the University of Illinois Open Source License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // // This family of functions determines the possibility of performing constant // folding. // //===----------------------------------------------------------------------===// #include "llvm/Constants.h" #include "llvm/Function.h" using namespace llvm; namespace llvm { /// canConstantFoldCallTo - Return true if its even possible to fold a call to /// the specified function. bool canConstantFoldCallTo(Function *F); /// ConstantFoldCall - Attempt to constant fold a call to the specified function /// with the specified arguments, returning null if unsuccessful. Constant * ConstantFoldCall(Function *F, Constant** Operands, unsigned NumOperands); }