History log of /external/llvm/lib/Transforms/Utils/ValueMapper.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
dce4a407a24b04eebc6a376f8e62b41aaa7b071f 29-May-2014 Stephen Hines <srhines@google.com> Update LLVM for 3.5 rebase (r209712).

Change-Id: I149556c940fb7dc92d075273c87ff584f400941f
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
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/lib/Transforms/Utils/ValueMapper.cpp
5c332dbd30d9398ed25b30c3080506f7b8e92290 05-May-2013 Dmitri Gribenko <gribozavr@gmail.com> Add ArrayRef constructor from None, and do the cleanups that this constructor enables

Patch by Robert Wilhelm.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@181138 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
16d1a6bf082e7dbda4de2e5a54b9e8caae990c61 31-Jan-2013 Manman Ren <mren@apple.com> Linker: correctly link in dbg.declare

This is a re-worked version of r174048.
Given source IR:
call void @llvm.dbg.declare(metadata !{i32* %argc.addr}, metadata !14), !dbg !15
we used to generate
call void @llvm.dbg.declare(metadata !27, metadata !28), !dbg !29
!27 = metadata !{null}

With this patch, we will correctly generate
call void @llvm.dbg.declare(metadata !{i32* %argc.addr}, metadata !27), !dbg !28

Looking up %argc.addr in ValueMap will return null, since %argc.addr is already
correctly set up, we can use identity mapping.

rdar://problem/13089880


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174093 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
e22df330a344ddbd536e6bcbc542290953ab4a9d 31-Jan-2013 Alexey Samsonov <samsonov@google.com> Revert r173946. This breaks compilation of googletest with Clang

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174048 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
1229c0cb10e1c3640253ece03670621d96762e75 30-Jan-2013 Manman Ren <mren@apple.com> Linker: correctly link in dbg.declare

Given source IR:
call void @llvm.dbg.declare(metadata !{i32* %argc.addr}, metadata !14), !dbg !15
we used to generate
call void @llvm.dbg.declare(metadata !27, metadata !28), !dbg !29
!27 = metadata !{null}

With this patch, we will correctly generate
call void @llvm.dbg.declare(metadata !{i32* %argc.addr}, metadata !27), !dbg !28

Looking up %argc.addr in ValueMap will return null, since %argc.addr is already
correctly set up, we can use identity mapping.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173946 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
0b8c9a80f20772c3793201ab5b251d3520b9cea3 02-Jan-2013 Chandler Carruth <chandlerc@gmail.com> Move all of the header files which are involved in modelling the LLVM IR
into their new header subdirectory: include/llvm/IR. This matches the
directory structure of lib, and begins to correct a long standing point
of file layout clutter in LLVM.

There are still more header files to move here, but I wanted to handle
them in separate commits to make tracking what files make sense at each
layer easier.

The only really questionable files here are the target intrinsic
tablegen files. But that's a battle I'd rather not fight today.

I've updated both CMake and Makefile build systems (I think, and my
tests think, but I may have missed something).

