#ifndef LLVM_IR_FUNCTION_H
#define LLVM_IR_FUNCTION_H
#include "llvm/ADT/DenseSet.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/ADT/Twine.h"
#include "llvm/ADT/ilist_node.h"
#include "llvm/ADT/iterator_range.h"
#include "llvm/IR/Argument.h"
#include "llvm/IR/Attributes.h"
#include "llvm/IR/BasicBlock.h"
#include "llvm/IR/CallingConv.h"
#include "llvm/IR/DerivedTypes.h"
#include "llvm/IR/GlobalObject.h"
#include "llvm/IR/GlobalValue.h"
#include "llvm/IR/OperandTraits.h"
#include "llvm/IR/SymbolTableListTraits.h"
#include "llvm/IR/Value.h"
#include <cassert>
#include <cstddef>
#include <cstdint>
#include <memory>
#include <string>
namespace llvm {
namespace Intrinsic {
ID;
}
class AssemblyAnnotationWriter;
class Constant;
class ConstantRange;
class DataLayout;
struct DenormalMode;
class DISubprogram;
enum LibFunc : unsigned;
class LLVMContext;
class Module;
class raw_ostream;
class TargetLibraryInfoImpl;
class Type;
class User;
class BranchProbabilityInfo;
class BlockFrequencyInfo;
class LLVM_ABI Function : public GlobalObject, public ilist_node<Function> { … };
bool NullPointerIsDefined(const Function *F, unsigned AS = 0);
template <> struct OperandTraits<Function> : public HungoffOperandTraits { … };
DEFINE_TRANSPARENT_OPERAND_ACCESSORS(…)
}
#endif