Home | History | Annotate | Download | only in llvm

Lines Matching defs:Function

1 //===-- llvm/Function.h - Class to represent a single function --*- C++ -*-===//
10 // This file contains the declaration of the Function class, which represents a
11 // single function/procedure in LLVM.
13 // A function basically consists of a list of basic blocks, a list of arguments,
35 : public SymbolTableListTraits<BasicBlock, Function> {
48 static ValueSymbolTable *getSymTab(Function *ItemParent);
54 : public SymbolTableListTraits<Argument, Function> {
65 static ValueSymbolTable *getSymTab(Function *ItemParent);
70 class Function : public GlobalValue,
71 public ilist_node<Function> {
84 // Important things that make up a function!
98 friend class SymbolTableListTraits<Function, Module>;
102 /// hasLazyArguments/CheckLazyArguments - The argument list of a function is
117 Function(const Function&); // DO NOT IMPLEMENT
118 void operator=(const Function&); // DO NOT IMPLEMENT
120 /// Function ctor - If the (optional) Module argument is specified, the
121 /// function is automatically inserted into the end of the function list for
124 Function(FunctionType *Ty, LinkageTypes Linkage,
128 static Function *Create(FunctionType *Ty, LinkageTypes Linkage,
130 return new(0) Function(Ty, Linkage, N, M);
133 ~Function();
139 /// function, or NULL if this function is not bound to a context yet.
142 /// isVarArg - Return true if this function takes a variable number of
147 /// function, or Intrinsic::not_intrinsic if the function is not an
149 /// zero to allow easy checking for whether a function is intrinsic or not.
157 /// calling convention of this function. The enum values for the known
167 /// getAttributes - Return the attribute list for this Function.
171 /// setAttributes - Set the attribute list for this Function.
175 /// hasFnAttr - Return true if this function has the given attribute.
177 // Function Attributes are stored at ~0 index
181 /// addFnAttr - Add function attributes to this function.
184 // Function Attributes are stored at ~0 index
188 /// removeFnAttr - Remove function attributes from this function.
191 // Function Attributes are stored at ~0 index
202 /// @brief Determine whether the function has the given attribute.
218 /// @brief Determine if the function does not access memory.
227 /// @brief Determine if the function does not access or only reads memory.
236 /// @brief Determine if the function cannot return.
245 /// @brief Determine if the function cannot unwind.
255 /// function be in a unwind table.
266 /// @brief True if this function needs an unwind table.
271 /// @brief Determine if the function returns a structure through first
298 /// create a Function) from the Function Src to this one.
301 /// deleteBody - This method deletes the body of the function, and converts
320 /// Get the underlying elements of the Function... the basic block list is
331 static iplist<Argument> Function::*getSublistAccess(Argument*) {
332 return &Function::ArgumentList;
337 static iplist<BasicBlock> Function::*getSublistAccess(BasicBlock*) {
338 return &Function::BasicBlocks;
391 /// viewCFG - This function is meant for use from the debugger. You can just
393 /// program, displaying the CFG of the current function with the code for each
399 /// viewCFGOnly - This function is meant for use from the debugger. It works
407 static inline bool classof(const Function *) { return true; }
421 /// function, dropping all references deletes the entire body of the function,
426 /// hasAddressTaken - returns true if there are any uses of this function
432 /// callsFunctionThatReturnsTwice - Return true if the function has a call to
433 /// setjmp or other function that gcc recognizes as "returning twice".
445 ilist_traits<BasicBlock>::getSymTab(Function *F) {
450 ilist_traits<Argument>::getSymTab(Function *F) {