oota-llvm.git
17 years agoswitch the VRBaseMap in the scheduler from an std::map to a DenseMap. This
Chris Lattner [Sun, 4 Feb 2007 08:47:20 +0000 (08:47 +0000)]
switch the VRBaseMap in the scheduler from an std::map to a DenseMap.  This
speeds up the isel pass from 2.5570s to 2.4722s on kc++ (3.4%).

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

17 years agoIntroduce new UnarySDNode/BinarySDNode/TernarySDNode nodes, which coallocate
Chris Lattner [Sun, 4 Feb 2007 08:35:21 +0000 (08:35 +0000)]
Introduce new UnarySDNode/BinarySDNode/TernarySDNode nodes, which coallocate
their operands with the node itself.  This reduces malloc traffic for operand
lists.  This reduces isel time on kc++ from 2.6164 to 2.5570s, about 2.3%.

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

17 years agoAdd a new SDNode ctor and InitOperands method. This allows the operands for
Chris Lattner [Sun, 4 Feb 2007 08:13:53 +0000 (08:13 +0000)]
Add a new SDNode ctor and InitOperands method.  This allows the operands for
an SDNode to be allocated as part of the node itself, instead of being a
separate new[]'d object.  Switch HandleSDNode, LoadSDNode, and StoreSDNode
to use this mechanism.  This saves one heap allocation and free for each node
of this type that is allocated.  This reduces isel time from 2.7638 to 2.6164s
on kc++, which is a 5.6% speedup.

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

17 years agoeliminate the SDNode::setValueTypes method.
Chris Lattner [Sun, 4 Feb 2007 07:37:24 +0000 (07:37 +0000)]
eliminate the SDNode::setValueTypes method.

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

17 years agoeliminate a bunch of duplicate ctors and helper functions.
Chris Lattner [Sun, 4 Feb 2007 07:28:00 +0000 (07:28 +0000)]
eliminate a bunch of duplicate ctors and helper functions.

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

17 years agoFix some comments and other minor sundry things.
Reid Spencer [Sun, 4 Feb 2007 04:43:17 +0000 (04:43 +0000)]
Fix some comments and other minor sundry things.

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

17 years agoEnsure that visibility and section are properly propagated.
Reid Spencer [Sun, 4 Feb 2007 04:30:33 +0000 (04:30 +0000)]
Ensure that visibility and section are properly propagated.

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

17 years agoBack out last revision which was committed by accident.
Reid Spencer [Sun, 4 Feb 2007 04:29:21 +0000 (04:29 +0000)]
Back out last revision which was committed by accident.

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

17 years agoMake sure that section and visibility are properly propagated.
Reid Spencer [Sun, 4 Feb 2007 04:28:18 +0000 (04:28 +0000)]
Make sure that section and visibility are properly propagated.

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

17 years agomove MorphNode to out of line and merge setNodeOperands into it. There is
Chris Lattner [Sun, 4 Feb 2007 02:49:29 +0000 (02:49 +0000)]
move MorphNode to out of line and merge setNodeOperands into it.  There is
no behavior or performance change here.

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

17 years agosimplify MorphNodeTo to take a VTList operand.
Chris Lattner [Sun, 4 Feb 2007 02:41:42 +0000 (02:41 +0000)]
simplify MorphNodeTo to take a VTList operand.

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

17 years agoeliminate some extraneous methods in SDNode
Chris Lattner [Sun, 4 Feb 2007 02:32:44 +0000 (02:32 +0000)]
eliminate some extraneous methods in SDNode

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

17 years agoGive each selectiondag node class a home for it's vtable and rtti info
Chris Lattner [Sun, 4 Feb 2007 02:23:32 +0000 (02:23 +0000)]
Give each selectiondag node class a home for it's vtable and rtti info

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

17 years agoPrepare for PR411
Reid Spencer [Sun, 4 Feb 2007 02:11:13 +0000 (02:11 +0000)]
Prepare for PR411

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

17 years agoEncode small integers more densely in foldingset, avoiding overflowing the SmallVecto...
Chris Lattner [Sun, 4 Feb 2007 01:48:10 +0000 (01:48 +0000)]
Encode small integers more densely in foldingset, avoiding overflowing the SmallVector as often.

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

