History log of /external/llvm/include/llvm/Transforms/Utils/Cloning.h
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
a84a83bbcdfaecadfc6574094272fd3edc429a23 28-May-2013 James Molloy <james.molloy@arm.com> Extend RemapInstruction and friends to take an optional new parameter, a ValueMaterializer.

Extend LinkModules to pass a ValueMaterializer to RemapInstruction and friends to lazily create Functions for lazily linked globals. This is a big win when linking small modules with large (mostly unused) library modules.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@182776 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Transforms/Utils/Cloning.h
255f89faee13dc491cb64fbeae3c763e7e2ea4e6 03-Dec-2012 Chandler Carruth <chandlerc@gmail.com> Sort the #include lines for the include/... tree with the script.

AKA: Recompile *ALL* the source code!

This one went much better. No manual edits here. I spot-checked for
silliness and grep-checked for really broken edits and everything seemed
good. It all still compiles. Yell if you see something that looks goofy.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169133 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Transforms/Utils/Cloning.h
3574eca1b02600bac4e625297f4ecf745f4c4f32 08-Oct-2012 Micah Villmow <villmow@gmail.com> Move TargetData to DataLayout.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165402 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Transforms/Utils/Cloning.h
aa6dad9f40f8054313260f512336021f379156f9 19-Sep-2012 Benjamin Kramer <benny.kra@googlemail.com> Remove unused and broken CloneFunction wrapper.

It converted the CodeInfo argument to bool implicitly.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164215 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Transforms/Utils/Cloning.h
fa086f1f00a8b75ab2e2208bd7a028e62f9854db 25-Feb-2012 Chad Rosier <mcrosier@apple.com> Add support for disabling llvm.lifetime intrinsics in the AlwaysInliner. These
are optimization hints, but at -O0 we're not optimizing. This becomes a problem
when the alwaysinline attribute is abused.
rdar://10921594



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@151429 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Transforms/Utils/Cloning.h
8833ef03b9ceaa52063116819fff8b3d16fd8933 06-Feb-2012 Bill Wendling <isanbard@gmail.com> [unwind removal] Remove all of the code for the dead 'unwind' instruction. There
were no 'unwind' instructions being generated before this, so this is in effect
a no-op.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149906 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Transforms/Utils/Cloning.h
d24397a9319a41e80169f572ad274a711f41d64e 23-Dec-2011 Mon P Wang <wangmp@apple.com> When not destroying the source, the linker is not remapping the types. Added support
to CloneFunctionInto to allow remapping for this case.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147217 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Transforms/Utils/Cloning.h
e97c7da59d65bbbd5e0d67b3ef9d742794437e2f 15-Jun-2011 Eli Friedman <eli.friedman@gmail.com> Remove unused code.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133078 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Transforms/Utils/Cloning.h
7a2bdde0a0eebcd2125055e0eacaca040f0b766c 15-Apr-2011 Chris Lattner <sabre@nondot.org> Fix a ton of comment typos found by codespell. Patch by
Luis Felipe Strano Moraes!



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129558 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Transforms/Utils/Cloning.h
1ed219a9d2279ce5a5bbcf16d9b7ccc05cce638c 13-Oct-2010 Rafael Espindola <rafael.espindola@gmail.com> Be more consistent in using ValueToValueMapTy.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116387 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Transforms/Utils/Cloning.h
6cb8c23db1c3becdce6dfbf1b7f1677faca4251e 26-Aug-2010 Dan Gohman <gohman@apple.com> Reapply r112091 and r111922, support for metadata linking, with a
fix: add a flag to MapValue and friends which indicates whether
any module-level mappings are being made. In the common case of
inlining, no module-level mappings are needed, so MapValue doesn't
need to examine non-function-local metadata, which can be very
expensive in the case of a large module with really deep metadata
(e.g. a large C++ program compiled with -g).

