llvm/lib
Chris Lattner b5c16705fd Change Type::isAbstract to have better comments, a more correct name
(PromoteAbstractToConcrete), and to use a set to avoid recomputation.
In particular, this set eliminates the potentially exponential cases
from this little recursive algorithm.

On a particularly nasty testcase, llvm-dis on the .bc file went from 34
minutes (which is when I killed it, it still hadn't finished) to 0.57s.
Remember kids, exponential algorithms are bad.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16772 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-06 16:36:46 +00:00
..
Analysis 'Pass' should now not be derived from by clients. Instead, they should derive 2004-09-20 04:48:05 +00:00
Archive Changes For Bug 352 2004-09-01 22:55:40 +00:00
AsmParser Okay, the list of link-time passes wasn't such a hot idea. Its prone to 2004-09-14 05:43:23 +00:00
Bytecode Fix doxygen comment 2004-09-28 16:57:46 +00:00
CodeGen Do not repeat the map lookup 2004-10-01 23:16:43 +00:00
Debugger Changes For Bug 352 2004-09-01 22:55:40 +00:00
ExecutionEngine Convert code to compile with vc7.1. 2004-09-15 17:06:42 +00:00
Linker Make sure the const bit gets inherited correctly when linking declarations 2004-10-05 02:28:11 +00:00
Support Excise the ill-advised RLCOMP compression algorithm and simply leave the 2004-10-04 17:45:44 +00:00
System Must include sys/stat.h before declaring a 'struct stat' 2004-10-05 18:46:59 +00:00
Target Correct some typeos 2004-10-06 16:28:24 +00:00
Transforms Instcombine: -(X sdiv C) -> (X sdiv -C), tested by sub.ll:test16 2004-10-06 15:08:25 +00:00
VMCore Change Type::isAbstract to have better comments, a more correct name 2004-10-06 16:36:46 +00:00
Makefile Wrap long line 2004-09-15 01:34:42 +00:00