summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Transforms/Scalar/LoopRotation.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Update various Loop optimization passes to cope with the possibility thatDan Gohman2009-11-051-4/+5
| | | | | | LoopSimplify form may not be available. llvm-svn: 86175
* Call getAnalysis<LoopInfo> the normal way, instead of asking passed-inDan Gohman2009-11-051-2/+2
| | | | | | LoopPassManager for it. llvm-svn: 86163
* Rename forgetLoopBackedgeTakenCount to forgetLoop, because itDan Gohman2009-10-311-1/+1
| | | | | | clears out more information than just the stored backedge taken count. llvm-svn: 85664
* Fix a typo in a comment.Dan Gohman2009-10-261-1/+1
| | | | llvm-svn: 85120
* Rename isLoopExit to isLoopExiting, for consistency with the wordingDan Gohman2009-10-241-1/+1
| | | | | | | | used elsewhere - an exit block is a block outside the loop branched to from within the loop. An exiting block is a block inside the loop that branches out. llvm-svn: 85019
* Rewrite LoopRotation's SSA updating code using SSAUpdater.Dan Gohman2009-10-241-226/+70
| | | | llvm-svn: 85016
* Tell ScalarEvolution to forget everything it knows about a loop beforeDan Gohman2009-09-271-0/+5
| | | | | | rotating the loop, since loop rotation is a very significant change. llvm-svn: 82901
* Instruction::clone does not need to take an LLVMContext&. Remove that andNick Lewycky2009-09-271-1/+1
| | | | | | update all the callers. llvm-svn: 82889
* Fix SplitCriticalEdge to properly update LCSSA form when splitting aDan Gohman2009-09-091-16/+1
| | | | | | | | | | loop exit edge -- new PHIs may be needed not only for the additional splits that are made to preserve LoopSimplify form, but also for the original split. Factor out the code that inserts new PHIs so that it can be used for both. Remove LoopRotation.cpp's code for manually updating LCSSA form, as it is now redundant. This fixes PR4934. llvm-svn: 81363
* eliminate VISIBILITY_HIDDEN from Transforms/Scalar. PR4861Chris Lattner2009-09-021-3/+2
| | | | llvm-svn: 80766
* Push LLVMContexts through the IntegerType APIs.Owen Anderson2009-08-131-1/+2
| | | | llvm-svn: 78948
* Fix dom frontier update. This fixes PR4667.Devang Patel2009-08-071-19/+23
| | | | | | Patch by Jakub Staszak. llvm-svn: 78388
* Get rid of the Pass+Context magic.Owen Anderson2009-07-221-1/+1
| | | | llvm-svn: 76702
* This started as a small change, I swear. Unfortunately, lots of things call ↵Owen Anderson2009-07-091-1/+1
| | | | | | the [I|F]CmpInst constructors. Who knew!? llvm-svn: 75200
* More minor code simplifications.Dan Gohman2009-06-271-14/+9
| | | | llvm-svn: 74395
* Change this code to a form about which VC++ reportedly isn't unhappy.Dan Gohman2009-06-261-1/+2
| | | | llvm-svn: 74243
* Minor code simplification.Dan Gohman2009-06-261-7/+3
| | | | llvm-svn: 74240
* Reword a few comments.Dan Gohman2009-06-251-17/+17
| | | | llvm-svn: 74146
* Do not count DbgInfoIntrinsic while estimating loop header size.Devang Patel2009-03-061-2/+14
| | | | llvm-svn: 66245
* Rename getAnalysisToUpdate to getAnalysisIfAvailable.Duncan Sands2009-01-281-3/+3
| | | | llvm-svn: 63198
* Fix PR3408 by making a non-obvious assumption very obvious, and Chris Lattner2009-01-261-2/+6
| | | | | | handling the flaw inherent in that assumption. :) llvm-svn: 62984
* More cleanups and simplifications, no functionality change.Chris Lattner2009-01-261-47/+23
| | | | llvm-svn: 62983
* tidy assertsChris Lattner2009-01-261-18/+17
| | | | llvm-svn: 62982
* Change create*Pass factory functions to return Pass* instead ofDaniel Dunbar2008-10-221-1/+1
| | | | | | | | | | | LoopPass*. - Although less precise, this means they can be used in clients without RTTI (who would otherwise need to include LoopPass.h, which eventually includes things using dynamic_cast). This was the simplest solution that presented itself, but I am happy to use a better one if available. llvm-svn: 58010
* Tidy up several unbeseeming casts from pointer to intptr_t.Dan Gohman2008-09-041-1/+1
| | | | llvm-svn: 55779
* Enable first-class aggregates support.Dan Gohman2008-07-231-29/+5
| | | | | | | | | | | | Remove the GetResultInst instruction. It is still accepted in LLVM assembly and bitcode, where it is now auto-upgraded to ExtractValueInst. Also, remove support for return instructions with multiple values. These are auto-upgraded to use InsertValueInst instructions. The IRBuilder still accepts multiple-value returns, and auto-upgrades them to InsertValueInst instructions. llvm-svn: 53941
* Avoid using BasicBlock::getInstList directly in a few places.Dan Gohman2008-06-191-9/+10
| | | | llvm-svn: 52497
* Tidy up BasicBlock::getFirstNonPHI, and change a bunch of places toDan Gohman2008-05-231-3/+1
| | | | | | use it instead of duplicating its functionality. llvm-svn: 51499
* Fix a bunch of 80col violations that arose from the Create API change. Tweak ↵Gabor Greif2008-05-151-1/+2
| | | | | | makefile targets to find these better. llvm-svn: 51143
* Clean up the use of static and anonymous namespaces. This turned upDan Gohman2008-05-131-3/+3
| | | | | | | several things that were neither in an anonymous namespace nor static but not intended to be global. llvm-svn: 51017
* add a FIXME so we remember to eventually remove this code.Chris Lattner2008-05-021-5/+6
| | | | llvm-svn: 50582
* Don't try to create PHIs of struct types. FalloutDale Johannesen2008-05-011-8/+31
| | | | | | from x86-64 calling convention work. llvm-svn: 50545
* Revert r49614. As Dan pointed out, some of these aren't correct.Owen Anderson2008-04-141-1/+1
| | | | llvm-svn: 49657
* Replace calls of the form V1->setName(V2->getName()) with V1->takeName(V2), Owen Anderson2008-04-131-1/+1
| | | | | | which is significantly more efficient. llvm-svn: 49614
* API changes for class Use size reduction, wave 1.Gabor Greif2008-04-061-7/+7
| | | | | | | | Specifically, introduction of XXX::Create methods for Users that have a potentially variable number of Uses. llvm-svn: 49277
* Fix PR2028Devang Patel2008-02-151-2/+2
| | | | llvm-svn: 47150
* Remove attribution from file headers, per discussion on llvmdev.Chris Lattner2007-12-291-2/+2
| | | | llvm-svn: 45418
* Make LoopInfoBase more generic, in preparation for having MachineLoopInfo. ↵Owen Anderson2007-11-271-1/+1
| | | | | | This involves a small interface change. llvm-svn: 44348
* typoNick Lewycky2007-11-211-1/+1
| | | | llvm-svn: 44262
* Use SmallVector instead of std::vector.Devang Patel2007-08-211-1/+1
| | | | llvm-svn: 41207
* Loop Rotation pass preserves dominator tree and frontier.Devang Patel2007-07-301-0/+2
| | | | llvm-svn: 40603
* Disable claims to preserve analysis until open issues are resolved.Devang Patel2007-07-131-7/+0
| | | | llvm-svn: 39834
* Preserve analysis info.Devang Patel2007-07-111-20/+136
| | | | llvm-svn: 39767
* Back out Devang's fix for PR1320 because it causes PR1542.Nick Lewycky2007-07-071-93/+19
| | | | llvm-svn: 37966
* Request DominanceFrontiner in advance.Devang Patel2007-07-061-0/+5
| | | | llvm-svn: 37954
* Preserve various analysis info.Devang Patel2007-07-061-19/+88
| | | | llvm-svn: 37953
* Fix typos.Dan Gohman2007-05-111-2/+2
| | | | llvm-svn: 36994
* Drop 'const'Devang Patel2007-05-031-2/+2
| | | | llvm-svn: 36662
* Use 'static const char' instead of 'static const int'.Devang Patel2007-05-021-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 Patel2007-05-011-1/+4
| | | | llvm-svn: 36632
OpenPOWER on IntegriCloud