aboutsummaryrefslogtreecommitdiff
path: root/include/llvm/Function.h
AgeCommit message (Collapse)Author
2004-03-01Fix grammar and doxygenify comments.Misha Brukman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12054 91177308-0d34-0410-b5e6-96231b3b80d8
2004-02-26Annotations are evil. This makes Value not derive from Annotable, which makesChris Lattner
all dynamically allocated LLVM values 4 bytes smaller, eliminate some vtables, and make Value's destructor faster. This makes Function derive from Annotation now because it is the only core LLVM class that still has an annotation stuck onto it: MachineFunction. MachineFunction is obviously horrible and gross (like most other annotations), but will be the subject of refactorings later in the future. Besides many fewer Function objects are dynamically allocated that instructions blocks, constants, types, etc... :) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11878 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-11Put all LLVM code into the llvm namespace, as per bug 109.Brian Gaeke
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9903 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-30Expose new print methodsChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9620 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-22Add two new function stubs for viewing the CFG of a function inside of theChris Lattner
debugger git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9373 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-20Added LLVM copyright header (for lack of a better term).John Criswell
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9304 91177308-0d34-0410-b5e6-96231b3b80d8
2003-09-20Rename getEntryNode -> getEntryBlock()Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8624 91177308-0d34-0410-b5e6-96231b3b80d8
2003-09-17Add new deleteBody methodChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8571 91177308-0d34-0410-b5e6-96231b3b80d8
2003-05-09Update out of date commentChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6070 91177308-0d34-0410-b5e6-96231b3b80d8
2003-05-08Initial support for intrinsic functionsChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6033 91177308-0d34-0410-b5e6-96231b3b80d8
2003-04-16Add new linkage types to support a real frontendChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5786 91177308-0d34-0410-b5e6-96231b3b80d8
2002-11-20 - Eliminated the deferred symbol table stuff in Module & Function, it reallyChris Lattner
wasn't an optimization and it was causing lots of bugs. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4779 91177308-0d34-0410-b5e6-96231b3b80d8
2002-11-20Eliminate the concept of a deferred symbol table. The optimization really ↵Chris Lattner
isn't, and it causes obscure bugs to show up in passes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4777 91177308-0d34-0410-b5e6-96231b3b80d8
2002-10-15 - Eliminate SymbolTable::ParentSymTab, ST::localLookup, andChris Lattner
Function::ParentSymTab. These aren't needed at all. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4186 91177308-0d34-0410-b5e6-96231b3b80d8
2002-10-09Make isExtern() be a virtual function inherited from GlobalValueChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4101 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-06* Clean up some commentsChris Lattner
* Move code out of header file to .cpp files, to make future changes easier * Add arguments to classes so that they can be automatically inserted into their parent structure upon creation. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3604 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-06* Clean up indentation a bitChris Lattner
* Fix broken comments (copy and pasto) * Remove irrelevant comment * Add extra argument to function that causes it to get inserted into a module automatically. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3601 91177308-0d34-0410-b5e6-96231b3b80d8
2002-08-25Convert comments to Doxygen styleChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3507 91177308-0d34-0410-b5e6-96231b3b80d8
2002-06-25*** empty log message ***Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2777 91177308-0d34-0410-b5e6-96231b3b80d8
2002-04-28* Incorporate the functionality of SymTabValue into FunctionChris Lattner
* s/Method/Function git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2343 91177308-0d34-0410-b5e6-96231b3b80d8
2002-04-09Move FunctionArgument out of iOther.h into Argument.h and rename class toChris Lattner
be 'Argument' instead of FunctionArgument. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2217 91177308-0d34-0410-b5e6-96231b3b80d8
2002-04-08* Add virtual print methodsChris Lattner
* s/Method/Function git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2172 91177308-0d34-0410-b5e6-96231b3b80d8
2002-03-29s/Method/Function/Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2024 91177308-0d34-0410-b5e6-96231b3b80d8
2002-03-26Transform uses of Method into uses of Function.Chris Lattner
Rename MethodArgument to FunctionArgument Fix some _really_ out of date comments git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1986 91177308-0d34-0410-b5e6-96231b3b80d8
2002-03-23Update documentation, rename Method to Function, move typedef to Value.h for ↵Chris Lattner
now. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1953 91177308-0d34-0410-b5e6-96231b3b80d8
2002-03-23Add transition typedef to FunctionChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1951 91177308-0d34-0410-b5e6-96231b3b80d8
2002-02-12* Move BasicBlock and Method graph stuff to new "llvm/Support/CFG.h" fileChris Lattner
* Move Method::inst_* to new "llvm/Support/InstIterator.h" file * Method.h no longer #includes BasicBlock.h git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1743 91177308-0d34-0410-b5e6-96231b3b80d8
2002-01-20Changes to build successfully with GCC 3.02Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1503 91177308-0d34-0410-b5e6-96231b3b80d8
2001-12-13Implement proper iterator tagsChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1441 91177308-0d34-0410-b5e6-96231b3b80d8
2001-12-04Renamed inst_const_iterator -> const_inst_iteratorChris Lattner
Renamed op_const_iterator -> const_op_iterator Renamed PointerType::getValueType() -> PointerType::getElementType() git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1408 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26Implement "internal vs external linkage" which corresponds to the C notion ↵Chris Lattner
of static git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1362 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-08Remove unneeded forward declChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1216 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-08Removed MachineCodeForMethod object and made it an annotation.Vikram S. Adve
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1183 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-30Fix ordering problem. Found by purify. :)Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1042 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-22Added object of class MachineCodeForMethod.Vikram S. Adve
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@953 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-14Update comment, remove misleading methodChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@806 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-14Added getEntryNode() and getExitNode() functions.Vikram S. Adve
The latter are actually bogus and will be fixed by me soon. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@802 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-03Factor parentness out of Module & GlobalVariable into GlobalValueChris Lattner
Implement SymbolTable debug/dump utility git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@710 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-03* Both Method & GlobalVariable now subclass GlobalValueChris Lattner
* ConstPoolPointerReference now represents a pointer to a GlobalValue * Methods name references are now explicit pointers to methods * Rename Value::GlobalVal to Value::GlobalVariableVal to avoid confusion git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@703 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-02Commit more code over to new cast styleChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@697 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-01Add support for new style castsChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@694 91177308-0d34-0410-b5e6-96231b3b80d8
2001-09-28Pull iterators out of CFG.h and CFGdecls and put them in Support directoryChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@664 91177308-0d34-0410-b5e6-96231b3b80d8
2001-09-10* Method::getType should return type cast as MethodType, eliminate getMethodTypeChris Lattner
* Make Type::*Ty not be const types * Add a new Type.def file to provide info about types * Add a full complement of casting methods to the Type class git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@533 91177308-0d34-0410-b5e6-96231b3b80d8
2001-09-10Implement global variable supportChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@530 91177308-0d34-0410-b5e6-96231b3b80d8
2001-09-07* Support new setName interfaceChris Lattner
* Make the iterator a little nicer git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@422 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-15Rename 'isMethodExternal' to 'isExternal'Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-14Made the following changes:Chris Lattner
* ValueHolder became a 3 argument template. This allows for BasicBlock to use the value holder arg as a typesafe parent pointer. * SymTabValue no longer inherits from Value * Method does not inherit from only SymTabValue. Now it inherits from both STV & Value. * Module does not inherit from only SymTabValue. Now it inherits from both STV & Value. * Updated the SymTabValue.h file to reference SymTabValue instead of STDef in several places * Added isArraySelector & isStructSelector to GetElementPtr instruction git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177 91177308-0d34-0410-b5e6-96231b3b80d8
2001-07-07Changed the fundemental architecture of Operands for Instructions. NowChris Lattner
Operands are maintained as a vector<Use> in the User class, and operator iterators are provided as before. Getting an operand no longer requires a virtual function call. WARNING: getOperand(x) where x >= getNumOperands() will now assert instead of returning null! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149 91177308-0d34-0410-b5e6-96231b3b80d8
2001-06-27Add extra forwarding accessor methods so that getMethodList(), getBasicBlocks()Chris Lattner
and getInstList() are obsolete... except for when modifying those lists. This makes code much more succinct and to the point. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79 91177308-0d34-0410-b5e6-96231b3b80d8
2001-06-25CFG.h: change the iterator tagChris Lattner
Method.h: Add an iterator type. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68 91177308-0d34-0410-b5e6-96231b3b80d8