This flag is a little awkward; perhaps eventually it can be moved
into the ClonedCodeInfo class.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112190 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Transforms/Utils/Cloning.h
e9916a302f1bacad234d7dafc1df3dc968a6ba0f 24-Jun-2010 Devang Patel <dpatel@apple.com> Use ValueMap instead of DenseMap.
The ValueMapper used by various cloning utility maps MDNodes also.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@106706 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Transforms/Utils/Cloning.h
29d3dd8a64791031eea00ffbae51843dc9982df9 24-Jun-2010 Devang Patel <dpatel@apple.com> Cosmetic change.
Do not use "ValueMap" as a name for a local variable or an argument.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@106698 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Transforms/Utils/Cloning.h
0ca2f28458ae9122f413a4092ddcee33a9dd21c6 01-May-2010 Chris Lattner <sabre@nondot.org> rename InlineInfo.DevirtualizedCalls -> InlinedCalls to
reflect that it includes all inlined calls now, not just
devirtualized ones.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102824 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Transforms/Utils/Cloning.h
076863225ce070345ff7048f48b3550e00598a10 23-Apr-2010 Chris Lattner <sabre@nondot.org> switch InlineInfo.DevirtualizedCalls's list to be of WeakVH.
This fixes a bug where calls inlined into an invoke would get
changed into an invoke but the array would keep pointing to
the (now dead) call. The improved inliner behavior is still
disabled for now.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102196 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Transforms/Utils/Cloning.h
fe9af3b1f7e5d68ecc330bdf4f047d76838f8cc3 23-Apr-2010 Chris Lattner <sabre@nondot.org> The inliner was choosing to not consider call sites
that appear in the SCC as a result of inlining as candidates
for inlining. Change this so that it *does* consider call
sites that change from being indirect to being direct as a
result of inlining. This allows it to completely
"devirtualize" the testcase.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102146 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Transforms/Utils/Cloning.h
60915146f4d35e12f10dcdaa155596fac79184da 23-Apr-2010 Chris Lattner <sabre@nondot.org> refactor the interface to InlineFunction so that most of the in/out
arguments are handled with a new InlineFunctionInfo class. This
makes it easier to extend InlineFunction to return more info in the
future.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102137 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Transforms/Utils/Cloning.h
5deb57c68552a85094b786dfdbd16e3744716733 27-Jan-2010 Benjamin Kramer <benny.kra@googlemail.com> Don't bother with sprintf, just pass the Twine through.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94684 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Transforms/Utils/Cloning.h
43ea505fb07e303721d92f2b2bdda6e601868523 19-Dec-2009 Dan Gohman <gohman@apple.com> Eliminate unnecessary LLVMContexts.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91729 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Transforms/Utils/Cloning.h
53bb5c95afe4ff2627cac513221af2e4e7c5d2e3 11-Nov-2009 Devang Patel <dpatel@apple.com> Implement support to debug inlined functions.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86748 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Transforms/Utils/Cloning.h
8f2718fbef6177966ff807af0732eb2431bd9a5f 27-Aug-2009 Chris Lattner <sabre@nondot.org> enhance InlineFunction to be able to optionally return
a the list of static allocas that it inlined.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80203 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Transforms/Utils/Cloning.h
ec1bea0d94372985a0a5eb283e644c6d0dd345dc 27-Aug-2009 Chris Lattner <sabre@nondot.org> smallvectorize the list of returns built by CloneAndPruneFunctionInto.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80202 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Transforms/Utils/Cloning.h
597ef105771dc7cac190fa67b7b28d34c6df0d5a 27-Aug-2009 Chris Lattner <sabre@nondot.org> remove CloneTrace, which appears to be dead since 2004.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80201 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Transforms/Utils/Cloning.h
12ddd409535b52a7fa5157ded9a4cedd161fedb6 11-Aug-2009 Benjamin Kramer <benny.kra@googlemail.com> Make LLVMContext and LLVMContextImpl classes instead of structs.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78690 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Transforms/Utils/Cloning.h
48b2f3e4850cd27d54224cd42da8a160d6b95984 05-Aug-2009 Owen Anderson <resistor@mac.com> Factor some of the constants+context related code out into a separate header, to make LLVMContextImpl.h
not hideous. Also, fix some MSVC compile errors.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78115 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Transforms/Utils/Cloning.h
c8d76d5afb023a1c6b439941be3b62789fcc0ed3 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/Transforms/Utils/Cloning.h
8b477ed579794ba6d76915d56b3f448a7dd20120 01-Jul-2009 Owen Anderson <resistor@mac.com> Add a pointer to the owning LLVMContext to Module. This requires threading LLVMContext through a lot
of the bitcode reader and ASM parser APIs, as well as supporting it in all of the tools.

