llvm-6502/lib
Dan Gohman b08ba8824e Fix (at least) quadratic worst-case complexity in DominanceFrontier::splitBlock:
don't visit all blocks in the function, and don't iterate over the split blocks'
predecessor lists for each block visited.

Also, remove the special-case test for the entry block. Splitting the entry
block isn't common enough to make this worthwhile.

This fixes a major compile-time bottleneck which is exposed now that
LoopSimplify isn't being redundantly run both before and after
DominanceFrontier.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109408 91177308-0d34-0410-b5e6-96231b3b80d8
2010-07-26 17:55:15 +00:00
..
Analysis Use DominatorTree::properlyDominates instead of dominates with an 2010-07-26 17:34:05 +00:00
Archive Eliminate some unnessary Path::exists() calls. 2010-05-27 20:51:54 +00:00
AsmParser Revert r109361; it's impossible to write a call with an argument with an 2010-07-24 23:06:59 +00:00
Bitcode Make NamedMDNode not be a subclass of Value, and simplify the interface 2010-07-21 23:38:33 +00:00
CodeGen A block dominates itself, by definition. 2010-07-26 17:38:15 +00:00
CompilerDriver Formatting. 2010-07-23 04:19:34 +00:00
ExecutionEngine remove the dwarf sizing stuff which is now dead, it was 2010-07-22 21:20:39 +00:00
Linker Make NamedMDNode not be a subclass of Value, and simplify the interface 2010-07-21 23:38:33 +00:00
MC Fix format-specifier warning 2010-07-26 03:55:44 +00:00
Support Don't pass StringRef by reference. 2010-07-14 22:38:02 +00:00
System Rather than using an ifdef on the target to zero out fields, 2010-07-14 14:32:33 +00:00
Target Remove extraneous semicolon 2010-07-25 17:34:42 +00:00
Transforms Use DominatorTree::properlyDominates instead of dominates with an 2010-07-26 17:37:36 +00:00
VMCore Fix (at least) quadratic worst-case complexity in DominanceFrontier::splitBlock: 2010-07-26 17:55:15 +00:00
Makefile