17 years agoSwitch VAlueMap from std::map to DenseMap.
Chris Lattner [Sun, 4 Feb 2007 01:35:11 +0000 (01:35 +0000)]
Switch VAlueMap from std::map to DenseMap.

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

17 years agoSwitch NodeMap from std::map to DenseMap, this speeds up isel by 2.3%
Chris Lattner [Sun, 4 Feb 2007 01:31:47 +0000 (01:31 +0000)]
Switch NodeMap from std::map to DenseMap, this speeds up isel by 2.3%

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

17 years agoswtich vector-> smallvector, speeding up selectiondag stuff 1%
Chris Lattner [Sun, 4 Feb 2007 01:20:02 +0000 (01:20 +0000)]
swtich vector-> smallvector, speeding up selectiondag stuff 1%

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

17 years agoSwitch promoted/expanded ops over to using a DenseMap. Vector related maps
Chris Lattner [Sun, 4 Feb 2007 01:17:38 +0000 (01:17 +0000)]
Switch promoted/expanded ops over to using a DenseMap.  Vector related maps
aren't worth it.

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

17 years agoRegenerate.
Reid Spencer [Sun, 4 Feb 2007 01:12:11 +0000 (01:12 +0000)]
Regenerate.

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

17 years agoFor PR1151:
Reid Spencer [Sun, 4 Feb 2007 01:05:23 +0000 (01:05 +0000)]
For PR1151:
Make llvm-upgrade valgrind clean. Deleting type instances is a really
nasty thing to do to LLVM. This was a hold-over from the re-write.
This fixes test/Assembler/2007-01-22-UpgradeTypeMapInvalidMemory.ll and
potentially many other bugs.

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

17 years agoswitch LegalizedNodes from std::map to a DenseMap. This speeds up isel
Chris Lattner [Sun, 4 Feb 2007 00:50:02 +0000 (00:50 +0000)]
switch LegalizedNodes from std::map to a DenseMap.  This speeds up isel
time as a whole on kc++ by 11%.

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

17 years agoadd a version of insert that takes the key and value.
Chris Lattner [Sun, 4 Feb 2007 00:42:41 +0000 (00:42 +0000)]
add a version of insert that takes the key and value.

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

17 years agoFor PR1163:
Reid Spencer [Sun, 4 Feb 2007 00:40:42 +0000 (00:40 +0000)]
For PR1163:
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.

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

17 years agoMake SmallSetVector useful
Chris Lattner [Sun, 4 Feb 2007 00:30:40 +0000 (00:30 +0000)]
Make SmallSetVector useful

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

17 years agoEliminate some malloc traffic from LegalizeAllNodesNotLeadingTo, speeding
Chris Lattner [Sun, 4 Feb 2007 00:27:56 +0000 (00:27 +0000)]
Eliminate some malloc traffic from LegalizeAllNodesNotLeadingTo, speeding
up isel on kimwitu by 0.7%.

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

17 years agoEliminate some std::sets. This speeds up isel of kimwitu by about 0.9%
Chris Lattner [Sun, 4 Feb 2007 00:24:41 +0000 (00:24 +0000)]
Eliminate some std::sets.  This speeds up isel of kimwitu by about 0.9%

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

17 years agoMake sure the gccas script is executable.
Reid Spencer [Sun, 4 Feb 2007 00:23:51 +0000 (00:23 +0000)]
Make sure the gccas script is executable.

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

17 years agoFor PR1067:
Reid Spencer [Sun, 4 Feb 2007 00:17:35 +0000 (00:17 +0000)]
For PR1067:
Update library documentation after removal of libLLVMTransforms.a that
resulted from removal of the LevelRaise pass.

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

17 years agoSwitch SelectionDAG::ReplaceAllUsesOfValueWith to use a SmallSetVector for
Chris Lattner [Sun, 4 Feb 2007 00:14:31 +0000 (00:14 +0000)]
Switch SelectionDAG::ReplaceAllUsesOfValueWith to use a SmallSetVector for
the users set (most nodes have 1 or 2 users).  This speeds up the isel pass
3.2% on kimwitu.

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

