- Feb 09, 2004
-
-
Chris Lattner authored
llvm-svn: 11218
-
Chris Lattner authored
speeds up livevar from .48/.32s -> .45/.31s in LLC on perlbmk llvm-svn: 11217
-
Chris Lattner authored
This speeds up live variables a lot, from .60/.39s -> .47/.26s in LLC, for the first/second pass respectively. llvm-svn: 11216
-
Chris Lattner authored
from physical registers, and they are always dense, it makes sense to not have a ton of RBtree overhead. This change speeds up regalloclocal about ~30% on 253.perlbmk, from .35s -> .27s in the JIT (in LLC, it goes from .74 -> .55). Now live variable analysis is the slowest codegen pass. Of course it doesn't help that we have to run it twice, because regalloclocal doesn't update it, but even if it did it would be the slowest pass (now it's just the 2x slowest pass :( llvm-svn: 11215
-
Chris Lattner authored
1. The "work" was not in the assert, so it was punishing the optimized release 2. getNamedFunction is _very_ expensive in large programs. It is not designed to be used like this, and was taking 7% of the execution time of the code generator on perlbmk. Since the assert "can never fail", I'm just killing it. llvm-svn: 11214
-
Chris Lattner authored
strip it off. llvm-svn: 11213
-
Chris Lattner authored
Have I ever mentioned how much I _hate_ constantpointerrefs? llvm-svn: 11212
-
- Feb 08, 2004
-
-
Misha Brukman authored
llvm-svn: 11210
-
Chris Lattner authored
even if it is wierd in some way. llvm-svn: 11207
-
Chris Lattner authored
llvm-svn: 11206
-
Chris Lattner authored
llvm-svn: 11205
-
Chris Lattner authored
allow 'except' instead of 'unwind' here though. llvm-svn: 11203
-
Chris Lattner authored
llvm-svn: 11202
-
Chris Lattner authored
llvm-svn: 11200
-
Chris Lattner authored
llvm-svn: 11199
-
Chris Lattner authored
This fixed PR16 "[lowerinvoke] The -lowerinvoke pass does not insert calls to setjmp/longjmp" llvm-svn: 11195
-
Chris Lattner authored
emitGlobals llvm-svn: 11191
-
Chris Lattner authored
llvm-svn: 11190
-
Chris Lattner authored
This causes the JIT, or LLC'd program to print out a nice message, explaining WHY the program aborted. llvm-svn: 11184
-
Chris Lattner authored
llvm-svn: 11179
-
Chris Lattner authored
removeDeadNodes is called, only call it at the end of the pass being run. This saves 1.3 seconds running DSA on 177.mesa (5.3->4.0s), which is pretty big. This is only possible because of the automatic garbage collection done on forwarding nodes. llvm-svn: 11178
-
Chris Lattner authored
llvm-svn: 11177
-
Chris Lattner authored
llvm-svn: 11176
-
Chris Lattner authored
DSGraphs while they are forwarding. When the last reference to the forwarding node is dropped, the forwarding node is autodeleted. This should simplify removeTriviallyDead nodes, and is only (efficiently) possible because we are using an ilist of dsnodes now. llvm-svn: 11175
-
Chris Lattner authored
G == 0 llvm-svn: 11174
-
Chris Lattner authored
llvm-svn: 11173
-
Chris Lattner authored
llvm-svn: 11171
-
Chris Lattner authored
Rename stats from dsnode -> dsa Add a new stat llvm-svn: 11167
-
Chris Lattner authored
llvm-svn: 11166
-
- Feb 07, 2004
-
-
Chris Lattner authored
llvm-svn: 11157
-
- Feb 06, 2004
-
-
Alkis Evlogimenos authored
llvm-svn: 11151
-
Alkis Evlogimenos authored
of the virtual register to certain functions. llvm-svn: 11143
-
Chris Lattner authored
keeps finding more code motion opportunities now that the dominators are correct! llvm-svn: 11142
-
- Feb 05, 2004
-
-
Alkis Evlogimenos authored
slots each. As a concequence they get numbered as 0, 2, 4 and so on. The first slot is used for operand uses and the second for defs. Here's an example: 0: A = ... 2: B = ... 4: C = A + B ;; last use of A The live intervals should look like: A = [1, 5) B = [3, x) C = [5, y) llvm-svn: 11141
-
Chris Lattner authored
llvm-svn: 11140
-
Chris Lattner authored
llvm-svn: 11139
-
Chris Lattner authored
The problem is that the dominator update code didn't "realize" that it's possible for the newly inserted basic block to dominate anything. Because it IS possible, stuff was getting updated wrong. llvm-svn: 11137
-
Alkis Evlogimenos authored
access. Rather we only have to do it on the creation of the interval. llvm-svn: 11135
-
Chris Lattner authored
complete rewrite of load-vn will make it a bit faster. This changes speeds up the gcse pass (which uses load-vn) from 25.45s to 0.42s on the testcase in PR209. I've also verified that this gives the exact same results as the old one. llvm-svn: 11132
-
Chris Lattner authored
which causes big reindentation. While I'm at it, I fix the fixme by removing some dead code. llvm-svn: 11131
-