summaryrefslogtreecommitdiffstats
path: root/llvm/lib
Commit message (Collapse)AuthorAgeFilesLines
* Undo the last patch. It slowed down bcwriter by 1.8% but only sped upReid Spencer2007-02-111-67/+5
| | | | | | the bc reader by 0.8%. Deemed "not worth it" llvm-svn: 34169
* Switch some std::vector's to SmallVectors. This speeds up -load-vn -gcseChris Lattner2007-02-101-3/+5
| | | | | | by 6% on tramp3d. llvm-svn: 34167
* modify CheckGEPInstructions to take a pointer and size instead of a vector.Chris Lattner2007-02-101-23/+31
| | | | llvm-svn: 34166
* Assert that elements of packed are pointer/float/opaque.Reid Spencer2007-02-101-0/+4
| | | | llvm-svn: 34165
* eliminate use of TargetData::getIndexedOffset that takes a vectorChris Lattner2007-02-102-7/+14
| | | | llvm-svn: 34163
* completely eliminate a temporary vectorChris Lattner2007-02-101-2/+2
| | | | llvm-svn: 34162
* eliminate temporary vectors.Chris Lattner2007-02-102-4/+5
| | | | llvm-svn: 34161
* Switch LayoutInfo to be a DenseMap instead of an std::map. This speeds upChris Lattner2007-02-101-13/+31
| | | | | | -load-vn -gcse by 2.3%. llvm-svn: 34160
* add a typedefChris Lattner2007-02-101-9/+8
| | | | llvm-svn: 34159
* eliminate the std::vector from StructLayout, allocating the elements immediatelyChris Lattner2007-02-101-43/+57
| | | | | | | after the StructLayout object in memory. This marginally improves locality, speeding up -load-vn -gcse by ~0.8%. llvm-svn: 34158
* encapsulate the rest of the StructLayout members.Chris Lattner2007-02-102-6/+6
| | | | llvm-svn: 34157
* Privatize StructLayout::MemberOffsets, adding an accessorChris Lattner2007-02-109-12/+13
| | | | llvm-svn: 34156
* Use ManagedStatic to manage LayoutInfo, instead of rolling our own.Chris Lattner2007-02-101-27/+24
| | | | llvm-svn: 34154
* Change TargetData::getIndexedOffset interface to not require indicesChris Lattner2007-02-101-8/+8
| | | | | | in a vector. llvm-svn: 34153
* Allow PackedType to be constructed with an abstract type.Reid Spencer2007-02-101-3/+1
| | | | llvm-svn: 34152
* Compaction tables don't exist any more.Reid Spencer2007-02-101-35/+0
| | | | llvm-svn: 34148
* For PR1194:Reid Spencer2007-02-101-5/+67
| | | | | | | | | | | | The bcreader counts on "primitive" types being inserted before they are referenced in other types. With recent changes to the bcwriter, this fact became exposed since IntegerType is no longer "primitive". We can no longer count on all IntegerTypes being inserted early. This patch modifies getOrCreateTypeSlot to insert any sub-type that can't possibly recurse before we create the slot for the type. This has the benefit of reducing the number of OpaqueType objects the reader needs to deal with. llvm-svn: 34147
* Fix a comment.Reid Spencer2007-02-101-1/+1
| | | | llvm-svn: 34146
* convert some vectors to smallvector.Chris Lattner2007-02-101-2/+3
| | | | llvm-svn: 34145
* speed up the verifier 8.5% by using a smallvector instead of vector.Chris Lattner2007-02-101-2/+5
| | | | llvm-svn: 34144
* Change an std::set to a SmallPtrSet. This speeds up the verifier onChris Lattner2007-02-101-1/+2
| | | | | | 447.dealII from 1.27s to 0.86s. llvm-svn: 34143
* Change the table datastructure to be a vector<smallvector>, instead ofChris Lattner2007-02-103-16/+14
| | | | | | | | | | vector<vector> to avoid allocations. This speeds up bcwriting of 447.dealII from 0.8276 to 0.7637s (8.4%). This concludes this round of proding the bcwriter into submission. Final speedup from 24.4s to 0.7637s (32x). llvm-svn: 34142
* Make BytecodeWriter::outputValueSymbolTable *significantly* less abusiveChris Lattner2007-02-101-3/+4
| | | | | | | of memory, through a combination of DenseMap and SmallVector. This speeds up bcwriter on 447.dealII from 1.31s to 0.82s (60% faster). llvm-svn: 34141
* make the datastructure used in BytecodeWriter::outputValueSymbolTableChris Lattner2007-02-101-4/+4
| | | | | | | *slightly* less abusive of memory. This speeds up the bcwriter from 1.83s to 1.32s (39% faster) on 447.dealII. llvm-svn: 34140
* Switch typemap over to DenseMap. No significant speedup.Chris Lattner2007-02-101-2/+1
| | | | llvm-svn: 34139
* Switch NodeMap from an std::map to a DenseMap. This speeds up bcwritingChris Lattner2007-02-101-1/+1
| | | | | | of 447.dealII from 3.3s to 1.8s (80% faster). llvm-svn: 34138
* use typedefs where appropriateChris Lattner2007-02-102-3/+3
| | | | llvm-svn: 34136
* The ModuleLevel vector is often quite sparse. Switch it to a DenseMap. ThisChris Lattner2007-02-102-18/+24
| | | | | | speeds up bcwriting of 447.dealII by 40%, from 4.63s to 3.32s. llvm-svn: 34135
* Make the ModuleLevel datastructure more sane. When a function-local valueChris Lattner2007-02-102-33/+19
| | | | | | | | is inserted into the table, it remembers that the value needs to be popped off. This makes purgeFunction much faster, speeding up bcwriting of 447.dealII from 6.8->4.6s (47%). llvm-svn: 34133
* Only compute the module levels info once per module, instead of onceChris Lattner2007-02-101-15/+7
| | | | | | | per function. This speeds up bcwriting on 447.dealII from 10.16s to 6.81s (49%). llvm-svn: 34132
* Clone and specialize CreateSlotIfNeeded into CreateFunctionValueSlot to handleChris Lattner2007-02-102-63/+101
| | | | | | | function-local values. This speeds up bcwriting a small 2.2% (10.384->10.156s on 447.dealII), but paves the way for more important changes. llvm-svn: 34131
* make getSlot/getTypeSlot inlineChris Lattner2007-02-102-14/+11
| | | | llvm-svn: 34130
* getTypeSlot can never failChris Lattner2007-02-103-62/+26
| | | | llvm-svn: 34129
* getSlot can never fail. Make it assert internally, eliminate checks inChris Lattner2007-02-103-63/+32
| | | | | | clients. Same for getTypeSlot. llvm-svn: 34128
* simplify getOrCreateTypeSlot, eliminat doInsertType. Eliminate post-order ↵Chris Lattner2007-02-102-32/+10
| | | | | | iteration stuff. llvm-svn: 34127
* simplify and speed up recursive type processing.Chris Lattner2007-02-101-4/+2
| | | | llvm-svn: 34126
* rename getOrCreateSlot -> CreateSlotIfNeeded. Noone cares about the retvalChris Lattner2007-02-102-23/+14
| | | | llvm-svn: 34125
* refactor callers of insertType. inline insertType into its one remaining ↵Chris Lattner2007-02-102-23/+11
| | | | | | caller. llvm-svn: 34124
* simplify code.Chris Lattner2007-02-102-33/+13
| | | | llvm-svn: 34123
* simplify some logic, reduce nestingChris Lattner2007-02-101-25/+20
| | | | llvm-svn: 34122
* Remove dead ctorChris Lattner2007-02-102-13/+0
| | | | llvm-svn: 34121
* ModuleContainsAllFunctionConstants is always trueChris Lattner2007-02-102-39/+10
| | | | llvm-svn: 34120
* only one client of getOrCreateSlot can pass a void typed value. Check typeChris Lattner2007-02-101-2/+3
| | | | | | there. llvm-svn: 34119
* inline hasNullValue, rename some variables, simplify some code.Chris Lattner2007-02-102-30/+24
| | | | llvm-svn: 34118
* merge insertValue into its single caller, eliminate some redundant checks.Chris Lattner2007-02-101-12/+1
| | | | llvm-svn: 34117
* merge doInsertValue into insertValueChris Lattner2007-02-102-54/+43
| | | | llvm-svn: 34116
* insertvalue's second operand is always falseChris Lattner2007-02-102-11/+7
| | | | llvm-svn: 34115
* remove dead 'dontIgnore' flag for insertTypeChris Lattner2007-02-102-12/+12
| | | | llvm-svn: 34114
* rename getSlot -> getSlotType and getOrCreateSlot ->getOrCreateTypeSlotChris Lattner2007-02-103-42/+43
| | | | | | for types. llvm-svn: 34113
* Add function live-ins to entry block live-in set.Evan Cheng2007-02-101-0/+8
| | | | llvm-svn: 34112
OpenPOWER on IntegriCloud