aboutsummaryrefslogtreecommitdiffstats
path: root/lib/Transforms/Utils/BreakCriticalEdges.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* Fix Analysis/Dominators/2006-10-02-BreakCritEdges.llChris Lattner2007-01-151-1/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33210 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix PR1110 and Analysis/Dominators/2007-01-14-BreakCritEdges.ll by beingChris Lattner2007-01-141-35/+40
| | | | | | | more careful about unreachable code when updating dominator info. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33204 91177308-0d34-0410-b5e6-96231b3b80d8
* switch more statistics over to STATISTIC, eliminating static ctors. Also,Chris Lattner2006-12-191-2/+3
| | | | | | | delete some dead ones. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32694 91177308-0d34-0410-b5e6-96231b3b80d8
* Detemplatize the Statistic class. The only type it is instantiated withChris Lattner2006-12-061-1/+1
| | | | | | | is 'unsigned'. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32279 91177308-0d34-0410-b5e6-96231b3b80d8
* add option to isCriticalEdgeChris Lattner2006-10-281-3/+12
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31258 91177308-0d34-0410-b5e6-96231b3b80d8
* Expose a smarter way to break critical edges.Chris Lattner2006-10-281-5/+24
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31256 91177308-0d34-0410-b5e6-96231b3b80d8
* This case isn't implemented yet. It seems unlikely to be needed, but if itChris Lattner2006-10-041-4/+2
| | | | | | | ever is, we want to get an assert instead of silent bad codegen. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30716 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix PR932 and Analysis/Dominators/2006-10-02-BreakCritEdges.ll:Chris Lattner2006-10-031-15/+112
| | | | | | | | The critical edge block dominates the dest block if the destblock dominates all edges other than the one incoming from the critical edge. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30696 91177308-0d34-0410-b5e6-96231b3b80d8
* eliminate RegisterOpt. It does the same thing as RegisterPass.Chris Lattner2006-08-271-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29925 91177308-0d34-0410-b5e6-96231b3b80d8
* s|llvm/Support/Visibility.h|llvm/Support/Compiler.h|Chris Lattner2006-08-271-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29911 91177308-0d34-0410-b5e6-96231b3b80d8
* Use hidden visibility to make symbols in an anonymous namespace getChris Lattner2006-06-281-1/+2
| | | | | | | dropped. This shrinks libllvmgcc.dylib another 67K git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28975 91177308-0d34-0410-b5e6-96231b3b80d8
* Preserve and update ETForest. Patch by Daniel BerlinChris Lattner2006-01-111-0/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25203 91177308-0d34-0410-b5e6-96231b3b80d8
* Teach SplitCriticalEdge to update LoopInfo if it is alive. This fixesChris Lattner2005-08-131-0/+31
| | | | | | | | a problem in LoopStrengthReduction, where it would split critical edges then confused itself with outdated loop information. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22776 91177308-0d34-0410-b5e6-96231b3b80d8
* Change break critical edges to not remove, then insert, PHI node entries.Chris Lattner2005-08-121-2/+2
| | | | | | | | Instead, just update the BB in-place. This is both faster, and it prevents split-critical-edges from shuffling the PHI argument list unneccesarily. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22765 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove trailing whitespaceMisha Brukman2005-04-211-6/+6
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21427 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix the missing symbols problem Bill was hitting. Patch contributed byChris Lattner2005-03-171-0/+1
| | | | | | | Bill Wendling!! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20649 91177308-0d34-0410-b5e6-96231b3b80d8
* Convert code to compile with vc7.1.Reid Spencer2004-09-151-2/+2
| | | | | | | Patch contributed by Paolo Invernizzi. Thanks Paolo! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16368 91177308-0d34-0410-b5e6-96231b3b80d8
* Changes For Bug 352Reid Spencer2004-09-011-1/+1
| | | | | | | | | Move include/Config and include/Support into include/llvm/Config, include/llvm/ADT and include/llvm/Support. From here on out, all LLVM public header files must be under include/llvm/. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16137 91177308-0d34-0410-b5e6-96231b3b80d8
* Expose this as a functionpassChris Lattner2004-07-311-1/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15369 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix #includes of i*.h => Instructions.h as per PR403.Misha Brukman2004-07-291-1/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15337 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix #includes of i*.h => Instructions.h as per PR403.Misha Brukman2004-07-291-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15334 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix bug: test/Regression/Transforms/LowerInvoke/2004-02-29-PHICrash.llxChris Lattner2004-02-291-2/+5
| | | | | | | ... which tickled the lowerinvoke pass because it used the BCE routines. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12012 91177308-0d34-0410-b5e6-96231b3b80d8
* Finegrainify namespacificationChris Lattner2004-01-091-8/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10727 91177308-0d34-0410-b5e6-96231b3b80d8
* Minor cleanups and simplificationsChris Lattner2003-11-211-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10127 91177308-0d34-0410-b5e6-96231b3b80d8
* Start using the nicer terminator auto-insertion APIChris Lattner2003-11-201-2/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10111 91177308-0d34-0410-b5e6-96231b3b80d8
* Put all LLVM code into the llvm namespace, as per bug 109.Brian Gaeke2003-11-111-0/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9903 91177308-0d34-0410-b5e6-96231b3b80d8
* Reorganize code for locality, improve commentsChris Lattner2003-11-101-19/+23
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9857 91177308-0d34-0410-b5e6-96231b3b80d8
* Adjust to new critical edge interfaceChris Lattner2003-11-101-9/+11
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9853 91177308-0d34-0410-b5e6-96231b3b80d8
* Added LLVM project notice to the top of every C++ source file.John Criswell2003-10-201-0/+7
| | | | | | | Header files will be on the way. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9298 91177308-0d34-0410-b5e6-96231b3b80d8
* Rename loop preheaders pass to loop simplifyChris Lattner2003-10-121-1/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9061 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix spelling.Misha Brukman2003-10-101-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9027 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove unnecesary &*'sChris Lattner2003-04-231-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5872 91177308-0d34-0410-b5e6-96231b3b80d8
* BreakCriticalEdges should update dominance frontier information as well asChris Lattner2002-10-311-2/+14
| | | | | | | other dominance stuff. Patch contributed by Casey Carter git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4457 91177308-0d34-0410-b5e6-96231b3b80d8
* - Fix bug: cee/2002-10-07-NoImmediateDominator.llChris Lattner2002-10-081-1/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4081 91177308-0d34-0410-b5e6-96231b3b80d8
* Expose isCriticalEdge & SplitCriticalEdge methods from crit-edges passChris Lattner2002-10-081-9/+10
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4075 91177308-0d34-0410-b5e6-96231b3b80d8
* Updates to work with recent Statistic's changes:Chris Lattner2002-10-011-2/+2
| | | | | | | | | | | | | * Renamed StatisticReporter.h/cpp to Statistic.h/cpp * Broke constructor to take two const char * arguments instead of one, so that indendation can be taken care of automatically. * Sort the list by pass name when printing * Make sure to print all statistics as a group, instead of randomly when the statistics dtors are called. * Updated ProgrammersManual with new semantics. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4002 91177308-0d34-0410-b5e6-96231b3b80d8
* - Cleanup break-crit-edges pass by making SplitCriticalEdge a member method.Chris Lattner2002-09-261-29/+30
| | | | | | | - break-crit-edges pass does not invalidate loop-preheader pass. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3944 91177308-0d34-0410-b5e6-96231b3b80d8
* - Do not expose Critical Edge breaking mechanics outside the BCE pass, thusChris Lattner2002-09-241-9/+94
| | | | | | | removing it from Transforms/Local.h and from Transforms/Utils/* git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3910 91177308-0d34-0410-b5e6-96231b3b80d8
* - Expose passinfo from BreakCriticalEdges pass so that it may be "Required"Chris Lattner2002-09-241-14/+17
| | | | | | | by other passes. Make BCE pass be in anonymous namespace now. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3907 91177308-0d34-0410-b5e6-96231b3b80d8
* Add new BreakCriticalEdges passChris Lattner2002-09-241-0/+52
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3903 91177308-0d34-0410-b5e6-96231b3b80d8