| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | Take advantage of the new fast SmallPtrSet assignment operator when ↵ | Owen Anderson | 2007-07-09 | 1 | -20/+6 |
| | | | | | | | | | propagating AVAIL_OUT sets. This reduces the time to optimize Anton's testcase from 31.2s to 21.s! llvm-svn: 38475 | ||||
| * | Expose struct size threhold to allow users to tweak their own setting. | Devang Patel | 2007-07-09 | 1 | -3/+12 |
| | | | | | llvm-svn: 38472 | ||||
| * | Fix a comment. | Owen Anderson | 2007-07-09 | 1 | -1/+1 |
| | | | | | llvm-svn: 38459 | ||||
| * | Improve a hotspot that was making build_sets() slower by calling lookup() too | Owen Anderson | 2007-07-09 | 1 | -27/+30 |
| | | | | | | | often. This improves Anton's testcase from 36s to 32s. llvm-svn: 38441 | ||||
| * | Start using a set representation that remembers the set of value numbers ↵ | Owen Anderson | 2007-07-09 | 1 | -141/+176 |
| | | | | | | | | | | represented in the set. For the moment, this results in a slight performance decrease, but it lays the groundwork for future improvements. llvm-svn: 38439 | ||||
| * | Fix an error where ANTIC_OUT was ending up with more than one expression of | Owen Anderson | 2007-07-07 | 1 | -1/+1 |
| | | | | | | | the same value number. This fixes an infinite loop on 444.namd. llvm-svn: 37967 | ||||
| * | Back out Devang's fix for PR1320 because it causes PR1542. | Nick Lewycky | 2007-07-07 | 1 | -93/+19 |
| | | | | | llvm-svn: 37966 | ||||
| * | These rountines are now available as part of basic block utilities. | Devang Patel | 2007-07-06 | 1 | -66/+5 |
| | | | | | llvm-svn: 37955 | ||||
| * | Request DominanceFrontiner in advance. | Devang Patel | 2007-07-06 | 1 | -0/+5 |
| | | | | | llvm-svn: 37954 | ||||
| * | Preserve various analysis info. | Devang Patel | 2007-07-06 | 1 | -19/+88 |
| | | | | | llvm-svn: 37953 | ||||
| * | Add SplitEdge and SplitBlock utility routines. | Devang Patel | 2007-07-06 | 1 | -0/+61 |
| | | | | | llvm-svn: 37952 | ||||
| * | Be more aggressive in the heuristic. This mostly exposes more opportunities | Owen Anderson | 2007-07-06 | 1 | -8/+16 |
| | | | | | | | for the GVN part of GVNPRE to apply. llvm-svn: 37951 | ||||
| * | Achieve what the incorrect test was trying to do by simply requiring that all | Owen Anderson | 2007-07-06 | 1 | -6/+1 |
| | | | | | | | critical edges be split before we begin. llvm-svn: 37949 | ||||
| * | Remove an incorrect check. | Owen Anderson | 2007-07-06 | 1 | -5/+0 |
| | | | | | llvm-svn: 37948 | ||||
| * | Correct a typo. | Zhou Sheng | 2007-07-06 | 1 | -1/+1 |
| | | | | | llvm-svn: 37936 | ||||
| * | Fix a bunch of issues found in a testcase from 400.perlbench. | Owen Anderson | 2007-07-05 | 1 | -16/+19 |
| | | | | | llvm-svn: 37929 | ||||
| * | Break "variable canonicalization" out of InequalityGraph and into its own class | Nick Lewycky | 2007-07-05 | 1 | -269/+287 |
| | | | | | | | "ValueNumbering". llvm-svn: 37881 | ||||
| * | Fix another bug, this time in PREing select instructions. | Owen Anderson | 2007-07-04 | 1 | -2/+1 |
| | | | | | llvm-svn: 37878 | ||||
| * | Fix a typo that was killing GVNPRE of select instructions. | Owen Anderson | 2007-07-04 | 1 | -1/+1 |
| | | | | | llvm-svn: 37871 | ||||
| * | Fix an error in phi translation of GEPs that was causing failures. | Owen Anderson | 2007-07-04 | 1 | -1/+1 |
| | | | | | llvm-svn: 37868 | ||||
| * | Add support for performing GVNPRE on GEP instructions. | Owen Anderson | 2007-07-03 | 1 | -5/+162 |
| | | | | | llvm-svn: 37862 | ||||
| * | Add functionality to value number GEP instructions. This also provides the ↵ | Owen Anderson | 2007-07-03 | 1 | -2/+32 |
| | | | | | | | | | infrastructure that will be used for function calls. NOTE: This does not yet do any transformation of GEPs or function calls. llvm-svn: 37860 | ||||
| * | Make the unary operator case a bit faster, since casts are the only kind of ↵ | Owen Anderson | 2007-07-03 | 1 | -10/+4 |
| | | | | | | | unary operation. llvm-svn: 37857 | ||||
| * | Add support for performing GVNPRE on cast instructions, and add a testcase ↵ | Owen Anderson | 2007-07-03 | 1 | -18/+116 |
| | | | | | | | for this. llvm-svn: 37856 | ||||
| * | Preserve DominanceFrontier. | Devang Patel | 2007-06-29 | 1 | -5/+29 |
| | | | | | llvm-svn: 37820 | ||||
| * | Fix reference to iterator invalidated by an erase operation. Uncovered | David Greene | 2007-06-29 | 1 | -3/+4 |
| | | | | | | | by _GLIBCXX_DEBUG. llvm-svn: 37796 | ||||
| * | Do not filter loop if candidate branch is in loop header. | Devang Patel | 2007-06-29 | 1 | -2/+0 |
| | | | | | llvm-svn: 37792 | ||||
| * | Add support for value numbering (but not actually optimizing) cast instructions. | Owen Anderson | 2007-06-29 | 1 | -1/+65 |
| | | | | | llvm-svn: 37789 | ||||
| * | Add a type field to expressions in preparation for performing GVNPRE on casts. | Owen Anderson | 2007-06-29 | 1 | -0/+12 |
| | | | | | llvm-svn: 37788 | ||||
| * | Add support for performing GVNPRE on select instructions. This fixes ↵ | Owen Anderson | 2007-06-28 | 1 | -13/+57 |
| | | | | | | | test/Transforms/GVNPRE/select.ll. llvm-svn: 37783 | ||||
| * | - Undo previous check and allow loop switch for condtion that is not inside | Devang Patel | 2007-06-28 | 1 | -8/+7 |
| | | | | | | | | | loop. - Avoid loop unswich for loop header branch. - While cloning dominators fix typo and handle self dominating blocks. llvm-svn: 37772 | ||||
| * | Update LoopUnswitch pass to preserve DomiantorTree. | Devang Patel | 2007-06-28 | 1 | -32/+55 |
| | | | | | llvm-svn: 37771 | ||||
| * | If a condition is not inside a loop then the condition is suitable | Devang Patel | 2007-06-28 | 1 | -0/+7 |
| | | | | | | | to loop unswitch candidate for the loop. llvm-svn: 37770 | ||||
| * | Make many sets a much more reasonable size. This decreases the time to optimize | Owen Anderson | 2007-06-28 | 1 | -65/+65 |
| | | | | | | | Anton's testcase from 35.5s to 34.7s. llvm-svn: 37769 | ||||
| * | Use cached information that has already been computed to make clean() ↵ | Owen Anderson | 2007-06-27 | 1 | -52/+31 |
| | | | | | | | simpler and faster. This is a small speedup on most cases. llvm-svn: 37761 | ||||
| * | Fold a lot of code into two cases: binary instructions and ternary instructions. | Owen Anderson | 2007-06-27 | 1 | -269/+62 |
| | | | | | | | This saves many lines of code duplication. No functionality change. llvm-svn: 37759 | ||||
| * | Fix a bug. | Zhou Sheng | 2007-06-27 | 1 | -1/+4 |
| | | | | | llvm-svn: 37751 | ||||
| * | Add support for performing GVNPRE on the three vector-specific operations. | Owen Anderson | 2007-06-27 | 1 | -20/+436 |
| | | | | | llvm-svn: 37745 | ||||
| * | 1. Correct some comments and clean up some dead code. | Owen Anderson | 2007-06-26 | 1 | -21/+26 |
| | | | | | | | | 2. When calculating ANTIC_IN, only iterate the changed blocks. For most average inputs this is a small speedup, but for cases with unusual CFGs, this can be a significant win. llvm-svn: 37742 | ||||
| * | fix Transforms/Inline/2007-06-25-WeakInline.ll by not inlining functions | Chris Lattner | 2007-06-25 | 1 | -4/+8 |
| | | | | | | | with weak linkage. llvm-svn: 37723 | ||||
| * | Use the built-in postorder iterators rather than computing a postorder walk ↵ | Owen Anderson | 2007-06-25 | 1 | -35/+3 |
| | | | | | | | by hand. llvm-svn: 37721 | ||||
| * | 1) Fix an issue with non-deterministic iteration order in phi_translate | Owen Anderson | 2007-06-25 | 1 | -111/+86 |
| | | | | | | | | | | | | 2) Remove some maximal-set computing code that is no longer used. 3) Use a post-order CFG traversal to compute ANTIC_IN instead of a postdom traversal. This causes the ANTIC_IN calculation to converge much faster. Thanks to Daniel Berlin for suggesting this. With this patch, the time to optimize 403.gcc decreased from 17.5s to 7.5s, and Anton's huge testcase decreased from 62 minutes to 38 seconds. llvm-svn: 37714 | ||||
| * | Fix value ranges. | Nick Lewycky | 2007-06-24 | 1 | -1/+1 |
| | | | | | llvm-svn: 37713 | ||||
| * | Fix a silly mistake that was causing failures. | Owen Anderson | 2007-06-24 | 1 | -2/+2 |
| | | | | | llvm-svn: 37712 | ||||
| * | Remove tabs. | Nick Lewycky | 2007-06-24 | 1 | -2/+2 |
| | | | | | llvm-svn: 37710 | ||||
| * | Remove use of ETForest. Also cleaned up issues around unreachable basic | Nick Lewycky | 2007-06-24 | 1 | -156/+326 |
| | | | | | | | blocks, and optimizing within one basic block. llvm-svn: 37709 | ||||
| * | Rework topo_sort so eliminate some behavior that scaled terribly. This ↵ | Owen Anderson | 2007-06-22 | 1 | -57/+40 |
| | | | | | | | | | reduces the time to optimize 403.gcc from 18.2s to 17.5s, and has an even larger effect on larger testcases. llvm-svn: 37708 | ||||
| * | Perform fewer set insertions while calculating ANTIC_IN. This reduces the ↵ | Owen Anderson | 2007-06-22 | 1 | -40/+31 |
| | | | | | | | amount of time to optimize 403.gcc from 21.9s to 18.2s. llvm-svn: 37707 | ||||
| * | Remove some code that I was using for collecting performance information ↵ | Owen Anderson | 2007-06-22 | 1 | -18/+18 |
| | | | | | | | that should not have been committed. llvm-svn: 37706 | ||||
| * | Avoid excessive calls to find_leader when calculating AVAIL_OUT. This ↵ | Owen Anderson | 2007-06-22 | 1 | -30/+76 |
| | | | | | | | reduces the time to optimize 403.gcc from 23.5s to 21.9s. llvm-svn: 37702 | ||||