17 years agoVarious bugfixes
Chris Lattner [Sun, 4 Feb 2007 00:12:12 +0000 (00:12 +0000)]
Various bugfixes

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

17 years agodescribe SmallSetVector
Chris Lattner [Sun, 4 Feb 2007 00:00:26 +0000 (00:00 +0000)]
describe SmallSetVector

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

17 years agoConvert SetVector to be a true adapter class and add SmallSetVector.
Chris Lattner [Sat, 3 Feb 2007 23:56:03 +0000 (23:56 +0000)]
Convert SetVector to be a true adapter class and add SmallSetVector.

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

17 years agoremove some dead code
Chris Lattner [Sat, 3 Feb 2007 23:28:07 +0000 (23:28 +0000)]
remove some dead code

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

17 years agoFor PR1072:
Reid Spencer [Sat, 3 Feb 2007 23:15:56 +0000 (23:15 +0000)]
For PR1072:
Removing -raise has neglible positive or negative side effects so we are
opting to remove it. See the PR for comparison details.

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

17 years agoadd an instcombine pass to clean up after heavy-lifting IP passes
Chris Lattner [Sat, 3 Feb 2007 23:06:03 +0000 (23:06 +0000)]
add an instcombine pass to clean up after heavy-lifting IP passes

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

17 years agonull -> pointer, nul -> character :)
Chris Lattner [Sat, 3 Feb 2007 22:04:27 +0000 (22:04 +0000)]
null -> pointer, nul -> character :)

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

17 years agoFix some spellos.
Reid Spencer [Sat, 3 Feb 2007 21:06:43 +0000 (21:06 +0000)]
Fix some spellos.

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

17 years agofix grammar
Chris Lattner [Sat, 3 Feb 2007 20:17:53 +0000 (20:17 +0000)]
fix grammar

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

17 years agoSerious cleanups. Make the TOC match the text for the class hierarchy,
Chris Lattner [Sat, 3 Feb 2007 20:02:25 +0000 (20:02 +0000)]
Serious cleanups.  Make the TOC match the text for the class hierarchy,
move the sections of the class-h around in the right order, make it actually
reflect the classes in LLVM today.

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

17 years agoAdd TOC
Chris Lattner [Sat, 3 Feb 2007 19:51:56 +0000 (19:51 +0000)]
Add TOC

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

17 years agodescribe map-like containers
Chris Lattner [Sat, 3 Feb 2007 19:49:31 +0000 (19:49 +0000)]
describe map-like containers

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

17 years ago8 buckets is way too small to start out with. This was only for testing.
Chris Lattner [Sat, 3 Feb 2007 19:30:48 +0000 (19:30 +0000)]
8 buckets is way too small to start out with.  This was only for testing.

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

17 years agoClean this up a bit: hide command unless verbose output requested, echo
Reid Spencer [Sat, 3 Feb 2007 16:09:12 +0000 (16:09 +0000)]
Clean this up a bit: hide command unless verbose output requested, echo
a useful comment line, add a clean target.

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

17 years agoAdd a test case.
Evan Cheng [Sat, 3 Feb 2007 09:14:10 +0000 (09:14 +0000)]
Add a test case.

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

17 years agoARM callseq_end should have a input flag operand so it would be scheduled right after...
Evan Cheng [Sat, 3 Feb 2007 09:11:58 +0000 (09:11 +0000)]
ARM callseq_end should have a input flag operand so it would be scheduled right after the call.

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

17 years agoFix comments.
Evan Cheng [Sat, 3 Feb 2007 08:53:01 +0000 (08:53 +0000)]
Fix comments.

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

17 years agoimprove grammar
Chris Lattner [Sat, 3 Feb 2007 08:20:15 +0000 (08:20 +0000)]
improve grammar

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

17 years agoimprove grammar
Chris Lattner [Sat, 3 Feb 2007 08:10:45 +0000 (08:10 +0000)]
improve grammar

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

17 years agoclose run-away tag
Chris Lattner [Sat, 3 Feb 2007 07:59:51 +0000 (07:59 +0000)]
close run-away tag

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

