Chris Lattner
de6ca7bf30
Add new flag, other minor modifications
...
llvm-svn: 10969
2004-01-23 01:42:32 +00:00
Chris Lattner
99f9b84640
Fix grammar
...
llvm-svn: 10968
2004-01-23 01:42:16 +00:00
Chris Lattner
317a6fec82
Fix a problem brian ran into with the bytecode reader asserting. It turns
...
out that the problem was actually the writer writing out a 'null' value
because it didn't normalize it. This fixes:
test/Regression/Assembler/2004-01-22-FloatNormalization.ll
llvm-svn: 10967
2004-01-23 00:55:21 +00:00
Chris Lattner
732d53739e
New testcase for problem brian ran into
...
llvm-svn: 10966
2004-01-23 00:54:26 +00:00
Alkis Evlogimenos
b4745bda05
Add option to join live intervals. Two intervals are joined if there
...
is a move between two registers, at least one of the registers is
virtual and the two live intervals do not overlap.
This results in about 40% reduction in intervals, 30% decrease in the
register allocators running time and a 20% increase in peephole
optimizations (mainly move eliminations).
The option can be enabled by passing -join-liveintervals where
appropriate.
llvm-svn: 10965
2004-01-22 23:08:45 +00:00
Brian Gaeke
2ad4ba012c
Move bytecode_libdir def'n to Makefile.config.in from Makefile.rules, so it
...
lives near the other installation dirs (like libdir, bindir, etc.).
Move the rule for making bytecode_libdir out of the ifdef LIBRARYNAME...endif.
llvm-svn: 10964
2004-01-22 22:53:48 +00:00
Brian Gaeke
a034c6e129
Add autoconf check for the version of etags we have detected, and select
...
appropriate "force C++" command-line option.
llvm-svn: 10963
2004-01-22 21:55:15 +00:00
Brian Gaeke
5d66f2baa9
Regenerated using autoconf-2.57.
...
llvm-svn: 10962
2004-01-22 21:55:02 +00:00
Brian Gaeke
fc7e31fc37
Get autoconf'd ETAGSFLAGS value from configure.
...
llvm-svn: 10961
2004-01-22 21:55:01 +00:00
Brian Gaeke
150102cdee
Move support for building tags database from Makefile.rules to Makefile, because
...
it's only used in the top-level directory.
llvm-svn: 10960
2004-01-22 21:54:51 +00:00
Alkis Evlogimenos
8d8c76a064
Remove unneeded check. An interval in active, by definition overlaps
...
with the current one.
llvm-svn: 10959
2004-01-22 20:07:18 +00:00
Alkis Evlogimenos
abdbf4a288
Improve debugging output. Remove unneeded virtReg->0 mapping when
...
virtReg lives on the stack. Now a virtual register has an entry in the
virtual->physical map or the virtual->stack slot map but never in
both.
llvm-svn: 10958
2004-01-22 19:24:43 +00:00
Alkis Evlogimenos
a1bb8618c3
Revert previous change. The code was correct...
...
llvm-svn: 10957
2004-01-22 19:17:52 +00:00
Alkis Evlogimenos
448e6f3353
Fix incorrect negatives in LiveIntervals::Interval::liveAt().
...
llvm-svn: 10956
2004-01-22 18:33:50 +00:00
Chris Lattner
a72f3a387a
Eliminated the CompletedNodes argument to the cloneReachable* methods. This
...
map was only used to implement a marginal GlobalsGraph optimization, and it
actually slows the analysis down (due to the overhead of keeping it), so just
eliminate it entirely.
llvm-svn: 10955
2004-01-22 16:56:13 +00:00
Chris Lattner
50e765d1a2
Ok, I'm tired of pulling out all my timers to check stuff in, just do it.
...
llvm-svn: 10954
2004-01-22 16:36:28 +00:00
Chris Lattner
da04e4d383
Bug fix: X.mergeWith(Y) was not updating Y if Y was a null node handle!
...
llvm-svn: 10953
2004-01-22 16:31:08 +00:00
Chris Lattner
7348bd20b1
It doesn't make sense for one side to be const, but not the other.
...
llvm-svn: 10952
2004-01-22 16:08:51 +00:00
Chris Lattner
07d45564d0
Start implementing DSGraph::clonePartiallyInto and implement mergeInGraph
...
in terms of it.
Though clonePartiallyInto is not cloning partial graphs yet, this change
dramatically speeds up inlining of graphs with many scalars. For example,
this change speeds up the BU pass on 253.perlbmk from 69s to 36s, because
it avoids iteration over the scalar map, which can get pretty large.
llvm-svn: 10951
2004-01-22 15:30:58 +00:00
Chris Lattner
5f0e00c8b2
Remove const qualifier (all Value*'s are nonconst in DSA, so it's not clear
...
why this one was)
Add new method proto
llvm-svn: 10950
2004-01-22 15:26:52 +00:00
Chris Lattner
f2a7d96dde
Specialize std::swap correctly
...
llvm-svn: 10949
2004-01-22 15:26:15 +00:00
Chris Lattner
961cc51cf1
Allow disabling of ALL printing overhead when performing timings
...
llvm-svn: 10948
2004-01-22 13:42:43 +00:00
Brian Gaeke
3c863c8fdf
Add DESTDIR support for installing. Use (and depend on) $(bytecode_libdir).
...
llvm-svn: 10947
2004-01-21 23:57:46 +00:00
Brian Gaeke
afa0e2d2c2
Give the ".../llvm-gcc/bytecode-libs" directory a variable of its own,
...
called bytecode_libdir. Make install-bytecode-library depend on
the existence of that directory, and add a rule for creating it if
it does not exist by calling mkinstalldirs.
llvm-svn: 10946
2004-01-21 23:57:21 +00:00
Brian Gaeke
ee85ae33d2
Part 2 of DESTDIR support
...
llvm-svn: 10945
2004-01-21 23:28:03 +00:00
Misha Brukman
5723c64d9a
Implement ModuleProvider::materializeModule() by only materializing functions
...
that are still left in the lazy reader map.
llvm-svn: 10944
2004-01-21 22:55:34 +00:00
Misha Brukman
87ca68c2ff
Let subclasses implement ModuleProvider::materializeModule() which is based on
...
their implementation of book-keeping for which functions need to be materialized
and which don't.
llvm-svn: 10943
2004-01-21 22:54:50 +00:00
Misha Brukman
38664cbb8b
To materialize a module, you need to know what functions NEED to be read and
...
which ones don't, which is state that the parent class doesn't know without
knowing the implementation. Let the children classes implement
materializeModule().
llvm-svn: 10942
2004-01-21 22:54:10 +00:00
Misha Brukman
26b6be3053
If you call abort(), #include <cstdlib>
...
llvm-svn: 10941
2004-01-21 22:50:12 +00:00
Brian Gaeke
705759b8b6
Add DESTDIR support for installation, to support RPM etc.
...
llvm-svn: 10940
2004-01-21 21:20:44 +00:00
Brian Gaeke
d901dc68f1
Maybe Misha isn't so buggy after all. He caught the rest of my huge thinko
...
w.r.t. SHLIBEXT starting with a dot.
:-)
llvm-svn: 10939
2004-01-21 21:17:37 +00:00
Brian Gaeke
b31ce9f568
Build the PowerPC directory, so it is less likely to bit-rot (again)
...
llvm-svn: 10938
2004-01-21 21:16:10 +00:00
Brian Gaeke
764f1b476a
Import of skeletal PowerPC backend I have had laying around for months...
...
llvm-svn: 10937
2004-01-21 21:13:19 +00:00
Brian Gaeke
4f7930e0ee
Remember, SHLIBEXT begins with a period.
...
llvm-svn: 10936
2004-01-21 19:59:19 +00:00
Brian Gaeke
1df28be23b
Modified version of patch from mkahl@apple.com to stop hardcoding ".so".
...
llvm-svn: 10935
2004-01-21 19:53:11 +00:00
Brian Gaeke
4838716cc4
Regenerated using autoconf-2.57 and autoheader-2.57.
...
llvm-svn: 10934
2004-01-21 19:39:29 +00:00
Brian Gaeke
4e7ba0533f
Get SHLIBEXT variable from configure script.
...
llvm-svn: 10933
2004-01-21 19:39:07 +00:00
Brian Gaeke
87ef646f73
Get the shlib suffix from Libtool, and define it both in config.h and Makefile.config as SHLIBEXT.
...
llvm-svn: 10932
2004-01-21 19:38:56 +00:00
Chris Lattner
781ed02fce
SlotCalculator.h moved
...
llvm-svn: 10931
2004-01-20 19:50:34 +00:00
Chris Lattner
3910d21d01
Move SlotCalculator.h from include/llvm to include/llvm/Analysis
...
llvm-svn: 10930
2004-01-20 19:50:12 +00:00
Chris Lattner
a56c54aa2f
bug fixed
...
llvm-svn: 10929
2004-01-20 19:16:50 +00:00
Chris Lattner
858d41f7d4
Fix PR212 - Bytecode reader misreads 'long -9223372036854775808'!
...
Fix testcase test/Regression/Assembler/2004-01-20-MaxLongLong.llx
llvm-svn: 10928
2004-01-20 19:13:07 +00:00
Chris Lattner
7eee35bf6d
New testcase for incorrect bytecode reading of MAXLONG. The reader is getting
...
it as zero.
llvm-svn: 10927
2004-01-20 19:00:12 +00:00
Tanya Lattner
291f28ee4e
Moved iterators around.
...
llvm-svn: 10926
2004-01-20 17:51:13 +00:00
Tanya Lattner
33079fad04
Moved iterators to common file.
...
llvm-svn: 10925
2004-01-20 17:49:42 +00:00
Chris Lattner
a509b856f9
Fix bogus warning and simplify code
...
llvm-svn: 10924
2004-01-20 17:06:29 +00:00
Chris Lattner
7f7b7be528
Major changes. Now we only compactify individual type planes if it is in
...
fact "profitable" to do so. This makes compactification "free" for small
programs (ie, it is completely disabled) and even helps large programs by
not having to encode pointless compactification planes.
On 176.gcc, this saves 50K from the bytecode file, which is, alas only
a couple percent.
This concludes my head bashing against the bytecode format, at least for
now.
llvm-svn: 10922
2004-01-20 00:57:32 +00:00
Chris Lattner
64a4d5c1e4
add a method proto, make a method not inline
...
llvm-svn: 10921
2004-01-20 00:54:47 +00:00
Chris Lattner
85a8d1cc2b
Bugfixes for dealing with partially compactified functions
...
llvm-svn: 10920
2004-01-20 00:54:06 +00:00
Misha Brukman
cb25fd1119
Now with HTML 4.01 comliance flavor.
...
llvm-svn: 10919
2004-01-20 00:20:17 +00:00