Alkis Evlogimenos
a327e7fea9
Make assertion stricter. Since the source operands are allocated at
...
this point, the second operand must be a physical register (it cannot
be a virtual one).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10292 91177308-0d34-0410-b5e6-96231b3b80d8
2003-12-05 11:31:39 +00:00
Alkis Evlogimenos
49787e35c3
Fix bug in register spilling when a preallocated live range overlaps a
...
potential register assignment.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10291 91177308-0d34-0410-b5e6-96231b3b80d8
2003-12-05 11:17:55 +00:00
Alkis Evlogimenos
b27ef248f5
Move operator<<(std::ostream&, const LiveInterval&) out of the header file.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10290 91177308-0d34-0410-b5e6-96231b3b80d8
2003-12-05 10:38:28 +00:00
Alkis Evlogimenos
91ceae6d20
Sort live intervals by increasing start point.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10289 91177308-0d34-0410-b5e6-96231b3b80d8
2003-12-05 10:32:01 +00:00
Alkis Evlogimenos
69546d5f84
Improve debugging output and clean up some code.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10288 91177308-0d34-0410-b5e6-96231b3b80d8
2003-12-04 03:57:28 +00:00
Chris Lattner
d866473094
Finegrainify namespacification
...
Fix regressions ScalarRepl/basictest.ll & arraytest.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10287 91177308-0d34-0410-b5e6-96231b3b80d8
2003-12-02 17:43:55 +00:00
Brian Gaeke
59e47e3ee1
Lock abstraction, introduced with a view toward making the JIT thread-safe.
...
Eventually.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10284 91177308-0d34-0410-b5e6-96231b3b80d8
2003-12-01 21:33:31 +00:00
Chris Lattner
a8df7bdbac
Make stripped-bytecode a recursive target
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10283 91177308-0d34-0410-b5e6-96231b3b80d8
2003-12-01 07:28:25 +00:00
Chris Lattner
7f5dbcc9ea
Add new block number
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10281 91177308-0d34-0410-b5e6-96231b3b80d8
2003-12-01 07:08:06 +00:00
Chris Lattner
8d1dbd2134
Emit & read more compressed bytecode by not emitting a bytecodeblock for
...
each basic block in function. Instead, just emit a stream of instructions,
chopping up basic blocks based on when we find terminator instructions. This
saves a fairly substantial chunk of bytecode space. In stripped, sample
cases, for example, we get this reduction in size:
197.parser: 163036 -> 137180: 18.8% reduction
254.gap : 844936 -> 689392: 22.6%
255.vortex: 621724 -> 528444: 17.7%
...
Not bad for something this simple. :) Note that this doesn't require a new
bytecode version number at all, though version 1.1 should not need to support
the old format.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10280 91177308-0d34-0410-b5e6-96231b3b80d8
2003-12-01 07:05:31 +00:00
Chris Lattner
d540e2c995
Remove unused enum value
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10279 91177308-0d34-0410-b5e6-96231b3b80d8
2003-12-01 05:40:37 +00:00
Brian Gaeke
ac5d96b4e3
This may fix the "0 dirs" stuff we get in the nightly tests when they are
...
checking out over remote cvs connections.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10278 91177308-0d34-0410-b5e6-96231b3b80d8
2003-12-01 05:31:12 +00:00
Chris Lattner
786a518f47
Add some "useful" methods
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10277 91177308-0d34-0410-b5e6-96231b3b80d8
2003-12-01 05:30:29 +00:00
Chris Lattner
9b527704f7
Add an option to enable the SSA based peephole optimizer.
...
Eventually this pass will provide substantially better code in the interim between when we
have a crappy isel and nice isel. Unfortunately doing so requires fixing the backend to
actually SUPPORT all of the fancy addressing modes that we now generate, and writing a DCE
pass for machine code. Each of these is a fairly substantial job, so this will remain disabled
for the immediate future. :(
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10276 91177308-0d34-0410-b5e6-96231b3b80d8
2003-12-01 05:18:30 +00:00
Chris Lattner
4537076ee8
Add a new SSA-based peephole optimizer which includes copy propagation and
...
folding of instructions into addressing modes. This creates lots of dead
instructions, which are currently not deleted. It also creates a lot of
instructions that the X86 backend currently cannot handle. :(
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10275 91177308-0d34-0410-b5e6-96231b3b80d8
2003-12-01 05:15:28 +00:00
Chris Lattner
f2d2925452
generalize the instruction types permitted a bit
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10274 91177308-0d34-0410-b5e6-96231b3b80d8
2003-12-01 05:13:56 +00:00
Chris Lattner
832e2503e5
fix broken link
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10273 91177308-0d34-0410-b5e6-96231b3b80d8
2003-12-01 05:12:09 +00:00
Alkis Evlogimenos
585870759b
Print instructions before register allocation is performed. Also fix
...
bug where spill instructions were added to the next basic block
instead of the end of the current one if the instruction that required
the spill was the last in the block.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10272 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-30 23:40:39 +00:00
Chris Lattner
9ca419e577
add missing dependency
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10271 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-30 09:22:42 +00:00
Chris Lattner
e1cc79f1cf
Finegrainify namespacification
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10270 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-30 06:13:25 +00:00
Chris Lattner
8522e38c1b
A line was missing
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10269 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-30 05:46:14 +00:00
Alkis Evlogimenos
99d1a8f048
Remove "numReloaded" statistic.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10268 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-30 05:15:36 +00:00
Chris Lattner
2c0a6a19ef
Emit constants to one contiguous block, but this time, respect alignment constraints.
...
If this doesn't work Misha, feel free to revert it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10267 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-30 04:23:21 +00:00
Misha Brukman
91de352796
Go back to allocating memory for each constant separately. Since SPARCs do not
...
allow unaligned loads, that is probably the problem I've been seeing in numerous
SPARC test cases failing. X86, on the other hand, just slows down unaligned
accesses, since it must make 2 aligned accesses for each unaligned one.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10266 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-30 00:50:53 +00:00
Chris Lattner
043b9722f5
be 3.4 happy
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10265 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-29 20:04:13 +00:00
Chris Lattner
f17072b79c
be GCC 3.4 clean
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10264 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-29 19:55:12 +00:00
Chris Lattner
d2aa7b8ee7
Hrm, how could this compile?
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10263 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-29 19:55:02 +00:00
Chris Lattner
9e6f686559
Fix compatibility with gcc 3.4
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10262 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-29 19:45:47 +00:00
Chris Lattner
f168b7551c
Build _lib_crtend.a, not crtend.a
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10260 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-29 10:24:57 +00:00
Chris Lattner
53005b00be
Don't print out tons of crap
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10259 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-29 10:14:17 +00:00
Chris Lattner
ef1835df7b
Rewrite makefile logic to build an archive instead of a .o file. This is
...
intended to address PR142
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10257 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-29 10:05:30 +00:00
Chris Lattner
eefa3d3cfb
Simplify some rules
...
Move LGCCLDPROG from test/Makefile.tests
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10256 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-29 09:50:15 +00:00
Chris Lattner
f6968f3886
Move rule to top-level makefile
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10255 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-29 09:49:14 +00:00
Chris Lattner
e893d649fa
Add readme and spiff up makefile header
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10254 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-29 09:22:53 +00:00
Chris Lattner
b895fb06ec
Testcase for duplicated cleanup work (PR11). Note that this testcase is not actually
...
tested automatically, so it is practically useless. However, it seemed silly to throw
away my testcase, so here it is.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10253 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-29 09:10:50 +00:00
Chris Lattner
3607f4d217
Fix test: Transforms/LevelRaise/2003-11-28-IllegalTypeConversion.ll
...
Some gep generalization changes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10252 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-29 05:31:25 +00:00
Chris Lattner
7219a21138
new testcase for problem causing 2003-10-12-GlobalVarInitializers failures
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10251 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-29 05:19:15 +00:00
Chris Lattner
548e813fa7
The function resolving pass must be run, even if -disable-opt is specified
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10250 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-28 09:44:03 +00:00
Chris Lattner
6cc8ca9229
* The return value of LinkLibraries is ignored, so remove it.
...
* Finegrainify namespacification of Linker.cpp
* If linking a library in fails, do not STOP LINKING IN LIBRARIES AND
CONTINUE ANYWAY! Instead, just output the warning, and keep going. :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10249 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-28 07:44:09 +00:00
Chris Lattner
d423fb5cbf
fix gcc 3.4 compatibility problem
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10248 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-28 01:46:06 +00:00
Chris Lattner
f095db1237
Testcase for PR160
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10247 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-28 01:32:03 +00:00
Chris Lattner
2bc9988b1a
New testcase for PR158
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10246 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-27 21:25:07 +00:00
Chris Lattner
d8db4eb5d7
Fix grammaro
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10245 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-27 21:17:48 +00:00
Chris Lattner
1f80115a81
testcase for PR159
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10244 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-27 20:47:16 +00:00
Chris Lattner
f5e25aada0
PR11 is now fixed for 1.1!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10243 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-27 09:52:03 +00:00
Chris Lattner
3074b34ad0
PR11 is now fixed for 1.1
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10242 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-27 09:51:54 +00:00
Chris Lattner
35976d91af
* Squelch warning on Sun
...
* stdlib and friends are system headers
* 'long long' is the type that consistently turns into the LLVM 'long' type.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10241 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-27 07:48:45 +00:00
John Criswell
f2ec35be40
Makefiles are now copies over to the object root directory dynamically.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10240 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-26 20:09:49 +00:00
John Criswell
1b4fb5a32c
Renamed intermediate values that used the same type and name as previous
...
values. All of these files should assemble now.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10239 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-26 14:45:37 +00:00
Chris Lattner
f733073f96
Bugz die!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10238 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-26 08:20:34 +00:00