Chris Lattner
87b429a338
New testcases for LICM improvement: code sinking.
...
llvm-svn: 10339
2003-12-09 16:56:51 +00:00
Chris Lattner
070d2c2bf7
Improve portability with Mac OS/X
...
llvm-svn: 10338
2003-12-09 16:49:12 +00:00
Chris Lattner
13fa561c2b
Improve testcase portability on OS/X
...
llvm-svn: 10337
2003-12-09 16:48:24 +00:00
Chris Lattner
24436124c2
New testcase that is not actually handled yet, but should be in the future.
...
This is here to remind me to get back to this after a while.
llvm-svn: 10336
2003-12-09 16:26:42 +00:00
John Criswell
90e72c9cba
Added the -h option for compatibility with other linkers.
...
llvm-svn: 10335
2003-12-09 15:39:11 +00:00
Chris Lattner
8a5e4696ba
Whoops, forgot to check this in. :)
...
llvm-svn: 10334
2003-12-08 23:41:09 +00:00
Chris Lattner
a62c29757d
Implement: TailCallElim/accum_recursion_constant_arg.ll
...
Also make sure to clean up any PHI nodes that are inserted which are pointless.
llvm-svn: 10333
2003-12-08 23:37:35 +00:00
Chris Lattner
647b7d8869
Implement: test/Regression/Transforms/TailCallElim/accum_recursion.ll
...
We now insert accumulator variables as necessary to eliminate tail recursion
more aggressively. This is still fairly limited, but allows us to transform
fib/factorial, and other functions into nice happy loops. :)
llvm-svn: 10332
2003-12-08 23:19:26 +00:00
Chris Lattner
08251ca537
New testcase for automatic insertion of accumulator variables to eliminate
...
tail recursion
llvm-svn: 10331
2003-12-08 23:16:25 +00:00
Chris Lattner
06338c93f3
Add a missing semi colon, which breaks bison 1.5
...
llvm-svn: 10325
2003-12-08 20:15:33 +00:00
Chris Lattner
254c586cf6
Simplify makefiles by just explicitly listing directories
...
llvm-svn: 10324
2003-12-08 20:12:46 +00:00
John Criswell
b4696a080a
Updated build instructions for Sparc.
...
llvm-svn: 10323
2003-12-08 19:59:14 +00:00
John Criswell
ffbffee282
Fixed the dynamic generation of the list of subdirectories to compile.
...
llvm-svn: 10322
2003-12-08 17:52:32 +00:00
Chris Lattner
369445aaa6
implement method
...
llvm-svn: 10321
2003-12-08 08:23:04 +00:00
Chris Lattner
23328c5f69
Use the new method, though noone currently implements it any better than before
...
llvm-svn: 10320
2003-12-08 08:22:48 +00:00
Chris Lattner
c6d99b5894
add two new virtual functions:
...
The first returns a function pointer or a stub if it's not already generated
The second exposes what was previously JIT specific state to general clients
llvm-svn: 10319
2003-12-08 08:22:01 +00:00
Chris Lattner
ebd5b871e4
Finegrainify namespacification
...
llvm-svn: 10318
2003-12-08 08:06:28 +00:00
Chris Lattner
410d02303b
Makefile updates contributed by Reid
...
llvm-svn: 10317
2003-12-08 07:08:00 +00:00
Chris Lattner
95095f81c5
New bug
...
llvm-svn: 10316
2003-12-08 06:33:19 +00:00
Misha Brukman
457d62c6b1
effect' is the noun,
affect' is the verb.
...
llvm-svn: 10315
2003-12-08 06:22:05 +00:00
Chris Lattner
0443e837a0
New testcase for PR165
...
llvm-svn: 10314
2003-12-08 06:18:37 +00:00
Chris Lattner
1bf90420ca
Add note about sucky suse compiler
...
llvm-svn: 10313
2003-12-08 05:43:19 +00:00
Chris Lattner
be2b3fb417
Cleanup and restructure the code to make it easier to read and maintain.
...
The only functionality change is that we now implement:
Regression/Transforms/TailCallElim/intervening-inst.ll
Which is really kinda pointless, because it means that trivially dead code
does not interfere with -tce, but trivially dead code probably wouldn't be
around anytime when this pass is run anyway.
The point of including this change it to support other more aggressive
transformations when we have the analysis capabilities to do so.
llvm-svn: 10312
2003-12-08 05:34:54 +00:00
Chris Lattner
55119e3ae7
New testcase, this should be -tailcallelim'inated
...
llvm-svn: 10311
2003-12-08 05:32:48 +00:00
Chris Lattner
b8160c0ef9
Since ssaification of the varargs builtings, the vaarg instruction no longer
...
can write to memory.
llvm-svn: 10310
2003-12-08 05:29:33 +00:00
Brian Gaeke
65f9808281
Regenerated using autoheader-2.57
...
llvm-svn: 10309
2003-12-08 00:57:01 +00:00
Chris Lattner
21819d462c
Bugpoint had appalingly bad grammar. Fix some of it.
...
llvm-svn: 10308
2003-12-07 02:43:09 +00:00
Chris Lattner
d7b71dadf5
Do not leave a bunch of crud lying around
...
llvm-svn: 10307
2003-12-07 02:31:03 +00:00
Chris Lattner
ccff2f467f
It is now after pldi. This issue has been fixed, so remove the hack
...
llvm-svn: 10306
2003-12-07 01:44:18 +00:00
Chris Lattner
0dbb3822a4
Implement RaiseAllocations/FreeCastConstantExpr.ll
...
llvm-svn: 10305
2003-12-07 01:42:08 +00:00
Chris Lattner
b65463d410
New testcase that the raiseallocations pass should be able to handle.
...
llvm-svn: 10304
2003-12-07 01:25:36 +00:00
Chris Lattner
60dae0e7d9
* Finegrainify namespacification
...
* Transform: free <ty>* (cast <ty2>* X to <ty>*) into free <ty2>* X
llvm-svn: 10303
2003-12-07 01:24:23 +00:00
Chris Lattner
d4abe8d28a
The recalclulate method was a nasty hack that was once used by the -cee pass,
...
which never worked itself. The cee pass still doesn't work, but it doesn't use
this method anymore anyway, so eliminate the method.
llvm-svn: 10302
2003-12-07 00:55:32 +00:00
Chris Lattner
9eeb35760f
Completely rewrite domset, idom, and domtree implementation. Now it is based
...
on the algorithm for directly computing immediate dominators presented in this
paper:
A Fast Algorithm for Finding Dominators in a Flowgraph
T. Lengauer & R. Tarjan, ACM TOPLAS July 1979, pgs 121-141.
This _substantially_ speeds up construction of all dominator related information.
Post-dominators to follow.
llvm-svn: 10301
2003-12-07 00:38:08 +00:00
Chris Lattner
c96fd2cf0c
Rewrite dominators implementation. Now domset is constructed from immdom,
...
instead of the other way around.
llvm-svn: 10300
2003-12-07 00:36:16 +00:00
Chris Lattner
5f0dc73b86
Finegrainify namespacification
...
Move method out of generic dominators construction code
llvm-svn: 10299
2003-12-07 00:35:42 +00:00
Chris Lattner
1c0824d019
Move this method out of the generic dominators calculation code
...
llvm-svn: 10298
2003-12-07 00:35:19 +00:00
Tanya Lattner
0499e53fe5
New command line parsing. This isn't as perfect as I would have liked. The CommandLine Library needs to be extended, in order to parse the options and allow for optional dashes. In addition, the help option isn't correct since I do the parsing mostly myself. But this is in the ocorrect ar format.
...
llvm-svn: 10297
2003-12-06 23:01:25 +00:00
Chris Lattner
a75d42cf99
Stop using the -fshort-enum compile option
...
llvm-svn: 10296
2003-12-06 20:59:45 +00:00
Chris Lattner
bdffa0ff72
Fix awkward wording
...
llvm-svn: 10295
2003-12-06 20:24:46 +00:00
Chris Lattner
c2d0a56378
Cleanup the release notes in preparation for the release.
...
llvm-svn: 10294
2003-12-06 20:22:41 +00:00
Brian Gaeke
35bc966ddd
Add check for pthread_mutex_lock() in -lpthread (or otherwise).
...
Regenerated configure w/ autoconf-2.57.
llvm-svn: 10293
2003-12-05 19:29:01 +00:00
Alkis Evlogimenos
f3373f7bc9
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).
llvm-svn: 10292
2003-12-05 11:31:39 +00:00
Alkis Evlogimenos
711ebbdd57
Fix bug in register spilling when a preallocated live range overlaps a
...
potential register assignment.
llvm-svn: 10291
2003-12-05 11:17:55 +00:00
Alkis Evlogimenos
229c2b9181
Move operator<<(std::ostream&, const LiveInterval&) out of the header file.
...
llvm-svn: 10290
2003-12-05 10:38:28 +00:00
Alkis Evlogimenos
52ec591c66
Sort live intervals by increasing start point.
...
llvm-svn: 10289
2003-12-05 10:32:01 +00:00
Alkis Evlogimenos
6f8151e202
Improve debugging output and clean up some code.
...
llvm-svn: 10288
2003-12-04 03:57:28 +00:00
Chris Lattner
0d57e06a37
Finegrainify namespacification
...
Fix regressions ScalarRepl/basictest.ll & arraytest.ll
llvm-svn: 10287
2003-12-02 17:43:55 +00:00
Brian Gaeke
dba80bde3c
Lock abstraction, introduced with a view toward making the JIT thread-safe.
...
Eventually.
llvm-svn: 10284
2003-12-01 21:33:31 +00:00
Chris Lattner
f62ad43b22
Make stripped-bytecode a recursive target
...
llvm-svn: 10283
2003-12-01 07:28:25 +00:00