17 years agofill in the section on Set-like containers.
Chris Lattner [Sat, 3 Feb 2007 07:59:07 +0000 (07:59 +0000)]
fill in the section on Set-like containers.

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

17 years agofix validation issues
Chris Lattner [Sat, 3 Feb 2007 03:06:52 +0000 (03:06 +0000)]
fix validation issues

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

17 years agofix validation problems
Chris Lattner [Sat, 3 Feb 2007 03:05:57 +0000 (03:05 +0000)]
fix validation problems

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

17 years agoAdd some notes about choice of container.
Chris Lattner [Sat, 3 Feb 2007 03:04:03 +0000 (03:04 +0000)]
Add some notes about choice of container.

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

17 years agoremove a dead header
Chris Lattner [Sat, 3 Feb 2007 03:02:10 +0000 (03:02 +0000)]
remove a dead header

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

17 years agoMoved the GetTargetRelocation method from PPCMachOWriter to here. It uses
Bill Wendling [Sat, 3 Feb 2007 02:41:58 +0000 (02:41 +0000)]
Moved the GetTargetRelocation method from PPCMachOWriter to here. It uses
non-Mach-O-specific information.

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

17 years agoMoved the GetTargetRelocation method to the PPCMachOWriterInfo object. The
Bill Wendling [Sat, 3 Feb 2007 02:40:57 +0000 (02:40 +0000)]
Moved the GetTargetRelocation method to the PPCMachOWriterInfo object. The
PPCMachOWriter is now trivial.

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

17 years agoPut destructor out-of-line.
Bill Wendling [Sat, 3 Feb 2007 02:40:10 +0000 (02:40 +0000)]
Put destructor out-of-line.

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

17 years agoPass in non-Mach-O-specific parameters to the GetTargetRelocation method.
Bill Wendling [Sat, 3 Feb 2007 02:39:40 +0000 (02:39 +0000)]
Pass in non-Mach-O-specific parameters to the GetTargetRelocation method.

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

17 years agoAdded GetTargetRelocation method.
Bill Wendling [Sat, 3 Feb 2007 02:38:57 +0000 (02:38 +0000)]
Added GetTargetRelocation method.

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

17 years agoAdded some accessor methods.
Bill Wendling [Sat, 3 Feb 2007 02:38:15 +0000 (02:38 +0000)]
Added some accessor methods.

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

17 years agoMoved MachORelocation to its own header file. Have a call through the
Bill Wendling [Sat, 3 Feb 2007 02:37:51 +0000 (02:37 +0000)]
Moved MachORelocation to its own header file. Have a call through the
TargetMachOInfo object to the GetTargetRelocation method. Pass into it
non-Mach-O-specific parameters.

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

17 years agoNew file for the MachORelocation structure. It doesn't have to be tied to the
Bill Wendling [Sat, 3 Feb 2007 02:36:17 +0000 (02:36 +0000)]
New file for the MachORelocation structure. It doesn't have to be tied to the
MachOWriter.h file.

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

17 years ago- Branch max. displacement calculation bug.
Evan Cheng [Sat, 3 Feb 2007 02:08:34 +0000 (02:08 +0000)]
- Branch max. displacement calculation bug.
- Add debugging info.

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

17 years agoswitch the sched unit map over to use a DenseMap instead of std::map. This
Chris Lattner [Sat, 3 Feb 2007 01:34:13 +0000 (01:34 +0000)]
switch the sched unit map over to use a DenseMap instead of std::map.  This
speeds up isel as a whole time by 2.6%.

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

17 years agoSwitch ComputeTopDownOrdering over to using a densemap. This speeds up
Chris Lattner [Sat, 3 Feb 2007 01:12:36 +0000 (01:12 +0000)]
Switch ComputeTopDownOrdering over to using a densemap.  This speeds up
isel as a whole by 3.3%.

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

17 years ago__builtin_isunordered test case.
Evan Cheng [Sat, 3 Feb 2007 00:50:45 +0000 (00:50 +0000)]
__builtin_isunordered test case.

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

17 years agoFor PR1152:
Reid Spencer [Sat, 3 Feb 2007 00:44:47 +0000 (00:44 +0000)]
For PR1152:
Update documentation to reflect that this isn't a full-blown executable
any more.

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

