Reid Spencer
7783e8ad69
Make findModulesDefiningSymbols modify its symbols argument so we can \
...
eliminate symbols defined by the archive efficiently
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17976 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-19 03:18:22 +00:00
Reid Spencer
3cf2c32202
Reduce the amount of work in LinkInArchive by not searching the archive for
...
symbols it has already identified as not defining.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17975 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-19 03:13:25 +00:00
Reid Spencer
9692e39afe
Obligatory DejaGnu/expect file.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17974 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-19 02:26:35 +00:00
Nate Begeman
8531f6f42a
Generate fewer reg-reg copies for the register allocator to deal with.
...
This eliminates over 2000 in hbd alone.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17973 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-19 02:06:40 +00:00
Tanya Lattner
05f8d5fed6
Fixed a typo.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17972 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-19 01:26:37 +00:00
Tanya Lattner
d5383653a4
Added link to information on Statistic which is in the Programmers Manual.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17971 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-19 01:25:14 +00:00
Chris Lattner
954f66a8cd
Delete stoppoints that occur for the same source line.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17970 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-18 21:41:39 +00:00
Chris Lattner
1085548d35
Add support for llvm.dbg.stoppoint
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17969 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-18 21:41:16 +00:00
Chris Lattner
f67fb1931c
Line numbers are go for 1.4! :)
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17967 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-18 21:25:11 +00:00
Chris Lattner
3328965829
libpng is not even used by povray3.1 in the current configuration, just
...
drop it completely.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17966 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-18 21:21:54 +00:00
Chris Lattner
9626470f10
Add MMC
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17965 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-18 21:04:21 +00:00
Reid Spencer
9a5acafd04
Duh, put tools in *bin* directory, not *tools* directory as per
...
PR456.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17964 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-18 20:04:39 +00:00
Chris Lattner
d29c636a00
Remove debugging code, unneuter this functionality
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17963 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-18 19:42:50 +00:00
Chris Lattner
a269ec7b0a
remove debugging code
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17962 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-18 19:40:13 +00:00
Tanya Lattner
a9aa809935
Fixed to fit in 80 columns.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17961 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-18 18:47:29 +00:00
Reid Spencer
6454ed3c1e
Add notes about makefile changes and llvm-ar.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17960 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-18 18:38:58 +00:00
Tanya Lattner
75e8419e48
Adding option to llc for ModuloScheduling. By default it is turned off.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17959 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-18 18:38:01 +00:00
Chris Lattner
18e6c22f05
These methods are inlined
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17958 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-18 17:47:13 +00:00
Chris Lattner
721aef6897
Update comments, now that CPR's are gone, inline the methods
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17957 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-18 17:46:57 +00:00
Chris Lattner
56de0363e3
Check in hook that I forgot
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17956 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-18 17:24:20 +00:00
Reid Spencer
815cbcf0f1
Fix PR456:\
...
Tools and libraries will be built into $(BUILD_OBJ_ROOT)/$(BuildMode)/bin and \
$(BUILD_OBJ_ROOT)/$(BuildMode)/lib, respectively. Furthermore, the example \
programs will go in $(BUILD_OBJ_ROOT)/$(BuildMode)/examples to keep them \
separate from the tools and hopefully out of the PATH. Install targets \
have not changed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17953 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-18 10:03:46 +00:00
Reid Spencer
b0ce1a387c
Include ltdl.h if we have it.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17952 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-18 09:50:00 +00:00
Reid Spencer
e2234a7055
Add checks for HAVE_LTDL_H and HAVE_LT_DLOPEN
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17951 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-18 09:49:13 +00:00
Reid Spencer
17795971fc
Changes for testing presence of ltdl.h and lt_dlopen(), libtool functions
...
for cross-platform dynamic loading of shared objects.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17950 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-18 09:47:37 +00:00
Brian Gaeke
7c0afe04ab
Rewrite LoadArgumentsToVirtualRegs, making it match almost exactly how
...
visitCallInst works. Support cast of byte/short/int to long.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17949 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-18 07:43:33 +00:00
Brian Gaeke
7ba2a43866
Update current expected failures list - expand it to include all of
...
SingleSource. Update to-do list (open-coding refers to binary operations on
longs, not to passing them into functions, which we already support.)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17948 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-18 07:43:32 +00:00
Nate Begeman
db869aad8c
Eliminate another common source of moves that the register allocator
...
shouldn't be forced to coalesce for us: folded GEP operations. This too
fires thousands of times across the testsuite.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17947 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-18 07:22:46 +00:00
Nate Begeman
1f5308e5b5
When accessing the base register for global variables, use the register
...
directly rather than making a copy for the register allocator to coalesce.
This kills thousands of live intervals across the testsuite.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17946 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-18 06:51:29 +00:00
Chris Lattner
c8b9f33ac0
* There is no reason for SpillWeights to be an instance var
...
* Do not put fixed registers into the unhandled set. This means they will
never find their way into the inactive, active, or handled sets, so we
can simplify a bunch of code.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17945 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-18 06:01:45 +00:00
Chris Lattner
9fddc12c9b
There is no need to check to see if j overflowed in this loop as we're only
...
incrementing i.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17944 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-18 05:28:21 +00:00
Chris Lattner
1e409bfd2a
Moderate head scratching reveals that this conditional is not needed. If
...
i->start == j->start, then certainly i->end > j->start.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17943 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-18 05:19:02 +00:00
Nate Begeman
0113638073
Clean up and fix cast codegen by removing cases that are handled elsewhere,
...
and properly emitting signed short to unsigned int. This fixes the last
regression vs. the CBE, MultiSource/Applications/hbd.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17942 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-18 04:56:53 +00:00
Reid Spencer
5c401af433
Dynamic Library abstraction. This makes the abstraction of a single dynamic
...
library (shared library/shared object) whose symbols can be looked up
dynamically. Used for plug-ins.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17941 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-18 04:33:40 +00:00
Reid Spencer
0de02a6ba9
Dynamic Library abstraction. This makes the abstraction of a single dynamic
...
library (shared library/shared object) whose symbols can be looked up
dynamically. Used for plug-ins.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17940 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-18 04:33:39 +00:00
Chris Lattner
f348e3abfc
Fix a couple of bugs where we considered physregs past their range as possibly
...
intersecting an interval.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17939 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-18 04:33:31 +00:00
Chris Lattner
1a3a487763
Fix typeo
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17938 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-18 04:31:10 +00:00
Chris Lattner
365b95fbbc
Start using the iterators in the fixed_ intervals to avoid having to binary
...
search physreg intervals every time we access it. This takes another
half second off of linscan.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17937 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-18 04:13:02 +00:00
Chris Lattner
8c68b6a226
Take another .7 seconds off of linear scan time.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17936 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-18 04:02:11 +00:00
Chris Lattner
19828d46f6
Add a counter for the number of times linscan has to backtrack. Start using
...
the iterator hints we have to speed up overlaps(). This speeds linscan up
by about .2s (out of 8.7) on 175.vpr for PPC.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17935 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-18 03:49:30 +00:00
Chris Lattner
bae74d9192
Add ability to give hints to the overlaps routines.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17934 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-18 03:47:34 +00:00
Chris Lattner
cbb5625cec
* Improve comments/documentation substantially
...
* Eliminate the releaseMemory method, this is not an analysis
* Change the fixed, active, and inactive lists of intervals to maintain an
iterator for the current position in the interval. This allows us to do
constant time increments of the iterator instead of having to do a binary
search to find our liverange in our liveinterval all of the time, which
substantially speeds up cases where LiveIntervals have many LiveRanges
- which is very common for physical registers. On targets with many
physregs, this can make a noticable difference.
With a release build of LLC for PPC, this halves the time in
processInactiveIntervals and processActiveIntervals, from 1.5s to .75s.
This also lays the ground for more to come.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17933 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-18 02:42:27 +00:00
Chris Lattner
743ef6d70e
Add new advanceTo method
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17932 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-18 02:37:31 +00:00
Chris Lattner
8d8d513d4d
Fix a minor bug in expiredAt. endNumber() is the first number that is not valid.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17931 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-18 01:34:44 +00:00
Chris Lattner
23b71c1e1e
Rename some methods, use 'begin' instead of 'start', add new LiveInterval
...
iterator/begin/end members.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17930 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-18 01:29:39 +00:00
Brian Gaeke
4b92ed6d58
Allocate fewer registers and tighten up alignment restrictions.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17929 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-18 00:25:20 +00:00
Brian Gaeke
c935cf111c
Update to-do list.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17927 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-17 22:33:55 +00:00
Brian Gaeke
b662963d3b
Update list of failing SingleSource Benchmarks
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17926 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-17 22:33:28 +00:00
Brian Gaeke
b3e0017763
We were (somehow) getting the wrong branch opcode for setcc float instrs.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17925 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-17 22:06:56 +00:00
Alkis Evlogimenos
859804f529
Make ReturnInst accept a value of type void as the return value. The
...
ReturnInst constructed is the same as if NULL was passed instead of
the void value.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17923 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-17 21:02:25 +00:00
Reid Spencer
a1c15bda23
Add a standards section.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17921 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-17 20:19:18 +00:00