summaryrefslogtreecommitdiff
path: root/include/llvm/DerivedTypes.h
Commit message (Collapse)AuthorAge
* Add a method to get the bit width of a packed type.Reid Spencer2006-11-15
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31750 91177308-0d34-0410-b5e6-96231b3b80d8
* add a new Type::getIntegralTypeMask() method, which is useful for clients thatChris Lattner2006-02-07
| | | | | | | want to do bitwise inspection of integer types. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26032 91177308-0d34-0410-b5e6-96231b3b80d8
* Shrink derived types by 8 bytes each by not having to have 2 vtables pointersChris Lattner2005-11-13
| | | | | | | and other MI overhead. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24344 91177308-0d34-0410-b5e6-96231b3b80d8
* Refactor some code, moving methods and data around. This gets rid of someChris Lattner2005-11-13
| | | | | | | virtual methods. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24342 91177308-0d34-0410-b5e6-96231b3b80d8
* Some cleanups for compilation with GCC 4.0.0 to remove warnings:Reid Spencer2005-05-15
| | | | | | | | * Use C++ style casts, not C style casts * Abstract base classes should have virtual destructor. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22057 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove trailing whitespaceMisha Brukman2005-04-21
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21408 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix VC++ compilation errorJeff Cohen2005-01-08
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19403 91177308-0d34-0410-b5e6-96231b3b80d8
* Allow array types to have 64-bit size.Chris Lattner2005-01-08
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19394 91177308-0d34-0410-b5e6-96231b3b80d8
* Warning fixes for VC++, contributed by Morten Ofstad!Chris Lattner2004-11-15
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17831 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove unnecessary spaces in function signatureMisha Brukman2004-10-19
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17139 91177308-0d34-0410-b5e6-96231b3b80d8
* Get friendly with TypeChris Lattner2004-10-07
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16812 91177308-0d34-0410-b5e6-96231b3b80d8
* Packed types, brought to you by Brad JonesBrian Gaeke2004-08-20
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15938 91177308-0d34-0410-b5e6-96231b3b80d8
* This file uses the Value class without a forward declChris Lattner2004-07-08
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14691 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove all of the classof(const Value*) methods of the derived types sinceReid Spencer2004-07-04
| | | | | | | the Type base class no longer derives from Value. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14593 91177308-0d34-0410-b5e6-96231b3b80d8
* Rename Type::PrimitiveID to TypeId and ::getPrimitiveID() to ::getTypeID()Chris Lattner2004-06-17
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14201 91177308-0d34-0410-b5e6-96231b3b80d8
* Convert dump() method to call Type::dump() instead of Value::dump().Reid Spencer2004-05-25
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13744 91177308-0d34-0410-b5e6-96231b3b80d8
* Be more restrictive with the index types we allow for sequential typesChris Lattner2004-04-05
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12650 91177308-0d34-0410-b5e6-96231b3b80d8
* Rearrange code to eliminate warningsChris Lattner2004-02-17
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11512 91177308-0d34-0410-b5e6-96231b3b80d8
* Sprinkle liberally with comments, saute with doxygen until readable.Misha Brukman2004-02-10
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11293 91177308-0d34-0410-b5e6-96231b3b80d8
* Now that all of the derived types have disciplined interfaces, we can eliminateChris Lattner2004-02-09
| | | | | | | | all of the ad-hoc storage of contained types. This allows getContainedType to not be virtual, and allows us to entirely delete the TypeIterator class. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11230 91177308-0d34-0410-b5e6-96231b3b80d8
* Increase encapsulation of the StructType class, eliminating the ↵Chris Lattner2004-02-09
| | | | | | getElementTypes() member git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11227 91177308-0d34-0410-b5e6-96231b3b80d8
* Improve encapsulation in the FunctionType class, by adding ↵Chris Lattner2004-02-09
| | | | | | | | | param_(iterator/begin/end) members, and eliminating the getParamTypes() method, and the associated typedef. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11223 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix grammar.Misha Brukman2004-02-06
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11153 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove an obsolete method, including its _long_ out of date comment.Chris Lattner2004-01-09
| | | | | | | This is an incremental step towards fixing PR82 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10723 91177308-0d34-0410-b5e6-96231b3b80d8
* It is legal to index into sequential types with any integerChris Lattner2003-11-25
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10227 91177308-0d34-0410-b5e6-96231b3b80d8
* Put all LLVM code into the llvm namespace, as per bug 109.Brian Gaeke2003-11-11
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9903 91177308-0d34-0410-b5e6-96231b3b80d8
* Added LLVM copyright header (for lack of a better term).John Criswell2003-10-20
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9304 91177308-0d34-0410-b5e6-96231b3b80d8
* Vector is my friend, do you like vector?Chris Lattner2003-10-15
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9147 91177308-0d34-0410-b5e6-96231b3b80d8
* Make getContainedType more efficient by not returning null if out of range!Chris Lattner2003-10-09
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8987 91177308-0d34-0410-b5e6-96231b3b80d8
* Minor cleanupsChris Lattner2003-10-03
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8843 91177308-0d34-0410-b5e6-96231b3b80d8
* This checkin basically amounts to a complete rewrite of the type-resolutionChris Lattner2003-10-03
| | | | | | | | | | | | | | | | | | | machinery. This dramatically simplifies how things works, removes irritating little corner cases, and overall improves speed and reliability. Highlights of this change are: 1. The exponential algorithm built into the code is now gone. For example the time to disassemble one bytecode file from the mesa benchmark went from taking 12.5s to taking 0.16s. 2. The linker bugs should be dramatically reduced. The one remaining bug has to do with constant handling, which I actually introduced in "union-find" checkins. 3. The code is much easier to follow, as a result of fewer special cases. It's probably also smaller. yaay. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8842 91177308-0d34-0410-b5e6-96231b3b80d8
* Make the PATypeHolder use a simple union-find implementation to handleChris Lattner2003-10-02
| | | | | | | | merging of types. This makes it MUCH more efficient than before, also making things simpler. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8833 91177308-0d34-0410-b5e6-96231b3b80d8
* There is no reason for Value to be an AbstractTypeUser. This just makes thingsChris Lattner2003-10-02
| | | | | | | | | significantly more complete. Instead, just make DerivedType's AbstractTypeUser's, and make Value contain a PATypeHolder. This will also be more efficient in the future. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8827 91177308-0d34-0410-b5e6-96231b3b80d8
* Standardize header file commentsChris Lattner2003-09-30
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8782 91177308-0d34-0410-b5e6-96231b3b80d8
* Get friendlyChris Lattner2003-09-05
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8356 91177308-0d34-0410-b5e6-96231b3b80d8
* Reshuffling of APIsChris Lattner2003-09-05
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8354 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove methodChris Lattner2003-09-04
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8349 91177308-0d34-0410-b5e6-96231b3b80d8
* Other minor cleanups while I'm in the areaChris Lattner2003-09-01
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8284 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix spell-oChris Lattner2003-09-01
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8283 91177308-0d34-0410-b5e6-96231b3b80d8
* The word `dependent' has no `a'.Misha Brukman2003-08-21
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8030 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove redundant const qualifiers from cast<> expressionsChris Lattner2003-07-23
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7253 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove a ton of extraneous #includesChris Lattner2003-06-22
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6842 91177308-0d34-0410-b5e6-96231b3b80d8
* Detemplatize the PATypeHandle class, which was only really instantiated on ↵Chris Lattner2003-06-18
| | | | | | 'Type'. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6774 91177308-0d34-0410-b5e6-96231b3b80d8
* Included assert.h so that the code compiles under newer versions of GCC.John Criswell2003-06-11
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6682 91177308-0d34-0410-b5e6-96231b3b80d8
* Convert index type for getelementptr instruction from uint to longChris Lattner2002-09-11
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3678 91177308-0d34-0410-b5e6-96231b3b80d8
* *** empty log message ***Chris Lattner2002-06-25
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2777 91177308-0d34-0410-b5e6-96231b3b80d8
* * Delete getNumAbstractTypeUsers methodChris Lattner2002-04-05
| | | | | | | * Move addAbstractTypeUser method to Type.cpp git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2120 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove backwards compatibility codeChris Lattner2002-04-04
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2114 91177308-0d34-0410-b5e6-96231b3b80d8
* Add more accessorsChris Lattner2002-03-29
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2047 91177308-0d34-0410-b5e6-96231b3b80d8
* s/Method/FunctionChris Lattner2002-03-29
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2034 91177308-0d34-0410-b5e6-96231b3b80d8