oota-llvm.git
17 years agonew testcase for PR1197
Chris Lattner [Tue, 13 Feb 2007 01:05:10 +0000 (01:05 +0000)]
new testcase for PR1197

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34215 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAdd invokeinst and callinst ctors that don't take vectors.
Chris Lattner [Tue, 13 Feb 2007 01:04:01 +0000 (01:04 +0000)]
Add invokeinst and callinst ctors that don't take vectors.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34214 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoremove some dead methods.
Chris Lattner [Tue, 13 Feb 2007 00:58:44 +0000 (00:58 +0000)]
remove some dead methods.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34213 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoregenerate
Chris Lattner [Tue, 13 Feb 2007 00:58:01 +0000 (00:58 +0000)]
regenerate

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34212 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoeliminate use of methods that take vectors as args
Chris Lattner [Tue, 13 Feb 2007 00:57:40 +0000 (00:57 +0000)]
eliminate use of methods that take vectors as args

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34211 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoI love non-deturminism. Returning objects with references to stack objects is a...
Andrew Lenharth [Tue, 13 Feb 2007 00:37:50 +0000 (00:37 +0000)]
I love non-deturminism.  Returning objects with references to stack objects is a bad idea (TM).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34210 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agostop using me thods that take a vector
Chris Lattner [Mon, 12 Feb 2007 22:58:38 +0000 (22:58 +0000)]
stop using me thods that take a vector

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34206 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agostop using methods that take vectors.
Chris Lattner [Mon, 12 Feb 2007 22:56:41 +0000 (22:56 +0000)]
stop using methods that take vectors.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34205 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agomore notes
Chris Lattner [Mon, 12 Feb 2007 21:20:26 +0000 (21:20 +0000)]
more notes

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34204 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoadd a note
Chris Lattner [Mon, 12 Feb 2007 20:26:34 +0000 (20:26 +0000)]
add a note

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34202 91177308-0d34-0410-b5e6-96231b3b80d8

17 years ago1. Make APInt::shl work correctly and more efficiently.
Zhou Sheng [Mon, 12 Feb 2007 20:02:55 +0000 (20:02 +0000)]
1. Make APInt::shl work correctly and more efficiently.
2. Add functions to support the numberical conversion between APInt and
   double/float.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34201 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoWrong value type.
