Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Clean whitespaces. | Nadav Rotem | 2012-07-24 | 1 | -8/+8 |
| | | | | llvm-svn: 160668 | ||||
* | The landingpad instruction isn't dead simply because it's value isn't used. | Bill Wendling | 2011-08-19 | 1 | -1/+1 |
| | | | | llvm-svn: 138102 | ||||
* | Get rid of static constructors for pass registration. Instead, every pass ↵ | Owen Anderson | 2010-10-19 | 1 | -1/+3 |
| | | | | | | | | | | | | | | | | | exposes an initializeMyPassFunction(), which must be called in the pass's constructor. This function uses static dependency declarations to recursively initialize the pass's dependencies. Clients that only create passes through the createFooPass() APIs will require no changes. Clients that want to use the CommandLine options for passes will need to manually call the appropriate initialization functions in PassInitialization.h before parsing commandline arguments. I have tested this with all standard configurations of clang and llvm-gcc on Darwin. It is possible that there are problems with the static dependencies that will only be visible with non-standard options. If you encounter any crash in pass registration/creation, please send the testcase to me directly. llvm-svn: 116820 | ||||
* | Now with fewer extraneous semicolons! | Owen Anderson | 2010-10-07 | 1 | -1/+1 |
| | | | | llvm-svn: 115996 | ||||
* | Reapply r110396, with fixes to appease the Linux buildbot gods. | Owen Anderson | 2010-08-06 | 1 | -1/+1 |
| | | | | llvm-svn: 110460 | ||||
* | Revert r110396 to fix buildbots. | Owen Anderson | 2010-08-06 | 1 | -1/+1 |
| | | | | llvm-svn: 110410 | ||||
* | Don't use PassInfo* as a type identifier for passes. Instead, use the ↵ | Owen Anderson | 2010-08-05 | 1 | -1/+1 |
| | | | | | | | | address of the static ID member as the sole unique type identifier. Clean up APIs related to this change. llvm-svn: 110396 | ||||
* | Fix batch of converting RegisterPass<> to INTIALIZE_PASS(). | Owen Anderson | 2010-07-21 | 1 | -1/+1 |
| | | | | llvm-svn: 109045 | ||||
* | Use pre-increment instead of post-increment when the result is not used. | Dan Gohman | 2010-06-22 | 1 | -1/+1 |
| | | | | llvm-svn: 106542 | ||||
* | Use do+while instead of while for loops which obviously have a | Dan Gohman | 2010-01-05 | 1 | -2/+1 |
| | | | | | | non-zero trip count. Use SmallVector's pop_back_val(). llvm-svn: 92734 | ||||
* | eliminate VISIBILITY_HIDDEN from Transforms/Scalar. PR4861 | Chris Lattner | 2009-09-02 | 1 | -3/+1 |
| | | | | llvm-svn: 80766 | ||||
* | Allow readonly functions to unwind exceptions. Teach | Duncan Sands | 2009-05-06 | 1 | -1/+1 |
| | | | | | | | | the optimizers about this. For example, a readonly function with no uses cannot be removed unless it is also marked nounwind. llvm-svn: 71071 | ||||
* | Re-commit 65975 and a fix for the problem that | Dale Johannesen | 2009-03-04 | 1 | -0/+2 |
| | | | | | | | was causing llvm-gcc to fail to build. I've verified it bootstraps now; good enough for me. llvm-svn: 66073 | ||||
* | Let instcombiner remove redundant dbg intrinsics. | Devang Patel | 2008-11-19 | 1 | -7/+1 |
| | | | | llvm-svn: 59658 | ||||
* | Cleanup debug info. assocated with deleted instructions. | Devang Patel | 2008-11-11 | 1 | -2/+7 |
| | | | | llvm-svn: 59012 | ||||
* | Tidy up several unbeseeming casts from pointer to intptr_t. | Dan Gohman | 2008-09-04 | 1 | -1/+1 |
| | | | | llvm-svn: 55779 | ||||
* | Remove the ability for ADCE to remove unreachable blocks in loop nests, ↵ | Owen Anderson | 2008-07-03 | 1 | -38/+0 |
| | | | | | | because, as Eli pointed out, SimplifyCFG already does this. llvm-svn: 53104 | ||||
* | Use df_ext_iterator to capture the reachable set without allocating an extra ↵ | Owen Anderson | 2008-07-02 | 1 | -17/+14 |
| | | | | | | | | | set. Also, move large sets and vectors out of instance variables and onto the stack, and give them more reasonable sizes. llvm-svn: 53044 | ||||
* | Add support to ADCE for pruning unreachable blocks. This addresses the final | Owen Anderson | 2008-07-02 | 1 | -1/+43 |
| | | | | | | part of PR2509. llvm-svn: 53038 | ||||
* | Use DenseSet rather than SmallPtrSet for the alive set. Using SmallPtrSet | Owen Anderson | 2008-07-02 | 1 | -2/+2 |
| | | | | | | with a huge "size" parameter is actually quite inefficient. llvm-svn: 53034 | ||||
* | At Chris' suggestion, move the liveness and worklist datastructures into | Owen Anderson | 2008-06-23 | 1 | -7/+11 |
| | | | | | | | instance variables so they can be allocated just once, and reuse the worklist as the dead list as well. llvm-svn: 52618 | ||||
* | Add a newline at the end of this file. | Duncan Sands | 2008-05-29 | 1 | -1/+1 |
| | | | | llvm-svn: 51680 | ||||
* | Replace the old ADCE implementation with a new one that more simply solves | Owen Anderson | 2008-05-29 | 1 | -457/+62 |
| | | | | | | | | | the one case that ADCE catches that normal DCE doesn't: non-induction variable loop computations. This implementation handles this problem without using postdominators. llvm-svn: 51668 | ||||
* | Remove ADCE's ability to delete loops. This ability is now implemented in a | Owen Anderson | 2008-05-16 | 1 | -4/+21 |
| | | | | | | safer manner by loop deletion. llvm-svn: 51182 | ||||
* | Clean up the use of static and anonymous namespaces. This turned up | Dan Gohman | 2008-05-13 | 1 | -3/+3 |
| | | | | | | | several things that were neither in an anonymous namespace nor static but not intended to be global. llvm-svn: 51017 | ||||
* | API changes for class Use size reduction, wave 1. | Gabor Greif | 2008-04-06 | 1 | -3/+3 |
| | | | | | | | | Specifically, introduction of XXX::Create methods for Users that have a potentially variable number of Uses. llvm-svn: 49277 | ||||
* | Remove attribution from file headers, per discussion on llvmdev. | Chris Lattner | 2007-12-29 | 1 | -2/+2 |
| | | | | llvm-svn: 45418 | ||||
* | Integrate the readonly/readnone logic more deeply | Duncan Sands | 2007-12-01 | 1 | -2/+1 |
| | | | | | | | | | | | | | | | into alias analysis. This meant updating the API which now has versions of the getModRefBehavior, doesNotAccessMemory and onlyReadsMemory methods which take a callsite parameter. These should be used unless the callsite is not known, since in general they can do a better job than the versions that take a function. Also, users should no longer call the version of getModRefBehavior that takes both a function and a callsite. To reduce the chance of misuse it is now protected. llvm-svn: 44487 | ||||
* | Readonly/readnone functions are allowed to throw | Duncan Sands | 2007-11-22 | 1 | -27/+1 |
| | | | | | | | exceptions, so don't turn invokes of them into calls. llvm-svn: 44278 | ||||
* | New CallInst interface to address GLIBCXX_DEBUG errors caused by | David Greene | 2007-08-01 | 1 | -1/+1 |
| | | | | | | | | indexing an empty std::vector. Updates to all clients. llvm-svn: 40660 | ||||
* | s/llvm::DominatorTreeBase::DomTreeNode/llvm::DomTreeNode/g | Devang Patel | 2007-06-04 | 1 | -2/+2 |
| | | | | llvm-svn: 37407 | ||||
* | s/DominatorTreeBase::Node/DominatorTreeBase:DomTreeNode/g | Devang Patel | 2007-06-03 | 1 | -2/+2 |
| | | | | llvm-svn: 37403 | ||||
* | Fix typo in comment. | Nick Lewycky | 2007-05-06 | 1 | -1/+1 |
| | | | | llvm-svn: 36873 | ||||
* | Drop 'const' | Devang Patel | 2007-05-03 | 1 | -2/+2 |
| | | | | llvm-svn: 36662 | ||||
* | Use 'static const char' instead of 'static const int'. | Devang Patel | 2007-05-02 | 1 | -2/+2 |
| | | | | | | | Due to darwin gcc bug, one version of darwin linker coalesces static const int, which defauts PassID based pass identification. llvm-svn: 36652 | ||||
* | Do not use typeinfo to identify pass in pass manager. | Devang Patel | 2007-05-01 | 1 | -0/+4 |
| | | | | llvm-svn: 36632 | ||||
* | Revert changes that caused breakage. | Owen Anderson | 2007-04-18 | 1 | -15/+19 |
| | | | | llvm-svn: 36255 | ||||
* | Use ETForest instead of DominatorTree. | Owen Anderson | 2007-04-18 | 1 | -19/+15 |
| | | | | llvm-svn: 36249 | ||||
* | Eliminate use of ctors that take vectors. | Chris Lattner | 2007-02-13 | 1 | -2/+3 |
| | | | | llvm-svn: 34219 | ||||
* | Simplify code by using value::takename | Chris Lattner | 2007-02-11 | 1 | -2/+2 |
| | | | | llvm-svn: 34176 | ||||
* | Apply the VISIBILITY_HIDDEN field to the remaining anonymous classes in | Reid Spencer | 2007-02-05 | 1 | -1/+2 |
| | | | | | | | the Transforms library. This reduces debug library size by 132 KB, debug binary size by 376 KB, and reduces link time for llvm tools slightly. llvm-svn: 33939 | ||||
* | Switch over Transforms/Scalar to use the STATISTIC macro. For each statistic | Chris Lattner | 2006-12-19 | 1 | -4/+5 |
| | | | | | | | converted, we lose a static initializer. This also allows GCC to emit warnings about unused statistics. llvm-svn: 32690 | ||||
* | Detemplatize the Statistic class. The only type it is instantiated with | Chris Lattner | 2006-12-06 | 1 | -3/+3 |
| | | | | | | is 'unsigned'. llvm-svn: 32279 | ||||
* | Removed #include <iostream> and replaced with llvm_* streams. | Bill Wendling | 2006-11-26 | 1 | -9/+8 |
| | | | | llvm-svn: 31923 | ||||
* | eliminate RegisterOpt. It does the same thing as RegisterPass. | Chris Lattner | 2006-08-27 | 1 | -1/+1 |
| | | | | llvm-svn: 29925 | ||||
* | Remove unneeded hook. Patch by Anton K. Thanks! | Chris Lattner | 2006-06-02 | 1 | -2/+0 |
| | | | | llvm-svn: 28664 | ||||
* | Silence a -pedantic warning. | Chris Lattner | 2006-06-01 | 1 | -1/+1 |
| | | | | llvm-svn: 28632 | ||||
* | Make iostream #inclusion explicit | Chris Lattner | 2006-01-22 | 1 | -0/+1 |
| | | | | llvm-svn: 25514 | ||||
* | Make sure that anything using the ADCE pass pulls in the UnifyFunctionExitNodes | Chris Lattner | 2005-10-24 | 1 | -0/+2 |
| | | | | | | code llvm-svn: 23931 | ||||
* | preserve calling conventions when hacking on code | Chris Lattner | 2005-05-14 | 1 | -1/+2 |
| | | | | llvm-svn: 22024 |