LLVM backend for 6502
Go to file
Chris Lattner 69091be83b This changes the PromoteMemToReg function to create "pruned" SSA form, not
"minimal" SSA form (in other words, it doesn't insert dead PHIs).  This
speeds up the mem2reg pass very significantly because it doesn't have to
do a lot of frivolous work in many common cases.

In the 252.eon function I have been playing with, this doesn't even insert
the 120 PHI nodes that it used to which were trivially dead (in the process
of promoting 356 alloca instructions overall).  This speeds up the mem2reg
pass from 1.2459s to 0.1284s.  More significantly, the DCE pass used to take
2.4138s to remove the 120 dead PHI nodes that mem2reg constructed, now it
takes 0.0134s (which is the time to scan the function and decide that there
is nothing dead).  So overall, on this one function, we speed things up a
total of 3.5179s, which is a 24.8x speedup!  :)

This change is tested by the Mem2Reg/2003-10-05-DeadPHIInsertion.ll test,
which now passes.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8884 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-05 22:19:20 +00:00
autoconf Removed the check for purify as we don't support its use at present. 2003-10-02 19:02:30 +00:00
docs The sparc backend now support invoke, but still doesn't support unwind 2003-10-05 19:17:10 +00:00
examples/ModuleMaker Checkin of autoconf-style object root. 2003-09-06 15:03:24 +00:00
include Change the interface to PromoteMemToReg to also take a DominatorTree 2003-10-05 21:20:13 +00:00
lib This changes the PromoteMemToReg function to create "pruned" SSA form, not 2003-10-05 22:19:20 +00:00
projects Checkin of autoconf-style object root. 2003-09-06 15:03:24 +00:00
runtime Fix building outside the srcdir, again 2003-09-15 19:22:36 +00:00
test new testcase 2003-10-05 21:11:57 +00:00
tools Add a file header 2003-09-30 18:28:53 +00:00
utils The support directory no longer exists 2003-10-05 19:33:27 +00:00
.cvsignore
configure Removed the check for purify as we don't support its use at present. 2003-10-02 19:02:30 +00:00
CREDITS.TXT Update email addr 2003-09-23 20:59:28 +00:00
LICENSE.TXT
Makefile Revert back to keeping Burg and TableGen in the utils directory 2003-10-05 19:28:27 +00:00
Makefile.common Checkin of autoconf-style object root. 2003-09-06 14:44:17 +00:00
Makefile.config.in Fixed SPEC so that it would run correctly with the new autoconf-style object 2003-09-11 18:03:50 +00:00
Makefile.rules Fixed the conditional targets for postscript files and tags. 2003-10-02 19:02:02 +00:00