17 years agoPasto
Evan Cheng [Sat, 3 Feb 2007 00:43:46 +0000 (00:43 +0000)]
Pasto

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

17 years agoAnd even more correctly.
Reid Spencer [Sat, 3 Feb 2007 00:33:26 +0000 (00:33 +0000)]
And even more correctly.

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

17 years agoFormat the examples correctly.
Reid Spencer [Sat, 3 Feb 2007 00:32:23 +0000 (00:32 +0000)]
Format the examples correctly.

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

17 years agoFor PR1152:
Reid Spencer [Sat, 3 Feb 2007 00:21:56 +0000 (00:21 +0000)]
For PR1152:
Update documentation to reflect addition of gccas functionality into opt.

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

17 years agoImproves alloca test. Verifies SP restoration.
Lauro Ramos Venancio [Sat, 3 Feb 2007 00:16:21 +0000 (00:16 +0000)]
Improves alloca test. Verifies SP restoration.

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

17 years agoSwitch inliner over to use DenseMap instead of std::map for ValueMap. This
Chris Lattner [Sat, 3 Feb 2007 00:08:31 +0000 (00:08 +0000)]
Switch inliner over to use DenseMap instead of std::map for ValueMap.  This
speeds up the inliner 16%.

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

17 years agobugfix: SP isn't resetted when function has FP and there is no spills.
Lauro Ramos Venancio [Fri, 2 Feb 2007 23:08:40 +0000 (23:08 +0000)]
bugfix: SP isn't resetted when function has FP and there is no spills.

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

17 years agoSwitch this back to using an std::map. DenseMap entries are getting invalidated
Chris Lattner [Fri, 2 Feb 2007 22:36:16 +0000 (22:36 +0000)]
Switch this back to using an std::map.  DenseMap entries are getting invalidated

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

17 years agoTwo improvements:
Reid Spencer [Fri, 2 Feb 2007 21:49:27 +0000 (21:49 +0000)]
Two improvements:
1. Allow -- as well as - options (Bill Wendling)
2. Pass unrecognized options to opt and let it handle the errors, if any
   (Chris Lattner).

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

17 years agosilence annoying warning in release-asserts build
Chris Lattner [Fri, 2 Feb 2007 21:19:18 +0000 (21:19 +0000)]
silence annoying warning in release-asserts build

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

17 years agoRemove more malloc thrashing, this speeds up IPSCCP on kimwitu another 6.7%.
Chris Lattner [Fri, 2 Feb 2007 21:15:06 +0000 (21:15 +0000)]
Remove more malloc thrashing, this speeds up IPSCCP on kimwitu another 6.7%.

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

17 years agoAnother thumb large stack offset codegen bug.
Evan Cheng [Fri, 2 Feb 2007 21:08:39 +0000 (21:08 +0000)]
Another thumb large stack offset codegen bug.

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

17 years agoConvert an std::set to SmallSet, this speeds up IPSCCP 17% on kimwitu.
Chris Lattner [Fri, 2 Feb 2007 20:57:39 +0000 (20:57 +0000)]
Convert an std::set to SmallSet, this speeds up IPSCCP 17% on kimwitu.

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

17 years agoeliminate a malloc/free for (almost) every GEP processed. This speeds up
Chris Lattner [Fri, 2 Feb 2007 20:51:48 +0000 (20:51 +0000)]
eliminate a malloc/free for (almost) every GEP processed.  This speeds up
IPSCCP 3.3% on kimwitu.

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

17 years agoswitch hash_map's over to DenseMap in SCCP. This speeds up SCCP by 30% in
Chris Lattner [Fri, 2 Feb 2007 20:38:30 +0000 (20:38 +0000)]
switch hash_map's over to DenseMap in SCCP.  This speeds up SCCP by 30% in
a release-assert build on kimwitu++.

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

17 years agoadd find/erase, add const iterators, fix bugs in iterators.
Chris Lattner [Fri, 2 Feb 2007 20:34:32 +0000 (20:34 +0000)]
add find/erase, add const iterators, fix bugs in iterators.

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

