| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | adjust a couple xforms to work with null bb's in BlockAddress. | Chris Lattner | 2009-10-31 | 1 | -2/+7 |
| | | | | | llvm-svn: 85680 | ||||
| * | Revert r85667. LoopUnroll currently can't call utility functions which | Dan Gohman | 2009-10-31 | 2 | -24/+94 |
| | | | | | | | | auto-update the DominatorTree because it doesn't keep the DominatorTree current while it works. llvm-svn: 85670 | ||||
| * | Remove redundant code. | Dan Gohman | 2009-10-31 | 1 | -3/+0 |
| | | | | | llvm-svn: 85668 | ||||
| * | Merge the enhancements from LoopUnroll's FoldBlockIntoPredecessor into | Dan Gohman | 2009-10-31 | 2 | -94/+24 |
| | | | | | | | | MergeBlockIntoPredecessor. This makes SimplifyCFG slightly more aggressive, and makes it unnecessary for LoopUnroll to have its own copy of this code. llvm-svn: 85667 | ||||
| * | Simplify this code. | Dan Gohman | 2009-10-31 | 1 | -2/+2 |
| | | | | | llvm-svn: 85662 | ||||
| * | Update CMakeLists for recent renames. | Dan Gohman | 2009-10-31 | 1 | -1/+1 |
| | | | | | llvm-svn: 85660 | ||||
| * | Rename UnrollLoop.cpp to LoopUnroll.cpp, and LoopUnroll.cpp to | Dan Gohman | 2009-10-31 | 1 | -0/+0 |
| | | | | | | | | LoopUnrollPass.cpp, for consistency with other passes which are similarly split. llvm-svn: 85659 | ||||
| * | Add a comment about a missed opportunity. | Dan Gohman | 2009-10-30 | 1 | -0/+5 |
| | | | | | llvm-svn: 85635 | ||||
| * | Teach SimplifyCFG how to eliminate duplicate PHI nodes within a block. | Dan Gohman | 2009-10-30 | 1 | -0/+61 |
| | | | | | | | | This reduces codesize on a variety of codes by 1-2% on x86-64. It also helps clean up after SSAUpdater. llvm-svn: 85626 | ||||
| * | teach various passes about blockaddress. We no longer | Chris Lattner | 2009-10-29 | 1 | -2/+2 |
| | | | | | | | crash on any clang tests. llvm-svn: 85465 | ||||
| * | teach ValueMapper about BlockAddress', making bugpoint a lot more useful. | Chris Lattner | 2009-10-29 | 1 | -7/+10 |
| | | | | | llvm-svn: 85458 | ||||
| * | unindent massive blocks, no functionality change. | Chris Lattner | 2009-10-29 | 1 | -69/+75 |
| | | | | | llvm-svn: 85457 | ||||
| * | Factor out redundancy from clone() implementations. | Devang Patel | 2009-10-27 | 1 | -1/+1 |
| | | | | | llvm-svn: 85327 | ||||
| * | Rename MallocFreeHelper as MemoryBuiltins | Victor Hernandez | 2009-10-27 | 1 | -1/+1 |
| | | | | | llvm-svn: 85286 | ||||
| * | Fix a pretty serious misfeature of the inliner: if it inlines a function | Chris Lattner | 2009-10-27 | 1 | -0/+9 |
| | | | | | | | | | | | with multiple return values it inserts a PHI to merge them all together. However, if the return values are all the same, it ends up with a pointless PHI and this pointless PHI happens to really block SRoA from happening in at least a silly C++ example written by Doug, but probably others. This fixes rdar://7339069. llvm-svn: 85206 | ||||
| * | Rename MallocHelper as MallocFreeHelper, since it now also identifies calls ↵ | Victor Hernandez | 2009-10-26 | 1 | -1/+1 |
| | | | | | | | to free() llvm-svn: 85181 | ||||
| * | Remove FreeInst. | Victor Hernandez | 2009-10-26 | 6 | -123/+2 |
| | | | | | | | | Remove LowerAllocations pass. Update some more passes to treate free calls just like they were treating FreeInst. llvm-svn: 85176 | ||||
| * | Remove includes of Support/Compiler.h that are no longer needed after the | Nick Lewycky | 2009-10-25 | 9 | -9/+1 |
| | | | | | | | VISIBILITY_HIDDEN removal. llvm-svn: 85043 | ||||
| * | Remove VISIBILITY_HIDDEN from class/struct found inside anonymous namespaces. | Nick Lewycky | 2009-10-25 | 11 | -13/+13 |
| | | | | | | | | Chris claims we should never have visibility_hidden inside any .cpp file but that's still not true even after this commit. llvm-svn: 85042 | ||||
| * | MapValue doesn't needs its LLVMContext argument. | Dan Gohman | 2009-10-24 | 3 | -18/+13 |
| | | | | | llvm-svn: 85020 | ||||
| * | Auto-upgrade free instructions to calls to the builtin free function. | Victor Hernandez | 2009-10-24 | 2 | -6/+3 |
| | | | | | | | | Update all analysis passes and transforms to treat free calls just like FreeInst. Remove RaiseAllocations and all its tests since FreeInst no longer needs to be raised. llvm-svn: 84987 | ||||
| * | alternate fix for PR5258 which avoids worklist problems, with reduced testcase. | Chris Lattner | 2009-10-20 | 1 | -11/+6 |
| | | | | | llvm-svn: 84667 | ||||
| * | Fix PR5258, jump-threading creating invalid PHIs. | Torok Edwin | 2009-10-20 | 1 | -2/+10 |
| | | | | | | | | When an incoming value for a PHI is updated, we must also updated all other incoming values for the same BB to match, otherwise we create invalid PHIs. llvm-svn: 84638 | ||||
| * | Fix SplitBlockPredecessors' LoopInfo updating code to handle the case | Dan Gohman | 2009-10-19 | 1 | -8/+20 |
| | | | | | | | | | where a loop's header is being split and it has predecessors which are not contained by the most-nested loop which contains the loop. This fixes PR5235. llvm-svn: 84505 | ||||
| * | Change instnamer to name arguments "arg" instead of "tmp" for clarity, and | Dan Gohman | 2009-10-19 | 1 | -2/+2 |
| | | | | | | | to name basic blocks "bb" instead of "BB", for consistency. llvm-svn: 84502 | ||||
| * | Simplify some code (first hunk) and fix PR5208 (second hunk) by | Chris Lattner | 2009-10-17 | 1 | -8/+6 |
| | | | | | | | updating the callgraph when introducing a call. llvm-svn: 84310 | ||||
| * | Remove MallocInst from LLVM Instructions. | Victor Hernandez | 2009-10-17 | 1 | -29/+10 |
| | | | | | llvm-svn: 84299 | ||||
| * | Strip trailing white space. | Duncan Sands | 2009-10-16 | 1 | -33/+31 |
| | | | | | llvm-svn: 84256 | ||||
| * | Update CMake file. | Ted Kremenek | 2009-10-13 | 1 | -1/+0 |
| | | | | | llvm-svn: 84001 | ||||
| * | Commit the removal of this file, which is now moved to lib/Analysis. | Dan Gohman | 2009-10-13 | 1 | -337/+0 |
| | | | | | llvm-svn: 83999 | ||||
| * | Start refactoring the inline cost estimation code so that it can be used | Dan Gohman | 2009-10-13 | 1 | -71/+71 |
| | | | | | | | for purposes other than inlining. llvm-svn: 83997 | ||||
| * | change simplifycfg to not duplicate 'unwind' instructions. Hopefully | Chris Lattner | 2009-10-13 | 1 | -12/+5 |
| | | | | | | | | this will increase the likelihood of common code getting sunk towards the unwind. llvm-svn: 83996 | ||||
| * | rewrite LCSSA to use SSAUpdate, to only return true if it modifies | Chris Lattner | 2009-10-11 | 1 | -154/+130 |
| | | | | | | | the IR, and to implement the FIXME'd optimization. llvm-svn: 83748 | ||||
| * | clean up and simplify some code. Don't use setvector when things will be | Chris Lattner | 2009-10-11 | 1 | -28/+23 |
| | | | | | | | | inserted only once, just use vector. Don't compute ExitBlocks unless we need it, change std::sort to array_pod_sort. llvm-svn: 83747 | ||||
| * | add a simple helper method. | Chris Lattner | 2009-10-10 | 1 | -0/+6 |
| | | | | | llvm-svn: 83745 | ||||
| * | add ability for clients of SSAUpdater to find out about the | Chris Lattner | 2009-10-10 | 1 | -1/+9 |
| | | | | | | | PHI nodes inserted. llvm-svn: 83744 | ||||
| * | add the ability to get a rewritten value from the middle of a block, | Chris Lattner | 2009-10-10 | 1 | -3/+92 |
| | | | | | | | | not just at the end. Add a big comment explaining when this could be useful (which never happens for jump threading). llvm-svn: 83741 | ||||
| * | rename GetValueInBlock -> GetValueAtEndOfBlock to better reflect | Chris Lattner | 2009-10-10 | 1 | -11/+11 |
| | | | | | | | what it does. llvm-svn: 83740 | ||||
| * | use a typedef instead of spelling out an insane type. Yay for auto someday. | Chris Lattner | 2009-10-10 | 1 | -3/+3 |
| | | | | | llvm-svn: 83707 | ||||
| * | Implement an efficient and fully general SSA update mechanism that | Chris Lattner | 2009-10-10 | 2 | -0/+233 |
| | | | | | | | works on unstructured CFGs. This implements PR217, our oldest open PR. llvm-svn: 83705 | ||||
| * | random tidying | Chris Lattner | 2009-10-10 | 1 | -7/+5 |
| | | | | | llvm-svn: 83701 | ||||
| * | Use names instead of numbers for some of the magic | Dale Johannesen | 2009-10-09 | 1 | -6/+6 |
| | | | | | | | | constants used in inlining heuristics (especially those used in more than one file). No functional change. llvm-svn: 83675 | ||||
| * | Add FreeInst to the "is a call" check for Insts that are calls, but | Eric Christopher | 2009-10-07 | 1 | -2/+2 |
| | | | | | | | not intrinsics. llvm-svn: 83441 | ||||
| * | While we still have a MallocInst treat it as a call like any other | Eric Christopher | 2009-10-07 | 1 | -0/+4 |
| | | | | | | | | | | for inlining. When MallocInst goes away this code will be subsumed as part of calls and work just fine... llvm-svn: 83434 | ||||
| * | Introduce and use convenience methods for getting pointer types | Duncan Sands | 2009-10-06 | 3 | -6/+6 |
| | | | | | | | | where the element is of a basic builtin type. For example, to get an i8* use getInt8PtrTy. llvm-svn: 83379 | ||||
| * | Remove an unnnecessary LLVMContext argument in | Dan Gohman | 2009-10-05 | 1 | -1/+1 |
| | | | | | | | ConstantFoldLoadThroughGEPConstantExpr. llvm-svn: 83311 | ||||
| * | Do away with the strange use of BitVectors in SSI, and just use normal sets. ↵ | Owen Anderson | 2009-10-04 | 1 | -116/+90 |
| | | | | | | | This makes the code much more C++/LLVM-ish. llvm-svn: 83286 | ||||
| * | Fix a typo in the comment. | Owen Anderson | 2009-10-04 | 1 | -1/+1 |
| | | | | | llvm-svn: 83283 | ||||
| * | SSI needs to require DT and DF transitively, since it uses them outside of ↵ | Owen Anderson | 2009-10-04 | 1 | -3/+3 |
| | | | | | | | | | its runOnFunction. Similarly, it can be marked setPreservesAll, since it does no work in its runOnFunction. llvm-svn: 83282 | ||||
| * | Fix this code so that it doesn't try to iterate through a std::vector | Dan Gohman | 2009-09-30 | 1 | -3/+4 |
| | | | | | | | | while calling changeImmediateDominator, which removes elements from the vector. This fixes PR5097. llvm-svn: 83166 | ||||

