History log of /external/llvm/include/llvm/CodeGen/MachineLoopInfo.h
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
a65d6a686e6ad865c61aec70c5bdfb30bf6f5b22 19-Oct-2010 Owen Anderson <resistor@mac.com> Get rid of static constructors for pass registration. Instead, every pass 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.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116820 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/CodeGen/MachineLoopInfo.h
7569322765651f19eea0609fb082e6b267d5d2b5 06-Aug-2010 Owen Anderson <resistor@mac.com> Reapply r110396, with fixes to appease the Linux buildbot gods.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110460 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/CodeGen/MachineLoopInfo.h
619acdc63ab0a47d125dca0591285c8ac4c9ed20 06-Aug-2010 Owen Anderson <resistor@mac.com> Revert r110396 to fix buildbots.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110410 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/CodeGen/MachineLoopInfo.h
0e63653ab0d25d579ad99948db606d8723d271dd 06-Aug-2010 Owen Anderson <resistor@mac.com> Don't use PassInfo* as a type identifier for passes. Instead, use the address of the static
ID member as the sole unique type identifier. Clean up APIs related to this change.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110396 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/CodeGen/MachineLoopInfo.h
cd9f79d845c9ed3fb621a62ebdf4beaf090a43f4 22-Jun-2010 Dan Gohman <gohman@apple.com> Move PHIElimination's SplitCriticalEdge for MachineBasicBlocks out
into a utility routine, teach it how to update MachineLoopInfo, and
make use of it in MachineLICM to split critical edges on demand.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@106555 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/CodeGen/MachineLoopInfo.h
e1b383f0ef527eb1cd75e59155290969c12c53ef 05-Jan-2010 Dan Gohman <gohman@apple.com> Restore dump() methods to Loop and MachineLoop.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92772 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/CodeGen/MachineLoopInfo.h
7e3f3cec672df37935f6c651d1135657fdfe5cdd 20-Oct-2009 Dan Gohman <gohman@apple.com> Add getTopBlock and getBottomBlock member functions to MachineLoopInfo.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84596 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/CodeGen/MachineLoopInfo.h
62d0d31be23e51757d2877550864ded52e071a22 14-Jul-2009 Dan Gohman <gohman@apple.com> Move isLCSSAForm, isLoopInvariant, getCanonicalInductionVariable,
and related functions out of LoopBase and into Loop, since they
are specific to BasicBlock-based loops. This also allows the code
to be moved out-of-line.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75523 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/CodeGen/MachineLoopInfo.h
42cf7cc6ace5157c359c6a5758c1d77d0cf0e236 13-Jul-2009 Dan Gohman <gohman@apple.com> Make Loop and MachineLoop be subclasses of LoopBase, rather than typedefs,
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.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75519 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/CodeGen/MachineLoopInfo.h
9b0abfe769b6e8ebddba457ac2d1631df204c8ad 27-Jun-2009 Dan Gohman <gohman@apple.com> Eliminate a layer of indirection in LoopInfo and MachineLoopInfo.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74394 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/CodeGen/MachineLoopInfo.h
c74a197153dae0577209a2e12b9bc984f9f4df45 18-Feb-2009 Dan Gohman <gohman@apple.com> Eliminate several more unnecessary intptr_t casts.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@64888 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/CodeGen/MachineLoopInfo.h
c24a3f87f866e96b2a9ad691c78113651eaa77d1 05-Jan-2009 Dan Gohman <gohman@apple.com> Tidy up #includes, deleting a bunch of unnecessary #includes.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@61715 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/CodeGen/MachineLoopInfo.h
c8424dea0d4d223edbf5b6ed10d92d0567fd3c2c 14-Aug-2008 Dan Gohman <gohman@apple.com> Use empty() instead of begin() == end().


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54780 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/CodeGen/MachineLoopInfo.h
bc8fb445b0410e05248fb1dc6131e9cc293557fe 06-May-2008 Dan Gohman <gohman@apple.com> Remove uses of llvm/System/IncludeFile.h that are no longer needed.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50695 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/CodeGen/MachineLoopInfo.h
84e66db653835cee524fc51185ed614f1d6ac628 29-Dec-2007 Chris Lattner <sabre@nondot.org> Don't attribute in file headers anymore. See llvmdev for the
discussion of this change. Boy are my fingers tired. ;-)



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45411 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/CodeGen/MachineLoopInfo.h
79433f88673e3cd27153e14b9c6e7859c9408bbc 22-Dec-2007 Anton Korobeynikov <asl@math.spbu.ru> Unbreak build on gcc 3.x


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45315 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/CodeGen/MachineLoopInfo.h
d72e82cb1815967b757fe1ec12120efd03e30eca 07-Dec-2007 Owen Anderson <resistor@mac.com> Fix a stupid error that Chris pointed out.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44674 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/CodeGen/MachineLoopInfo.h
b9ba3b077c6efcb5c3a4cad3d59c0a095e111cc7 01-Dec-2007 Owen Anderson <resistor@mac.com> Fixes for MachineLoopInfo, mostly from Evan. With these, it should be almost useable!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44480 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/CodeGen/MachineLoopInfo.h
95412b3dafb25afe561396702dfdf13be099ef1d 28-Nov-2007 Duncan Sands <baldrick@free.fr> Add missing newlines at EOF.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44399 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/CodeGen/MachineLoopInfo.h
815297c8d8006ffda21744133cbfa16bc58af351 27-Nov-2007 Owen Anderson <resistor@mac.com> Add MachineLoopInfo. This is not yet tested.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44384 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/CodeGen/MachineLoopInfo.h