Jim Laskey [Mon, 12 Feb 2007 19:05:51 +0000 (19:05 +0000)]
Wrong value type.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34199 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoavoid creating a temporary string when reading the symbol table for a
Chris Lattner [Mon, 12 Feb 2007 18:53:43 +0000 (18:53 +0000)]
avoid creating a temporary string when reading the symbol table for a
module.  This speeds up the bcreader 11%.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34198 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAdd new setName accessor which doesn't require creating a string.
Chris Lattner [Mon, 12 Feb 2007 18:52:59 +0000 (18:52 +0000)]
Add new setName accessor which doesn't require creating a string.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34197 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoFix build error on ARM.
Lauro Ramos Venancio [Mon, 12 Feb 2007 18:31:46 +0000 (18:31 +0000)]
Fix build error on ARM.
Since CompilerDriver.cpp revision 1.44, llvmc must be linked against LLVMCore.a (llvm::Module::~Module) and LLVMBCReader.a
(llvm::getBytecodeModuleProvider).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34196 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoSwitch ValueSymbolTable to use StringMap<Value*> instead of std::map<std::string...
Chris Lattner [Mon, 12 Feb 2007 05:18:08 +0000 (05:18 +0000)]
Switch ValueSymbolTable to use StringMap<Value*> instead of std::map<std::string, Value*>
as its main datastructure.  There are many improvements yet to be made, but
this speeds up opt --std-compile-opts on 447.dealII by 7.3%.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34193 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoRemove references to the now deprecated gccas and gccld.
Reid Spencer [Mon, 12 Feb 2007 05:03:33 +0000 (05:03 +0000)]
Remove references to the now deprecated gccas and gccld.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34192 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoUpdate for llvm-gcc v4.0 usage.
Reid Spencer [Mon, 12 Feb 2007 05:02:56 +0000 (05:02 +0000)]
Update for llvm-gcc v4.0 usage.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34191 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoadd #include
Chris Lattner [Mon, 12 Feb 2007 05:00:35 +0000 (05:00 +0000)]
add #include

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34190 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoadd new ShouldRehash method to factor out common code. Fix the dtor to not
Chris Lattner [Sun, 11 Feb 2007 21:46:36 +0000 (21:46 +0000)]
add new ShouldRehash method to factor out common code.  Fix the dtor to not
delete tombstones.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34189 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoregenerate
Chris Lattner [Sun, 11 Feb 2007 21:40:10 +0000 (21:40 +0000)]
regenerate

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34188 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoadd #include
Chris Lattner [Sun, 11 Feb 2007 21:39:35 +0000 (21:39 +0000)]
add #include

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34187 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agodo not allow hash table to be filled with tombstones.
Chris Lattner [Sun, 11 Feb 2007 21:07:36 +0000 (21:07 +0000)]
do not allow hash table to be filled with tombstones.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34186 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAdd support for removing elements out of StringMap.
Chris Lattner [Sun, 11 Feb 2007 20:58:00 +0000 (20:58 +0000)]
Add support for removing elements out of StringMap.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34185 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoFor PR1196:
Reid Spencer [Sun, 11 Feb 2007 20:18:32 +0000 (20:18 +0000)]
For PR1196:
Prevent infinite loops and memory bombs by setting a ulimit on time and
space for running the dejagnu tests.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34184 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoReplace the ugly FindValue method with STL-like find methods.
Chris Lattner [Sun, 11 Feb 2007 19:49:41 +0000 (19:49 +0000)]
Replace the ugly FindValue method with STL-like find methods.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34183 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agofix uninitialized variable
Chris Lattner [Sun, 11 Feb 2007 19:12:18 +0000 (19:12 +0000)]
fix uninitialized variable

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34182 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoremove support for stringmap visitors now that iterators exist.
Chris Lattner [Sun, 11 Feb 2007 08:22:15 +0000 (08:22 +0000)]
remove support for stringmap visitors now that iterators exist.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34180 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoadd support for iterators.
Chris Lattner [Sun, 11 Feb 2007 08:20:35 +0000 (08:20 +0000)]
add support for iterators.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34179 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoadd iterator support, plus support for size() and empty().
Chris Lattner [Sun, 11 Feb 2007 08:12:13 +0000 (08:12 +0000)]
add iterator support, plus support for size() and empty().

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34178 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agosimplify code by using Value::takeName
Chris Lattner [Sun, 11 Feb 2007 01:37:51 +0000 (01:37 +0000)]
simplify code by using Value::takeName

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34177 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoSimplify code by using value::takename
Chris Lattner [Sun, 11 Feb 2007 01:23:03 +0000 (01:23 +0000)]
Simplify code by using value::takename

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34176 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agosimplify name juggling through the use of Value::takeName.
Chris Lattner [Sun, 11 Feb 2007 01:08:35 +0000 (01:08 +0000)]
simplify name juggling through the use of Value::takeName.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34175 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoadd an optimization for the case where the src has no name
Chris Lattner [Sun, 11 Feb 2007 01:04:09 +0000 (01:04 +0000)]
add an optimization for the case where the src has no name

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34174 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoFix comments to match names of functions.
Nick Lewycky [Sun, 11 Feb 2007 00:58:49 +0000 (00:58 +0000)]
Fix comments to match names of functions.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34173 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agosimplify this code by using value::takename
Chris Lattner [Sun, 11 Feb 2007 00:39:38 +0000 (00:39 +0000)]
simplify this code by using value::takename

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34172 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoadd a helper method: Value::takeName
Chris Lattner [Sun, 11 Feb 2007 00:37:27 +0000 (00:37 +0000)]
add a helper method: Value::takeName

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34171 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoSplit StringMapEntry construction out of StringMap, into StringMapEntry.
Chris Lattner [Sun, 11 Feb 2007 00:10:26 +0000 (00:10 +0000)]
Split StringMapEntry construction out of StringMap, into StringMapEntry.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34170 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoUndo the last patch. It slowed down bcwriter by 1.8% but only sped up
Reid Spencer [Sun, 11 Feb 2007 00:03:39 +0000 (00:03 +0000)]
Undo the last patch. It slowed down bcwriter by 1.8% but only sped up
the bc reader by 0.8%. Deemed "not worth it"

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34169 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoSwitch some std::vector's to SmallVectors. This speeds up -load-vn -gcse
Chris Lattner [Sat, 10 Feb 2007 22:15:31 +0000 (22:15 +0000)]
Switch some std::vector's to SmallVectors.  This speeds up -load-vn -gcse
by 6% on tramp3d.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34167 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agomodify CheckGEPInstructions to take a pointer and size instead of a vector.
Chris Lattner [Sat, 10 Feb 2007 22:12:53 +0000 (22:12 +0000)]
modify CheckGEPInstructions to take a pointer and size instead of a vector.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34166 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAssert that elements of packed are pointer/float/opaque.
Reid Spencer [Sat, 10 Feb 2007 22:02:45 +0000 (22:02 +0000)]
Assert that elements of packed are pointer/float/opaque.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34165 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoremove dead method.
Chris Lattner [Sat, 10 Feb 2007 20:37:40 +0000 (20:37 +0000)]
remove dead method.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34164 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoeliminate use of TargetData::getIndexedOffset that takes a vector
Chris Lattner [Sat, 10 Feb 2007 20:35:22 +0000 (20:35 +0000)]
eliminate use of TargetData::getIndexedOffset that takes a vector

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34163 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agocompletely eliminate a temporary vector
Chris Lattner [Sat, 10 Feb 2007 20:33:15 +0000 (20:33 +0000)]
completely eliminate a temporary vector

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34162 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoeliminate temporary vectors.
Chris Lattner [Sat, 10 Feb 2007 20:31:59 +0000 (20:31 +0000)]
eliminate temporary vectors.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34161 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoSwitch LayoutInfo to be a DenseMap instead of an std::map. This speeds up
Chris Lattner [Sat, 10 Feb 2007 20:26:17 +0000 (20:26 +0000)]
Switch LayoutInfo to be a DenseMap instead of an std::map.  This speeds up
-load-vn -gcse by 2.3%.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34160 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoadd a typedef
Chris Lattner [Sat, 10 Feb 2007 20:18:06 +0000 (20:18 +0000)]
add a typedef

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34159 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoeliminate the std::vector from StructLayout, allocating the elements immediately
Chris Lattner [Sat, 10 Feb 2007 20:15:41 +0000 (20:15 +0000)]
eliminate the std::vector from StructLayout, allocating the elements immediately
after the StructLayout object in memory.  This marginally improves locality,
speeding up -load-vn -gcse by ~0.8%.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34158 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoencapsulate the rest of the StructLayout members.
Chris Lattner [Sat, 10 Feb 2007 19:59:22 +0000 (19:59 +0000)]
encapsulate the rest of the StructLayout members.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34157 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoPrivatize StructLayout::MemberOffsets, adding an accessor
Chris Lattner [Sat, 10 Feb 2007 19:55:17 +0000 (19:55 +0000)]
Privatize StructLayout::MemberOffsets, adding an accessor

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34156 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoadd helper method.
Chris Lattner [Sat, 10 Feb 2007 19:54:24 +0000 (19:54 +0000)]
add helper method.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34155 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoUse ManagedStatic to manage LayoutInfo, instead of rolling our own.
Chris Lattner [Sat, 10 Feb 2007 19:43:18 +0000 (19:43 +0000)]
Use ManagedStatic to manage LayoutInfo, instead of rolling our own.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34154 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoChange TargetData::getIndexedOffset interface to not require indices
Chris Lattner [Sat, 10 Feb 2007 19:33:15 +0000 (19:33 +0000)]
Change TargetData::getIndexedOffset interface to not require indices
in a vector.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34153 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAllow PackedType to be constructed with an abstract type.
Reid Spencer [Sat, 10 Feb 2007 19:03:01 +0000 (19:03 +0000)]
Allow PackedType to be constructed with an abstract type.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34152 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agofix a grammar ambiguity noticed by Duncan
Chris Lattner [Sat, 10 Feb 2007 18:35:31 +0000 (18:35 +0000)]
fix a grammar ambiguity noticed by Duncan

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34151 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAlign make log output with the rest of llvm.
Reid Spencer [Sat, 10 Feb 2007 15:14:00 +0000 (15:14 +0000)]
Align make log output with the rest of llvm.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34150 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoCompaction tables don't exist any more.
Reid Spencer [Sat, 10 Feb 2007 14:07:56 +0000 (14:07 +0000)]
Compaction tables don't exist any more.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34148 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoFor PR1194:
Reid Spencer [Sat, 10 Feb 2007 14:04:08 +0000 (14:04 +0000)]
For PR1194:
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.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34147 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoFix a comment.
Reid Spencer [Sat, 10 Feb 2007 11:59:10 +0000 (11:59 +0000)]
Fix a comment.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34146 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoconvert some vectors to smallvector.
Chris Lattner [Sat, 10 Feb 2007 08:33:11 +0000 (08:33 +0000)]
convert some vectors to smallvector.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34145 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agospeed up the verifier 8.5% by using a smallvector instead of vector.
Chris Lattner [Sat, 10 Feb 2007 08:30:29 +0000 (08:30 +0000)]
speed up the verifier 8.5% by using a smallvector instead of vector.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34144 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoChange an std::set to a SmallPtrSet. This speeds up the verifier on
Chris Lattner [Sat, 10 Feb 2007 08:19:44 +0000 (08:19 +0000)]
Change an std::set to a SmallPtrSet.  This speeds up the verifier on
447.dealII from 1.27s to 0.86s.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34143 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoChange the table datastructure to be a vector<smallvector>, instead of
Chris Lattner [Sat, 10 Feb 2007 07:42:59 +0000 (07:42 +0000)]
Change the table datastructure to be a vector<smallvector>, instead of
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).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34142 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoMake BytecodeWriter::outputValueSymbolTable *significantly* less abusive
Chris Lattner [Sat, 10 Feb 2007 07:31:44 +0000 (07:31 +0000)]
Make BytecodeWriter::outputValueSymbolTable *significantly* less abusive
of memory, through a combination of DenseMap and SmallVector.  This speeds
up bcwriter on 447.dealII from 1.31s to 0.82s (60% faster).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34141 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agomake the datastructure used in BytecodeWriter::outputValueSymbolTable
Chris Lattner [Sat, 10 Feb 2007 07:11:51 +0000 (07:11 +0000)]
make the datastructure used in BytecodeWriter::outputValueSymbolTable
*slightly* less abusive of memory.  This speeds up the bcwriter from
1.83s to 1.32s (39% faster) on 447.dealII.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34140 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoSwitch typemap over to DenseMap. No significant speedup.
Chris Lattner [Sat, 10 Feb 2007 07:06:46 +0000 (07:06 +0000)]
Switch typemap over to DenseMap.  No significant speedup.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34139 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoSwitch NodeMap from an std::map to a DenseMap. This speeds up bcwriting
Chris Lattner [Sat, 10 Feb 2007 07:01:05 +0000 (07:01 +0000)]
Switch NodeMap from an std::map to a DenseMap.  This speeds up bcwriting
of 447.dealII from 3.3s to 1.8s (80% faster).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34138 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoMake find return the appropriate iterator/const_iterator
Chris Lattner [Sat, 10 Feb 2007 06:58:17 +0000 (06:58 +0000)]
Make find return the appropriate iterator/const_iterator

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34137 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agouse typedefs where appropriate
Chris Lattner [Sat, 10 Feb 2007 06:42:23 +0000 (06:42 +0000)]
use typedefs where appropriate

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34136 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoThe ModuleLevel vector is often quite sparse. Switch it to a DenseMap. This
Chris Lattner [Sat, 10 Feb 2007 06:38:19 +0000 (06:38 +0000)]
The ModuleLevel vector is often quite sparse.  Switch it to a DenseMap.  This
speeds up bcwriting of 447.dealII by 40%, from 4.63s to 3.32s.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34135 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAllow DenseMAp to take an explicit DenseMapKeyInfo
Chris Lattner [Sat, 10 Feb 2007 06:34:58 +0000 (06:34 +0000)]
Allow DenseMAp to take an explicit DenseMapKeyInfo

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34134 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoMake the ModuleLevel datastructure more sane. When a function-local value
Chris Lattner [Sat, 10 Feb 2007 06:09:41 +0000 (06:09 +0000)]
Make the ModuleLevel datastructure more sane.  When a function-local value
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%).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34133 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoOnly compute the module levels info once per module, instead of once
Chris Lattner [Sat, 10 Feb 2007 05:54:33 +0000 (05:54 +0000)]
Only compute the module levels info once per module, instead of once
per function.  This speeds up bcwriting on 447.dealII from 10.16s to 6.81s
(49%).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34132 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoClone and specialize CreateSlotIfNeeded into CreateFunctionValueSlot to handle
Chris Lattner [Sat, 10 Feb 2007 05:45:09 +0000 (05:45 +0000)]
Clone and specialize CreateSlotIfNeeded into CreateFunctionValueSlot to handle
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.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34131 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agomake getSlot/getTypeSlot inline
Chris Lattner [Sat, 10 Feb 2007 05:18:35 +0000 (05:18 +0000)]
make getSlot/getTypeSlot inline

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34130 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agogetTypeSlot can never fail
Chris Lattner [Sat, 10 Feb 2007 05:17:48 +0000 (05:17 +0000)]
getTypeSlot can never fail

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34129 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agogetSlot can never fail. Make it assert internally, eliminate checks in
Chris Lattner [Sat, 10 Feb 2007 05:13:03 +0000 (05:13 +0000)]
getSlot can never fail.  Make it assert internally, eliminate checks in
clients.  Same for getTypeSlot.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34128 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agosimplify getOrCreateTypeSlot, eliminat doInsertType. Eliminate post-order iteration...
Chris Lattner [Sat, 10 Feb 2007 05:02:50 +0000 (05:02 +0000)]
simplify getOrCreateTypeSlot, eliminat doInsertType.  Eliminate post-order iteration stuff.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34127 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agosimplify and speed up recursive type processing.
Chris Lattner [Sat, 10 Feb 2007 04:57:36 +0000 (04:57 +0000)]
simplify and speed up recursive type processing.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34126 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agorename getOrCreateSlot -> CreateSlotIfNeeded. Noone cares about the retval
Chris Lattner [Sat, 10 Feb 2007 04:54:01 +0000 (04:54 +0000)]
rename getOrCreateSlot -> CreateSlotIfNeeded.  Noone cares about the retval

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34125 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agorefactor callers of insertType. inline insertType into its one remaining caller.
Chris Lattner [Sat, 10 Feb 2007 04:51:21 +0000 (04:51 +0000)]
refactor callers of insertType.  inline insertType into its one remaining caller.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34124 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agosimplify code.
Chris Lattner [Sat, 10 Feb 2007 04:47:51 +0000 (04:47 +0000)]
simplify code.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34123 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agosimplify some logic, reduce nesting
Chris Lattner [Sat, 10 Feb 2007 04:42:30 +0000 (04:42 +0000)]
simplify some logic, reduce nesting

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34122 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoRemove dead ctor
Chris Lattner [Sat, 10 Feb 2007 04:38:34 +0000 (04:38 +0000)]
Remove dead ctor

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34121 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoModuleContainsAllFunctionConstants is always true
Chris Lattner [Sat, 10 Feb 2007 04:36:10 +0000 (04:36 +0000)]
ModuleContainsAllFunctionConstants is always true

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34120 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoonly one client of getOrCreateSlot can pass a void typed value. Check type
Chris Lattner [Sat, 10 Feb 2007 04:31:52 +0000 (04:31 +0000)]
only one client of getOrCreateSlot can pass a void typed value.  Check type
there.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34119 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoinline hasNullValue, rename some variables, simplify some code.
Chris Lattner [Sat, 10 Feb 2007 04:29:03 +0000 (04:29 +0000)]
inline hasNullValue, rename some variables, simplify some code.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34118 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agomerge insertValue into its single caller, eliminate some redundant checks.
Chris Lattner [Sat, 10 Feb 2007 04:25:02 +0000 (04:25 +0000)]
merge insertValue into its single caller, eliminate some redundant checks.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34117 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agomerge doInsertValue into insertValue
Chris Lattner [Sat, 10 Feb 2007 04:22:30 +0000 (04:22 +0000)]
merge doInsertValue into insertValue

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34116 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoinsertvalue's second operand is always false
Chris Lattner [Sat, 10 Feb 2007 04:19:31 +0000 (04:19 +0000)]
insertvalue's second operand is always false

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34115 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoremove dead 'dontIgnore' flag for insertType
Chris Lattner [Sat, 10 Feb 2007 04:17:41 +0000 (04:17 +0000)]
remove dead 'dontIgnore' flag for insertType

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34114 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agorename getSlot -> getSlotType and getOrCreateSlot ->getOrCreateTypeSlot
Chris Lattner [Sat, 10 Feb 2007 04:15:40 +0000 (04:15 +0000)]
rename getSlot -> getSlotType and getOrCreateSlot ->getOrCreateTypeSlot
for types.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34113 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAdd function live-ins to entry block live-in set.
Evan Cheng [Sat, 10 Feb 2007 02:43:39 +0000 (02:43 +0000)]
Add function live-ins to entry block live-in set.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34112 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAdd live-ins to MachineBasicBlock.
Evan Cheng [Sat, 10 Feb 2007 02:38:19 +0000 (02:38 +0000)]
Add live-ins to MachineBasicBlock.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34111 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoRename some variables to avoid confusion with SelectionDAGISel::BB.
Evan Cheng [Sat, 10 Feb 2007 01:08:18 +0000 (01:08 +0000)]
Rename some variables to avoid confusion with SelectionDAGISel::BB.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34110 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoThese vectors are frequently large. Use std::vector instead.
Evan Cheng [Fri, 9 Feb 2007 23:59:14 +0000 (23:59 +0000)]
These vectors are frequently large. Use std::vector instead.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34109 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoFix clients like this:
Chris Lattner [Fri, 9 Feb 2007 22:24:04 +0000 (22:24 +0000)]
Fix clients like this:

  delete ParseBytecodeFile(InputFilename, 0, &ErrorMessage);
  llvm_shutdown();
  delete ParseBytecodeFile(InputFilename, 0, &ErrorMessage);

The primitive type objects failed to ressurect themselves after shutdown, leading
to crashes in clients that used them after llvm_shutdown().

This solution isn't wonderful, because we clearly have static ctors.  However,
the code it replaces was just as bad, so it's not a regression.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34106 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAdd reference counting to constantpool entries. Delete the unused ones.
Evan Cheng [Fri, 9 Feb 2007 20:54:44 +0000 (20:54 +0000)]
Add reference counting to constantpool entries. Delete the unused ones.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34105 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoUse int32_t and uint32_t to hopefully help weak compilers (cygwin) not
Reid Spencer [Fri, 9 Feb 2007 18:03:35 +0000 (18:03 +0000)]
Use int32_t and uint32_t to hopefully help weak compilers (cygwin) not
generate errors about being unable to resolve overloaded type.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34103 91177308-0d34-0410-b5e6-96231b3b80d8