I've also re-sorted the includes throughout the project. I'll be
committing updates to Clang, DragonEgg, and Polly momentarily.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171366 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
4bb51cc83badd77bdc482b0594b72cb177f052f6 26-Sep-2012 Craig Topper <craig.topper@gmail.com> Rename virtual table anchors from Anchor() to anchor() for consistency with the rest of the tree.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164666 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
1f35b178858c693261b08ab41022f92e250e08b4 04-Aug-2011 Devang Patel <dpatel@apple.com> We need to map DebugLoc. It leads to Fuction * (through subprogram entry node) which should be appropriately mapped.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136910 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
7305c55a806e550020c0fd78239b587da222f600 16-Jul-2011 Chris Lattner <sabre@nondot.org> fix rdar://9776316 - type remapping needed for inline asm blobs,
fixing some objc llvm-test crashes with LTO.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135324 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
af29322bb308a7e02203fd6cc404f5c7f8d7f651 15-Jul-2011 Devang Patel <dpatel@apple.com> Undo r135191 (i.e. reapply Chris's patch. Now linker maps NamedMDNodes first, so there is not any need to map DebugLoc).


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135205 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
f54645346664e07a222281e51bad36b259a0d0af 14-Jul-2011 Chris Lattner <sabre@nondot.org> revert r135172 until Devang and I figure out the right answer.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135191 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
4692be11a9ecee983760b0420ef2775a4c3706dc 14-Jul-2011 Chris Lattner <sabre@nondot.org> Stop the ValueMapper from calling getAllMetadata, which unpacks DebugLoc into
an MDNode. This saves a bunch of time and memory in the IR linker, e.g. when
doing LTO of files with debug info.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135172 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
1afcace3a3a138b1b18e5c6270caa8dae2261ae2 09-Jul-2011 Chris Lattner <sabre@nondot.org> Land the long talked about "type system rewrite" patch. This
patch brings numerous advantages to LLVM. One way to look at it
is through diffstat:
109 files changed, 3005 insertions(+), 5906 deletions(-)

Removing almost 3K lines of code is a good thing. Other advantages
include:

1. Value::getType() is a simple load that can be CSE'd, not a mutating
union-find operation.
2. Types a uniqued and never move once created, defining away PATypeHolder.
3. Structs can be "named" now, and their name is part of the identity that
uniques them. This means that the compiler doesn't merge them structurally
which makes the IR much less confusing.
4. Now that there is no way to get a cycle in a type graph without a named
struct type, "upreferences" go away.
5. Type refinement is completely gone, which should make LTO much MUCH faster
in some common cases with C++ code.
6. Types are now generally immutable, so we can use "Type *" instead
"const Type *" everywhere.

Downsides of this patch are that it removes some functions from the C API,
so people using those will have to upgrade to (not yet added) new API.
"LLVM 3.0" is the right time to do this.

There are still some cleanups pending after this, this patch is large enough
as-is.




git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134829 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
95c3e48f9557adb6064d580684bb14cacec2f826 23-Jun-2011 Jay Foad <jay.foad@gmail.com> Reinstate r133513 (reverted in r133700) with an additional fix for a
-Wshorten-64-to-32 warning in Instructions.h.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133708 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
e59fbc04ad343435705c28b3cf7038d65fe4af0a 23-Jun-2011 Eric Christopher <echristo@apple.com> Revert r133513:

"Reinstate r133435 and r133449 (reverted in r133499) now that the clang
self-hosted build failure has been fixed (r133512)."

Due to some additional warnings.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133700 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
cd35e09a4a3c640b9da0b1dfe3548a605c929ae5 21-Jun-2011 Jay Foad <jay.foad@gmail.com> Reinstate r133435 and r133449 (reverted in r133499) now that the clang
self-hosted build failure has been fixed (r133512).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133513 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
a88a0ca8082006b37d14d8aee4a644b20bae8bc9 21-Jun-2011 Chad Rosier <mcrosier@apple.com> Revert r133435 and r133449 to appease buildbots.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133499 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
72f5f313d87558958696ce69593d82efcdfa9128 20-Jun-2011 Jay Foad <jay.foad@gmail.com> Change how PHINodes store their operands.

Change PHINodes to store simple pointers to their incoming basic blocks,
instead of full-blown Uses.

Note that this loses an optimization in SplitCriticalEdge(), because we
can no longer walk the use list of a BasicBlock to find phi nodes. See
the comment I removed starting "However, the foreach loop is slow for
blocks with lots of predecessors".

Extend replaceAllUsesWith() on a BasicBlock to also update any phi
nodes in the block's successors. This mimics what would have happened
when PHINodes were proper Users of their incoming blocks. (Note that
this only works if OldBB->replaceAllUsesWith(NewBB) is called when
OldBB still has a terminator instruction, so it still has some
successors.)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133435 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
ec9186bcf975c9ffa3ec7ca97867f0ec6eb55115 21-Apr-2011 Jay Foad <jay.foad@gmail.com> PR9214: Convert Metadata API to use ArrayRef.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129932 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
51e62f0f73b2d2a32c2a5b98402114e4c71dc14f 24-Jan-2011 Chris Lattner <sabre@nondot.org> fix PR9015, a crash linking recursive metadata.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@124099 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
b5fa5fcecc97168a72c9533c84cf297c018b957c 08-Jan-2011 Chris Lattner <sabre@nondot.org> Revamp the ValueMapper interfaces in a couple ways:

1. Take a flags argument instead of a bool. This makes
it more clear to the reader what it is used for.
2. Add a flag that says that "remapping a value not in the
map is ok".
3. Reimplement MapValue to share a bunch of code and be a lot
more efficient. For lookup failures, don't drop null values
into the map.
4. Using the new flag a bunch of code can vaporize in LinkModules
and LoopUnswitch, kill it.

No functionality change.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123058 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
6688c4a742b3d4ad511e35b463c2fe0f8abc04ab 13-Oct-2010 Rafael Espindola <rafael.espindola@gmail.com> Fix PR8313 by changing ValueToValueMap use a TrackingVH.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116390 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
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/lib/Transforms/Utils/ValueMapper.cpp
076137c424bfae2c28e45121b1468397a7d2712a 26-Aug-2010 Daniel Dunbar <daniel@zuster.org> Revert r111922, "MapValue support for MDNodes. This is similar to r109117,
except ...", it is causing *massive* performance regressions when building Clang
with itself (-O3 -g).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112158 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
fd406f1ee2d94bafcb4943e4b21c2f4ea4bd8f3a 26-Aug-2010 Daniel Dunbar <daniel@zuster.org> Revert r112091, "Remap metadata attached to instructions when remapping
individual ...", which depends on r111922, which I am reverting.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112157 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
ce934260dc4ce12bd59f15aaa5ef28520214ad4f 25-Aug-2010 Dan Gohman <gohman@apple.com> Remap metadata attached to instructions when remapping individual
instructions, not when remapping modules.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112091 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
05ea54e8869a81b8dd846397175f218f97968907 24-Aug-2010 Dan Gohman <gohman@apple.com> Use MapValue in the Linker instead of having a private function
which does the same thing. This eliminates redundant code and
handles MDNodes better. MDNode linking still doesn't fully
work yet though.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111941 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
4ce307f96361d428bd332c2086ef42be359d9dd2 24-Aug-2010 Dan Gohman <gohman@apple.com> MapValue support for MDNodes. This is similar to r109117, except
that it avoids a lot of unnecessary cloning by avoiding remapping
MDNode cycles when none of the nodes in the cycle actually need to
be remapped. Also it uses the new temporary MDNode mechanism.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111922 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
de4e94a18cbf259ca0f5800e7efaa5d6a697c1d8 24-Jul-2010 Nick Lewycky <nicholas@mxc.ca> Revert this because we can't clone cyclic MDNodes which are creating during a
build of llvm-gcc.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109355 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
fee12b29851983ab536d46ed0fe85bddd665638a 24-Jul-2010 Nick Lewycky <nicholas@mxc.ca> Whether function-local or not, a MDNode may reference a Function in which case
it needs to be mapped to refer to the function in the new module, not the old
one. Fixes PR7700.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109353 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
169c932759a5e8f1db586775f2bba1e65c08cadd 22-Jul-2010 Devang Patel <dpatel@apple.com> Speculatively revert 109117


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109132 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
bd68d42843551d4819fd94246d3c8233d14ef93b 22-Jul-2010 Devang Patel <dpatel@apple.com> Map MDNode correctly.
A non function local MDNode can have an operand which is cloned by MapValue().


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109117 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
1192d4d0a5ed82bef4a5b33b7196f4e06895248f 02-Jul-2010 Devang Patel <dpatel@apple.com> MDString is already checked earlier.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107516 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
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/lib/Transforms/Utils/ValueMapper.cpp
170f06ebe2e80ce8bda87425081541493056fb10 23-Jun-2010 Devang Patel <dpatel@apple.com> Revert 106592 for now. It causes clang-selfhost build failure.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@106598 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
186b3d260643de5db63c4bab15beceb9edaee396 23-Jun-2010 Devang Patel <dpatel@apple.com> If a metadata operand is seeded in value map and the metadata should also be seeded in value map. This is not limited to function local metadata.

Failure to seed metdata in such cases causes troubles when in a cloned module, metadata from a new module refers to values in old module. Usually this results in mysterious bugpoint crashes. For example,

Checking to see if we can delete global inits: Unknown constant!
UNREACHABLE executed at /d/g/llvm/lib/Bitcode/Writer/BitcodeWriter.cpp:904!



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@106592 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
e4acff8720b0a92d93613fef1fb47ed701ba71c5 22-Jun-2010 Devang Patel <dpatel@apple.com> Revert 106528. It is causing self host failures.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@106529 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
52e0612f7da7c711a94e0ea130b7205c6a6e6d63 22-Jun-2010 Devang Patel <dpatel@apple.com> Do not rely on DenseMap slot which can be easily invalidated when DenseMap grows.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@106528 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
3943084136b71934ae62e240c256494b4589584f 21-Apr-2010 Devang Patel <dpatel@apple.com> Rename ValueMapTy as ValueToValueMapTy to clearly indicate that this has no replationship with ADT/ValueMap.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101950 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
cd9b49245115f13e2e190fedfdbbbfc19a49b78f 21-Apr-2010 Devang Patel <dpatel@apple.com> There is no need to install ValueMapper.h header.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101949 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
0c81e34a546698723aeb4bcab5c85bd0ba93299a 27-Jan-2010 Victor Hernandez <vhernandez@apple.com> Avoid extra calls to MD->getNumOperands()

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94618 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
839a0159c44e64503720b424dc386e4732f56ad0 21-Jan-2010 Chris Lattner <sabre@nondot.org> It turns out that this #include is needed because otherwise
ValueMapper.cpp ends up calling an out of line
__ZNK4llvm12PATypeHolder3getEv, which is a template and llvm-config
determines arbitrarily to use the one in libipo. This sucks, but
keeping the #include is a reasonable workaround.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94103 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
7bc3bcebb0c5842c353b290eb2ec56f9c88f6200 21-Jan-2010 Chris Lattner <sabre@nondot.org> unbreak the build, apparently without this transformutils starts depending on libipa?


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94102 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
1b3ef34b759434624bb0c194c2d368ba7617c3a9 21-Jan-2010 Chris Lattner <sabre@nondot.org> tidy up


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94101 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
589423cd634b0836c0f2ec4c8dbe28b8807916f1 21-Jan-2010 Victor Hernandez <vhernandez@apple.com> Don't need to include IntrinsicInst.h any more

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94092 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
f42fae16745c6534c0d9619103dfbb3e299182e1 21-Jan-2010 Victor Hernandez <vhernandez@apple.com> No need to map NULL operands of metadata

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94091 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
acf1831596ca09eab5a1f7bca804c2745c6f5f92 20-Jan-2010 Victor Hernandez <vhernandez@apple.com> Switch Elts from vector to SmallVector

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93989 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
f58c34d5315a35d489c5c203ae45430ccb53f973 20-Jan-2010 Victor Hernandez <vhernandez@apple.com> Map operands of all function-local metadata, not just metadata passed to llvm.dbg.declare intrinsics

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93979 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
f9d5c5cf9f1aa40aff80b5096a0a54e246fa89b5 18-Jan-2010 Devang Patel <dpatel@apple.com> While mapping llvm.dbg.declare intrinsic manually map its operand, if possible,
because it points to an alloca instruction through metadata.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93757 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
cdfc940912d56a63b6f12eaa7f3faf79cf74c693 01-Nov-2009 Chris Lattner <sabre@nondot.org> Revert 85678/85680. The decision is to stay with the current form of
indirectbr, thus we don't need "blockaddr(@func, null)". Eliminate it
for simplicity.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85699 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
c1dc35094e3ffcb4b3a765f0f786b8a2948bc321 31-Oct-2009 Chris Lattner <sabre@nondot.org> adjust a couple xforms to work with null bb's in BlockAddress.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85680 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
4c0236fd8b94f9721bac8a66c3220e797310c593 29-Oct-2009 Chris Lattner <sabre@nondot.org> teach various passes about blockaddress. We no longer
crash on any clang tests.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85465 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
1bb95911de8d0821aff16bf0cb1e1dfe43856bf1 29-Oct-2009 Chris Lattner <sabre@nondot.org> teach ValueMapper about BlockAddress', making bugpoint a lot more useful.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85458 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
77488ccc6305760af485c884872368c7a490ab84 29-Oct-2009 Chris Lattner <sabre@nondot.org> unindent massive blocks, no functionality change.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85457 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
5fa75b0fa4af290ee4b7180f3e452942b4653aae 25-Oct-2009 Dan Gohman <gohman@apple.com> MapValue doesn't needs its LLVMContext argument.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85020 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
0a9f7b9c3ebe7d0ec033462e1a7c9101279956f9 28-Jul-2009 Devang Patel <dpatel@apple.com> Rename MDNode.h header. It defines MDnode and other metadata classes.
New name is Metadata.h.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77370 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
af7ec975870f92245f1f1484ac80a1e2db6a0afa 28-Jul-2009 Owen Anderson <resistor@mac.com> Return ConstantVector to 2.5 API.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77366 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
1fd7096407d5e598ed3366a1141548e71273f1c5 28-Jul-2009 Owen Anderson <resistor@mac.com> Change ConstantArray to 2.5 API.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77347 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
8fa3338ed2400c1352b137613d2c2c70d1ead695 28-Jul-2009 Owen Anderson <resistor@mac.com> Move ConstantStruct back to 2.5 API.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77266 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
41d89c2572375a47a109f030c038ba666bfedbe7 27-Jul-2009 Devang Patel <dpatel@apple.com> Do not seed mstadata into the value map.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77208 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
e922c0201916e0b980ab3cfe91e1413e68d55647 22-Jul-2009 Owen Anderson <resistor@mac.com> Get rid of the Pass+Context magic.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76702 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
c23197a26f34f559ea9797de51e187087c039c42 14-Jul-2009 Torok Edwin <edwintorok@gmail.com> llvm_unreachable->llvm_unreachable(0), LLVM_UNREACHABLE->llvm_unreachable.
This adds location info for all llvm_unreachable calls (which is a macro now) in
!NDEBUG builds.
In NDEBUG builds location info and the message is off (it only prints
"UREACHABLE executed").


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75640 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
c25e7581b9b8088910da31702d4ca21c4734c6d7 11-Jul-2009 Torok Edwin <edwintorok@gmail.com> assert(0) -> LLVM_UNREACHABLE.
Make llvm_unreachable take an optional string, thus moving the cerr<< out of
line.
LLVM_UNREACHABLE is now a simple wrapper that makes the message go away for
NDEBUG builds.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75379 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
07cf79ef537caff6d39145f190a28a336e629b6f 07-Jul-2009 Owen Anderson <resistor@mac.com> "LLVMContext* " --> "LLVMContext *"


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74878 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
0a205a459884ec745df1c529396dd921f029dafd 06-Jul-2009 Owen Anderson <resistor@mac.com> More LLVMContext-ification.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74807 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
7a0370f66ab5739f42ffe822f33494e0de9b182b 30-May-2009 Nick Lewycky <nicholas@mxc.ca> Give embedded metadata its own type instead of relying on EmptyStructTy.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72610 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
ba2c4874244f449ce04a72b542144d5c3f7ff50d 30-May-2008 Gabor Greif <ggreif@gmail.com> rewrite operand loops to use iterators

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51789 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
4ee451de366474b9c228b4e5fa573795a715216d 29-Dec-2007 Chris Lattner <sabre@nondot.org> Remove attribution from file headers, per discussion on llvmdev.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45418 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
344ef19772e2ab029a9abdf3839795d77dc4ea32 09-Nov-2007 Anton Korobeynikov <asl@math.spbu.ru> Forget to commit users part of value mapper interface


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43940 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
07a96765daedf180a7102d39fe56c499878312b7 16-Jul-2007 Dan Gohman <gohman@apple.com> Fix comments about vectors to use the current wording.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39921 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
cae0a193e310050b6bb9cc4628b7151997126f60 23-Feb-2007 Chris Lattner <sabre@nondot.org> fix an obscure and tricky bug the inliner can hit sometimes.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34531 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
9d6565a5b1fbc4286d6ee638d8f47a3171a9ed7e 15-Feb-2007 Reid Spencer <rspencer@reidspencer.com> For PR1195:
Rename PackedType -> VectorType, ConstantPacked -> ConstantVector, and
PackedTyID -> VectorTyID. No functional changes.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34293 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
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/lib/Transforms/Utils/ValueMapper.cpp
6b6b6ef1677fa71b1072c2911b4c1f9524a558c9 11-Jan-2007 Zhou Sheng <zhousheng00@gmail.com> For PR1043:
Merge ConstantIntegral and ConstantBool into ConstantInt.
Remove ConstantIntegral and ConstantBool from LLVM.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33073 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
27d672136a57519095a3ef20161697749cffb57c 15-Jul-2006 Chris Lattner <sabre@nondot.org> eliminate some ugly code, using ConstantExpr::getWithOperands instead.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29149 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
83f03bfc3f60a05b9ca5807f837c09798632095e 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@28519 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
543abdf1d0914228899061b36674fb1c6234aaff 08-Apr-2006 Chris Lattner <sabre@nondot.org> Add supprot for shufflevector


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27513 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
8960766d459ef618f5415dab4b19fca67611b054 07-Apr-2006 Chris Lattner <sabre@nondot.org> Fix inlining of insert/extract element constantexprs


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27478 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
3805dea3fe742002f32a945abb19b74e2bb576d9 02-Apr-2006 Chris Lattner <sabre@nondot.org> add valuemapper support for inline asm


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27332 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
49aaa6a8ee783e8a0a7b272ecdc6c71afd53c18d 27-Mar-2006 Chris Lattner <sabre@nondot.org> teach the inliner to work with packed constants


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27161 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
f47a6b4882f45ecd4b2765d5d9051d973c96b58f 26-Jan-2006 Chris Lattner <sabre@nondot.org> teach the cloner to handle inline asms


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25633 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
fd93908ae8b9684fe71c239e3c6cfe13ff6a2663 22-Apr-2005 Misha Brukman <brukman+llvm@gmail.com> Remove trailing whitespace


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21427 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
82731c793a9fbe53d8c5e784e3638cd3ad09d5ca 16-Oct-2004 Chris Lattner <sabre@nondot.org> Add support for UndefValue


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17046 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
eb6f18fe7c375ce5598c6ba6d5b9ae769fbf2610 13-Aug-2004 Chris Lattner <sabre@nondot.org> Add value mapper support for select constant exprs. This should fix a bug
Nate ran into when bugpointing siod. This fix should go into LLVM 1.3


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15712 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
15876bb28c9c0983279c30a123c13224648574c1 04-Aug-2004 Alkis Evlogimenos <alkis@evlogimenos.com> Stop using getValues().


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15487 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
e95ff9afa07e3409b29070aed480ffd780307c97 18-Jul-2004 Reid Spencer <rspencer@reidspencer.com> Remove an if statement that would never be reached.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14968 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
518310cb0d136906ff0a99d7a24cb460794de5bf 18-Jul-2004 Reid Spencer <rspencer@reidspencer.com> bug 122:
- Replace ConstantPointerRef usage with GlobalValue usage


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14953 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
30b434476796cd4a85c02914687d22f2e5ec95ca 15-Jul-2004 Chris Lattner <sabre@nondot.org> Progress on PR341


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14840 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
954da37bb492b519f5c31dc360f2a142567e08b4 04-Jul-2004 Reid Spencer <rspencer@reidspencer.com> Add #include <iostream> since Value.h does not #include it any more.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14622 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
6129af3fb14d1050f9fb4800c787e6f930b910d1 19-May-2004 Brian Gaeke <gaeke@uiuc.edu> Move RemapInstruction() to ValueMapper, so that it can be shared with
CloneTrace, and because it is primarily an operation on ValueMaps. It
is now a global (non-static) function which can be pulled in using
ValueMapper.h.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13600 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
de512b5b2edebe9c9021a92c7c7a9ae9fbc380d6 15-Feb-2004 Chris Lattner <sabre@nondot.org> Adjustments to support the new ConstantAggregateZero class


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11474 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
c6646ebdb957a3c613d389be8b0135271b8b8ece 12-Jan-2004 Chris Lattner <sabre@nondot.org> Remove use of ConstantExpr::getShift


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10792 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
f7703df4968084c18c248c1feea9961c19a32e6a 09-Jan-2004 Chris Lattner <sabre@nondot.org> Finegrainify namespacification


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10727 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
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/lib/Transforms/Utils/ValueMapper.cpp
e7a6663eb155eb8eb5de24cf22f632790485e5f9 05-Nov-2003 Chris Lattner <sabre@nondot.org> Yet more fixes for constant expr shifts


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9739 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
b576c94c15af9a440f69d9d03c2afead7971118c 20-Oct-2003 John Criswell <criswell@uiuc.edu> Added LLVM project notice to the top of every C++ source file.
Header files will be on the way.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9298 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
5f92e2b11f68624f9003e710f44e3bc324cbf89a 06-Oct-2003 Chris Lattner <sabre@nondot.org> Avoid doing pointless work. Amazingly, this makes us go faster.

Running the inliner on 252.eon used to take 48.4763s, now it takes 14.4148s.

In release mode, it went from taking 25.8741s to taking 11.5712s.

This also fixes a FIXME.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8890 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
15faa8498cda80828e292e6954e4bfe648d78572 18-Apr-2003 Chris Lattner <sabre@nondot.org> New const_cast instead of c style cast


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5805 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
3cf5db73c7382c7236256779513fdeb1075f2f16 13-Jan-2003 Chris Lattner <sabre@nondot.org> Add debugging helper


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5235 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
ac8d4d9d59e8f84f457c9847b2a279edd23c1023 07-Dec-2002 Chris Lattner <sabre@nondot.org> Fix bug that was bugging bugpoint


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4953 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp
51cbcbf435d1aaa1a5269d62b5d0b31b57316b4a 20-Nov-2002 Chris Lattner <sabre@nondot.org> Initial checkin of Module cloning support stuff


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4788 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Utils/ValueMapper.cpp