llvm-6502/lib
Chris Lattner c3cc71abbc Completely rewrite support for the Value::use_* list. Now, all operations on
this list (except use_size()) are constant time.  Before the killUse method
(used whenever something stopped using a value) was linear time, and thus
very very slow for large programs.

This speeds GCCAS up _substantially_ on large programs: almost 2x for 176.gcc:

176.gcc:     77.07s -> 37.38s
177.mesa:     7.59s ->  5.57s
252.eon:     21.02s -> 19.52s (*)
253.perlbmk: 11.40s -> 13.05s
254.gap:      7.25s -> 7.42s

252.eon would speed up a whole lot more, but optimization time is being
dominated by the inlining pass, which needs to be fixed.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9160 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-16 16:53:07 +00:00
..
Analysis Make use of "external" depth-first iterators to avoid revisiting nodes 2003-10-13 16:36:06 +00:00
Archive
AsmParser Decrease usage of use_size() 2003-10-15 16:48:29 +00:00
Bytecode Stop using "reverse depth first" order 2003-10-13 15:21:58 +00:00
CodeGen #include vector which we will need here soon 2003-10-15 22:09:32 +00:00
ExecutionEngine Order #includes as per the style guide. 2003-10-14 21:42:11 +00:00
Linker Don't include "Config/stdlib.h". 2003-10-10 19:12:22 +00:00
Support Fix up error message. 2003-10-15 20:46:58 +00:00
Target #include vector which we will need here soon 2003-10-15 22:09:32 +00:00
Transforms This code does not require random access use_lists 2003-10-16 16:49:12 +00:00
VMCore Completely rewrite support for the Value::use_* list. Now, all operations on 2003-10-16 16:53:07 +00:00
Makefile