17 years agoadd iterators
Chris Lattner [Fri, 2 Feb 2007 19:27:13 +0000 (19:27 +0000)]
add iterators

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

17 years agoUse MBB.empty() instead of MBB.size() for speed.
Evan Cheng [Fri, 2 Feb 2007 19:09:19 +0000 (19:09 +0000)]
Use MBB.empty() instead of MBB.size() for speed.

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

17 years agoWatch out for empty BB.
Evan Cheng [Fri, 2 Feb 2007 18:49:02 +0000 (18:49 +0000)]
Watch out for empty BB.

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

17 years agoFor PR1152:
Reid Spencer [Fri, 2 Feb 2007 15:50:58 +0000 (15:50 +0000)]
For PR1152:
Step 2: Make plug compatible shell script to replace gccas binary.

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

17 years agoFor PR1152:
Reid Spencer [Fri, 2 Feb 2007 14:46:29 +0000 (14:46 +0000)]
For PR1152:
Step 1: Copy gccas functionality to opt. This endows opt with a new
-std-compile-opts option to get the set of optimization passes that
gccas used. It also adds -disable-inlining and -disable-opt which
both apply only if -std-compile-opts is given. The -strip-debug option
was also removed. It just makes sure that "-strip" gets done early and
is mostly there for compatibility with gccas. Finally, a new
-verify-each option will cause the verify pass to be run after each pass.

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

17 years agoRemove dead code and fix indentation per Chris' review comments.
Reid Spencer [Fri, 2 Feb 2007 14:41:37 +0000 (14:41 +0000)]
Remove dead code and fix indentation per Chris' review comments.

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

17 years agoUse short form of BinaryOperator create function.
Reid Spencer [Fri, 2 Feb 2007 14:09:34 +0000 (14:09 +0000)]
Use short form of BinaryOperator create function.

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

17 years agoUse short form of binary operator create functions.
Reid Spencer [Fri, 2 Feb 2007 14:08:20 +0000 (14:08 +0000)]
Use short form of binary operator create functions.

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

17 years agoPut the Shift instructions in the right section.
Reid Spencer [Fri, 2 Feb 2007 13:57:07 +0000 (13:57 +0000)]
Put the Shift instructions in the right section.

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

17 years agoFix a comment that needed to change after SHIFT patch landed.
Reid Spencer [Fri, 2 Feb 2007 13:54:55 +0000 (13:54 +0000)]
Fix a comment that needed to change after SHIFT patch landed.

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

17 years agoUgh. Only meant to do this in thumb mode.
Evan Cheng [Fri, 2 Feb 2007 08:58:48 +0000 (08:58 +0000)]
Ugh. Only meant to do this in thumb mode.

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

17 years agobugfix for reid's shift patch.
Chris Lattner [Fri, 2 Feb 2007 05:29:55 +0000 (05:29 +0000)]
bugfix for reid's shift patch.

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

17 years agoadd a note
Chris Lattner [Fri, 2 Feb 2007 04:36:46 +0000 (04:36 +0000)]
add a note

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

17 years ago1. Break long lines to 80 col limit
Reid Spencer [Fri, 2 Feb 2007 02:30:19 +0000 (02:30 +0000)]
1. Break long lines to 80 col limit
2. Fix indentation
3. Renumber the instruction opcodes after the Shift became a binary operator.

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

17 years agoChanges to support making the shift instructions be true BinaryOperators.
Reid Spencer [Fri, 2 Feb 2007 02:16:23 +0000 (02:16 +0000)]
Changes to support making the shift instructions be true BinaryOperators.
This feature is needed in order to support shifts of more than 255 bits
on large integer types.  This changes the syntax for llvm assembly to
make shl, ashr and lshr instructions look like a binary operator:
   shl i32 %X, 1
instead of
   shl i32 %X, i8 1
Additionally, this should help a few passes perform additional optimizations.

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

17 years agoFix a bug in getARMCMP (which translate CondCode to ARM specific CC) when the RHS...
Evan Cheng [Fri, 2 Feb 2007 01:53:26 +0000 (01:53 +0000)]
Fix a bug in getARMCMP (which translate CondCode to ARM specific CC) when the RHS is a constant.

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