Patches for Clang and LLVM-GCC to follow.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74614 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Transforms/Utils/Cloning.h
652f7ea955bb433d6b7a4d33685dca9485fd7b8b 31-May-2008 Evan Cheng <evan.cheng@apple.com> Revert 51775.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51795 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Transforms/Utils/Cloning.h
babf11f249c7c6399c66f2567d4e7efa9c37a9c3 30-May-2008 Evan Cheng <evan.cheng@apple.com> Patches for building llvm on Solaris x86. Contributed by Nathan Keynes.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51775 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Transforms/Utils/Cloning.h
3dab223dc9a398b30484fca23d912433ea0033f3 11-Jan-2008 Chris Lattner <sabre@nondot.org> don't include loopinfo.h from this file.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45858 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Transforms/Utils/Cloning.h
7ed47a13356daed2a34cd2209a31f92552e3bdd8 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/Transforms/Utils/Cloning.h
019b92a70c11319f5ab96c9f5e66e4e111a972f8 14-Nov-2007 Owen Anderson <resistor@mac.com> Start the process of making MachineLoopInfo possible by templating Loop.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44097 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Transforms/Utils/Cloning.h
4bc2a0b420c728e77a852bad9721e4edfd4b3f79 10-Aug-2007 Devang Patel <dpatel@apple.com> Add utility to clone loops.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40997 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Transforms/Utils/Cloning.h
5e665f559419c7f58a4fd9360cd488f065505c44 03-Feb-2007 Chris Lattner <sabre@nondot.org> Switch inliner over to use DenseMap instead of std::map for ValueMap. This
speeds up the inliner 16%.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33801 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Transforms/Utils/Cloning.h
1dfdf8255e803d6376f5fe94a113f892e796ae6c 31-Jan-2007 Chris Lattner <sabre@nondot.org> The inliner/cloner can now optionally take TargetData info, which can be
used by constant folding.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33676 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Transforms/Utils/Cloning.h
f72716d81f64664e6897d9f2e8a7d071bad1de68 27-May-2006 Chris Lattner <sabre@nondot.org> Implement a new method: CloneAndPruneFunctionInto, as documented.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28518 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Transforms/Utils/Cloning.h
782e60150eb9370a60fa51ed49bd23036588756a 17-May-2006 Chris Lattner <sabre@nondot.org> Add a CloneModule call that exposes the mapping of values from the old module
to the new module. Patch provided by Nick Lewycky!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28349 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Transforms/Utils/Cloning.h
4c2881ecb97ca9306396b74a61a6ce05f2b9a4f4 14-Jan-2006 Chris Lattner <sabre@nondot.org> Teach inline function how to update the callgraph when it makes changes.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25318 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Transforms/Utils/Cloning.h
a4c29d20376f4736325a493cf39cda36bed62318 13-Jan-2006 Chris Lattner <sabre@nondot.org> Allow the code cloning interfaces to capture some important info about the
code being cloned if the client wants.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25281 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Transforms/Utils/Cloning.h
34695381d626485a560594f162701088079589df 21-Apr-2005 Misha Brukman <brukman+llvm@gmail.com> Remove trailing whitespace


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21412 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Transforms/Utils/Cloning.h
2b6d2eb2d0e44eb8d897fce107961767b9676a79 19-May-2004 Alkis Evlogimenos <alkis@evlogimenos.com> Declare function defined in namespace llvm as gcc-3.4 doesn't accept a definition in a namespace of a non-declared function.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13602 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Transforms/Utils/Cloning.h
cb2b3e5005c09f24afeb0dab49ac8bc1967e491a 04-Feb-2004 Chris Lattner <sabre@nondot.org> Check in header file I forgot before.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11115 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Transforms/Utils/Cloning.h
d0fde30ce850b78371fd1386338350591f9ff494 11-Nov-2003 Brian Gaeke <gaeke@uiuc.edu> Put all LLVM code into the llvm namespace, as per bug 109.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9903 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Transforms/Utils/Cloning.h
6fbcc26f1460eaee4e0eb8b426fc1ff0c7af11be 20-Oct-2003 John Criswell <criswell@uiuc.edu> Added LLVM copyright header (for lack of a better term).


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9304 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Transforms/Utils/Cloning.h
a04e51f4c0dd981af9b8f6e8b219df495cccaa45 31-Aug-2003 Chris Lattner <sabre@nondot.org> Fix an FLAT OUT WRONG comment


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8263 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Transforms/Utils/Cloning.h
9d3a1b2d972baf72b7da371a1ae72126bc5c6c04 24-Aug-2003 Chris Lattner <sabre@nondot.org> Add versions of InlineFunction which work on Invoke instructions and general call sites


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8105 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Transforms/Utils/Cloning.h
658c5bcdb27fe7e7936b91fc9ccc80738e3bfd22 31-May-2003 Tanya Lattner <tonic@nondot.org> Fixed comment width, changed arg to be const, fixed indentation, removed unnecessary includes.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6476 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Transforms/Utils/Cloning.h
7cf322f51bdacadd7d1ab8ba8b3ef69d5bc95df7 30-May-2003 Tanya Lattner <tonic@nondot.org> Sorry, correcting small typo.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6433 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Transforms/Utils/Cloning.h
2c49fc023ee0885c8c577829cd40c00ef48581fc 30-May-2003 Tanya Lattner <tonic@nondot.org> Added support for cloning a trace.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6430 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Transforms/Utils/Cloning.h
aa101c3147debcba3f0441c80b477782e456a03b 29-May-2003 Chris Lattner <sabre@nondot.org> Doxygenify comments


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6393 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Transforms/Utils/Cloning.h
a107e5f11cf7aa362d2fdd5cebc7e64bb09ed22d 18-Apr-2003 Chris Lattner <sabre@nondot.org> Add prototype for new CloneBasicBlock function


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5804 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Transforms/Utils/Cloning.h
d4fd3978056928b156bc51bff7cd4eb825bffb1a 20-Nov-2002 Chris Lattner <sabre@nondot.org> Cloning stuff doesn't modify the source module


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4787 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Transforms/Utils/Cloning.h
d18015599cbe09dd327b5f73501581a865bf27da 19-Nov-2002 Chris Lattner <sabre@nondot.org> Minor changes to cloning interface


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4770 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Transforms/Utils/Cloning.h
1c9985067bfedc219c1a6128bfc703cf3894b866 19-Nov-2002 Chris Lattner <sabre@nondot.org> Extend function cloning interface to support inlining


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4767 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Transforms/Utils/Cloning.h
84bf9880eaf57f00cc01b4ade40179553ea6fd08 19-Nov-2002 Chris Lattner <sabre@nondot.org> Merge cloning and inlining utilities


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4763 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Transforms/Utils/Cloning.h