aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/CodeGen/MachineLoopInfo.cpp
AgeCommit message (Collapse)AuthorFilesLines
2010-10-12Begin adding static dependence information to passes, which will allow us toOwen Anderson1-1/+4
perform initialization without static constructors AND without explicit initialization by the client. For the moment, passes are required to initialize both their (potential) dependencies and any passes they preserve. I hope to be able to relax the latter requirement in the future. llvm-svn: 116334
2010-10-07Now with fewer extraneous semicolons!Owen Anderson1-1/+1
llvm-svn: 115996
2010-08-23Now that PassInfo and Pass::ID have been separated, move the rest of the ↵Owen Anderson1-2/+2
passes over to the new registration API. llvm-svn: 111815
2010-08-06Reapply r110396, with fixes to appease the Linux buildbot gods.Owen Anderson1-1/+1
llvm-svn: 110460
2010-08-06Revert r110396 to fix buildbots.Owen Anderson1-1/+1
llvm-svn: 110410
2010-08-05Don't use PassInfo* as a type identifier for passes. Instead, use the ↵Owen Anderson1-1/+1
address of the static ID member as the sole unique type identifier. Clean up APIs related to this change. llvm-svn: 110396
2010-01-05Restore dump() methods to Loop and MachineLoop.Dan Gohman1-0/+5
llvm-svn: 92772
2009-12-16Explicit template instantiations must happen in the template's immediatelyJohn McCall1-0/+2
enclosing namespace. Caught by clang++. llvm-svn: 91480
2009-12-03improve portability to avoid conflicting with std::next in c++'0x.Chris Lattner1-3/+3
Patch by Howard Hinnant! llvm-svn: 90365
2009-10-20Add getTopBlock and getBottomBlock member functions to MachineLoopInfo.Dan Gohman1-0/+28
llvm-svn: 84596
2009-07-31Reapply r77654 with a fix: MachineFunctionPass's getAnalysisUsageDan Gohman1-0/+1
shouldn't do AU.setPreservesCFG(), because even though CodeGen passes don't modify the LLVM IR CFG, they may modify the MachineFunction CFG, and passes like MachineLoop are registered with isCFGOnly set to true. llvm-svn: 77691
2009-07-31Revert r77654, it appears to be causing llvm-gcc bootstrap failures, and manyDaniel Dunbar1-1/+0
failures when building assorted projects with clang. --- Reverse-merging r77654 into '.': U include/llvm/CodeGen/Passes.h U include/llvm/CodeGen/MachineFunctionPass.h U include/llvm/CodeGen/MachineFunction.h U include/llvm/CodeGen/LazyLiveness.h U include/llvm/CodeGen/SelectionDAGISel.h D include/llvm/CodeGen/MachineFunctionAnalysis.h U include/llvm/Function.h U lib/Target/CellSPU/SPUISelDAGToDAG.cpp U lib/Target/PowerPC/PPCISelDAGToDAG.cpp U lib/CodeGen/LLVMTargetMachine.cpp U lib/CodeGen/MachineVerifier.cpp U lib/CodeGen/MachineFunction.cpp U lib/CodeGen/PrologEpilogInserter.cpp U lib/CodeGen/MachineLoopInfo.cpp U lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp D lib/CodeGen/MachineFunctionAnalysis.cpp D lib/CodeGen/MachineFunctionPass.cpp U lib/CodeGen/LiveVariables.cpp llvm-svn: 77661
2009-07-31Manage MachineFunctions with an analysis Pass instead of the AnnotableDan Gohman1-0/+1
mechanism. To support this, make MachineFunctionPass a little more complete. llvm-svn: 77654
2009-07-13Make Loop and MachineLoop be subclasses of LoopBase, rather than typedefs,Dan Gohman1-2/+6
using the Curiously Recurring Template Pattern with LoopBase. This will help further refactoring, and future functionality for Loop. Also, Headers can now foward-declare Loop, instead of pulling in LoopInfo.h or doing tricks. llvm-svn: 75519
2009-06-27Eliminate a layer of indirection in LoopInfo and MachineLoopInfo.Dan Gohman1-1/+1
llvm-svn: 74394
2008-05-13Change class' public PassInfo variables to by initialized with theDan Gohman1-1/+1
address of the PassInfo directly instead of calling getPassInfo. This eliminates a bunch of dynamic initializations of static data. Also, fold RegisterPassBase into PassInfo, make a bunch of its data members const, and rearrange some code to initialize data members in constructors instead of using setter member functions. llvm-svn: 51022
2008-05-13Clean up the use of static and anonymous namespaces. This turned upDan Gohman1-4/+2
several things that were neither in an anonymous namespace nor static but not intended to be global. llvm-svn: 51017
2008-05-06Remove uses of llvm/System/IncludeFile.h that are no longer needed.Dan Gohman1-3/+0
llvm-svn: 50695
2008-01-05make this build with newer gcc'sChris Lattner1-2/+1
llvm-svn: 45637
2008-01-04Don't recalculate the loop info and loop dominators analyses if they'reBill Wendling1-3/+8
preserved. llvm-svn: 45596
2007-12-29Remove attribution from file headers, per discussion on llvmdev.Chris Lattner1-2/+2
llvm-svn: 45418
2007-11-28Add missing newlines at EOF.Duncan Sands1-1/+1
llvm-svn: 44399
2007-11-27Add MachineLoopInfo. This is not yet tested.Owen Anderson1-0/+41
llvm-svn: 44384