summaryrefslogtreecommitdiffstats
path: root/llvm/lib/VMCore/Module.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Push LLVMContexts through the IntegerType APIs.Owen Anderson2009-08-131-3/+4
| | | | llvm-svn: 78948
* Add getOrInsertNamedMetadata().Devang Patel2009-07-301-3/+14
| | | | llvm-svn: 77646
* Do not use getNamedValue() to lookup NamedMDNode. NamedMDNode is not a ↵Devang Patel2009-07-301-1/+1
| | | | | | | | GlobalValue. Thanks Benjamin Kramer! llvm-svn: 77619
* Move types back to the 2.5 API.Owen Anderson2009-07-291-6/+6
| | | | llvm-svn: 77516
* Move ConstantExpr to 2.5 API.Owen Anderson2009-07-291-2/+2
| | | | llvm-svn: 77494
* Keep track of named mdnodes in a Module using an ilist.Devang Patel2009-07-291-0/+8
| | | | llvm-svn: 77476
* Finish migrating VMCore to StringRef/Twine based APIs.Daniel Dunbar2009-07-251-25/+16
| | | | llvm-svn: 77051
* Switch ValueSymbolTable to StringRef based API.Daniel Dunbar2009-07-231-1/+1
| | | | llvm-svn: 76894
* LLVMContext-ification.Owen Anderson2009-07-081-6/+8
| | | | llvm-svn: 75072
* Switch GlobalVariable ctors to a sane API, where *either* a context or a ↵Owen Anderson2009-07-081-10/+6
| | | | | | module is required. llvm-svn: 75025
* Push LLVMContext through GlobalVariables and IRBuilder.Owen Anderson2009-07-081-3/+7
| | | | llvm-svn: 74985
* Make the use of const with respect to LLVMContext sane. Hopefully this is ↵Owen Anderson2009-07-011-1/+1
| | | | | | | | the last time, for the moment, that I will need to make far-reaching changes. llvm-svn: 74655
* Hold the LLVMContext by reference rather than by pointer.Owen Anderson2009-07-011-1/+1
| | | | llvm-svn: 74640
* Add a pointer to the owning LLVMContext to Module. This requires threading ↵Owen Anderson2009-07-011-2/+3
| | | | | | | | | | LLVMContext through a lot of the bitcode reader and ASM parser APIs, as well as supporting it in all of the tools. Patches for Clang and LLVM-GCC to follow. llvm-svn: 74614
* "ghostify" the ilist<Function> sentinelGabor Greif2009-03-271-8/+0
| | | | llvm-svn: 67872
* further simplifications arising from peruse of the more declarative interfaceGabor Greif2009-03-071-10/+0
| | | | llvm-svn: 66333
* Add Module::getNamedValue; use to normalize access to Module symbolDaniel Dunbar2009-03-061-19/+21
| | | | | | | table. - No functionality change. llvm-svn: 66289
* Reapply 63765. Patches for clang and llvm-gcc to follow.Dale Johannesen2009-02-051-0/+19
| | | | llvm-svn: 63812
* Reverting 63765. This broke the build of both clangDale Johannesen2009-02-041-19/+0
| | | | | | and llvm-gcc. llvm-svn: 63786
* New feature: add support for target intrinsics being defined in theNate Begeman2009-02-041-0/+19
| | | | | | | | | target directories themselves. This also means that VMCore no longer needs to know about every target's list of intrinsics. Future work will include converting the PowerPC target to this interface as an example implementation. llvm-svn: 63765
* Add the private linkage.Rafael Espindola2009-01-151-6/+5
| | | | llvm-svn: 62279
* Add a mechanism to specify attributes in getOrInsertFunction.Nick Lewycky2009-01-041-2/+29
| | | | llvm-svn: 61645
* Add comments to function.Bill Wendling2008-11-051-0/+6
| | | | llvm-svn: 58781
* - Add a "getOrInsertGlobal" method to the Module class. This acts similarly toBill Wendling2008-11-041-0/+22
| | | | | | | | | | "getOrInsertFunction" in that it either adds a new declaration of the global and returns it, or returns the current one -- optionally casting it to the correct type. - Use the new getOrInsertGlobal in the stack protector code. - Use "splitBasicBlock" in the stack protector code. llvm-svn: 58727
* Switch the asmprinter (.ll) and all the stuff it requires over toChris Lattner2008-08-231-5/+0
| | | | | | | | | | | | | | | | | | | | | | | | use raw_ostream instead of std::ostream. Among other goodness, this speeds up llvm-dis of kc++ with a release build from 0.85s to 0.49s (88% faster). Other interesting changes: 1) This makes Value::print be non-virtual. 2) AP[S]Int and ConstantRange can no longer print to ostream directly, use raw_ostream instead. 3) This fixes a bug in raw_os_ostream where it didn't flush itself when destroyed. 4) This adds a new SDNode::print method, instead of only allowing "dump". A lot of APIs have both std::ostream and raw_ostream versions, it would be useful to go through and systematically anihilate the std::ostream versions. This passes dejagnu, but there may be minor fallout, plz let me know if so and I'll fix it. llvm-svn: 55263
* simplify some code to avoid string thrashing.Chris Lattner2008-06-271-3/+5
| | | | llvm-svn: 52837
* Add a new version of Module::getFunction that takes a const char* insteadChris Lattner2008-06-271-0/+5
| | | | | | | of a std::string. This avoids copying the string to the heap in common cases. Patch by Pratik Solanki! llvm-svn: 52834
* API changes for class Use size reduction, wave 1.Gabor Greif2008-04-061-2/+2
| | | | | | | | Specifically, introduction of XXX::Create methods for Users that have a potentially variable number of Uses. llvm-svn: 49277
* Remove an unnecessary #includeDan Gohman2008-03-101-1/+0
| | | | llvm-svn: 48193
* Fix 80-col violations.Dan Gohman2008-01-291-1/+2
| | | | llvm-svn: 46510
* Remove attribution from file headers, per discussion on llvmdev.Chris Lattner2007-12-291-2/+2
| | | | llvm-svn: 45418
* Change the PointerType api for creating pointer types. The old functionality ↵Christopher Lamb2007-12-171-2/+2
| | | | | | of PointerType::get() has become PointerType::getUnqual(), which returns a pointer in the generic address space. The new prototype of PointerType::get() requires both a type and an address space. llvm-svn: 45082
* Implement review feedback. Aliasees can be either GlobalValue's orAnton Korobeynikov2007-04-281-0/+3
| | | | | | bitcasts of them. llvm-svn: 36537
* Implement aliases. This fixes PR1017 and it's dependent bugs. CFE partAnton Korobeynikov2007-04-251-0/+23
| | | | | | will follow. llvm-svn: 36435
* The (negative) offset from a SymbolTableListTraits-using ilist to its containerChris Lattner2007-04-171-2/+0
| | | | | | | | | object is always constant. As such, evaluate it at compile time instead of storing it as an ivar in SymbolTableListTraits. This shrinks every SymbolTableListTraits ilist by a word, shrinking BasicBlock from 44->40 bytes, Function from 96->88 bytes, and Module from 60->52 bytes. llvm-svn: 36189
* Refactor SymbolTableListTraits to only have a single pointer in it, insteadChris Lattner2007-04-171-6/+2
| | | | | | | | of two. This shrinkifies Function by 8 bytes (104->96) and Module by 8 bytes (68->60). On a testcase of mine, this reduces the memory used to read a module header from 565680b to 561024, a little over 4K. llvm-svn: 36188
* For PR1146:Reid Spencer2007-04-091-2/+1
| | | | | | Simplify construction of FunctionType to use default arguments. llvm-svn: 35810
* For PR411:Reid Spencer2007-02-051-2/+2
| | | | | | | | Adjust to changes in Module interface: getMainFunction() -> getFunction("main") getNamedFunction(X) -> getFunction(X) llvm-svn: 33922
* For PR411:Reid Spencer2007-02-051-94/+18
| | | | | | | | | | This patch replaces the SymbolTable class with ValueSymbolTable which does not support types planes. This means that all symbol names in LLVM must now be unique. The patch addresses the necessary changes to deal with this and removes code no longer needed as a result. This completes the bulk of the changes for this PR. Some cleanup patches will follow. llvm-svn: 33918
* For PR1163:Reid Spencer2007-02-041-0/+17
| | | | | | | Make the Module's dependent library use a std::vector instead of SetVector adjust #includes in .cpp files because SetVector.h is no longer included. llvm-svn: 33855
* For PR1136: Rename GlobalVariable::isExternal as isDeclaration to avoidReid Spencer2007-01-301-1/+1
| | | | | | confusion with external linkage types. llvm-svn: 33663
* For PR761:Reid Spencer2007-01-261-20/+0
| | | | | | | Remove the setEndianess and setPointerSize methods. These are now handled via the setDataLayout method. llvm-svn: 33527
* Change the interface to Module::getOrInsertFunction to be easier to use,Chris Lattner2007-01-071-12/+24
| | | | | | to resolve PR1088, and to help PR411. llvm-svn: 32988
* For PR411:Reid Spencer2007-01-061-12/+15
| | | | | | | | | Take an incremental step towards type plane elimination. This change separates types from values in the symbol tables by finally making use of the TypeSymbolTable class. This yields more natural interfaces for dealing with types and unclutters the SymbolTable class. llvm-svn: 32956
* For PR950:Reid Spencer2006-12-311-7/+8
| | | | | | Change signed integer type names to unsigned equivalents. llvm-svn: 32780
* Removing even more <iostream> includes.Bill Wendling2006-12-071-2/+1
| | | | llvm-svn: 32320
* Make the getNamedFunction and getNamedGlobal methods be const. They don'tReid Spencer2006-05-311-8/+8
| | | | | | change the module in any way and we should enforce that. llvm-svn: 28588
* Fix some think-o's in my last commit. Thanks to Chris for pointing them out.Owen Anderson2006-05-181-16/+18
| | | | llvm-svn: 28380
* Change Module to use TargetData-compatible strings internally.Owen Anderson2006-05-181-1/+60
| | | | | | This is part of the on-going work on PR 761. llvm-svn: 28379
* add a new helper method.Chris Lattner2006-03-081-0/+14
| | | | llvm-svn: 26618
OpenPOWER on IntegriCloud