History log of /external/llvm/include/llvm/ADT/ValueMap.h
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
9e7e04823cb472ae8c36ce354365ba76ba1bcb36 19-May-2012 Benjamin Kramer <benny.kra@googlemail.com> Disambiguate call to operator==.

clang++ and msvc happily had no problem with it but g++ refuses to compile.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157126 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/ValueMap.h
96edb648e2ea10e1662758b791fc7b494fe74f49 19-May-2012 Benjamin Kramer <benny.kra@googlemail.com> ValueMap: Use DenseMap's find_as mechanism to reduce use list churn.

Otherwise just looking up a value in the map requires creating a VH, adding it to the use lists and destroying it again.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157124 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/ValueMap.h
4e58263459d7f9ae862b52adafe585b66411272f 06-Apr-2012 Benjamin Kramer <benny.kra@googlemail.com> DenseMap: Perform the pod-like object optimization when the value type is POD-like, not the DenseMapInfo for it.

Purge now unused template arguments. This has been broken since r91421. Patch by Lubos Lunak!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@154170 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/ValueMap.h
1f6efa3996dd1929fbc129203ce5009b620e6969 29-Nov-2010 Michael J. Spencer <bigcheesegs@gmail.com> Merge System into Support.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120298 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/ValueMap.h
e3955df639ff9aff990f628ef6a219ff5efdbc81 01-Sep-2010 Dan Gohman <gohman@apple.com> Make the iterator form of erase return void, since it always succeeds,
and since this is what std::map and std::set do.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112701 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/ValueMap.h
fffe6cf084d91a8c99b710e30f2b9fb23d62b58d 09-Aug-2010 Duncan Sands <baldrick@free.fr> Remove the ValueMap operator=, which was wrong (it did't correct the
Map pointers of any contained ValueMapCallbackVH's) and unused.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110577 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/ValueMap.h
3850f5cedad95e6062671d66b08e1a29e7d5e20f 08-Aug-2010 Duncan Sands <baldrick@free.fr> Remove the ValueMap copy constructor. It's not used anywhere,
and removing it catches the mistake of passing a ValueMap by
copy rather than by reference.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110549 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/ValueMap.h
bcc23933695e1cec4e7dcd2e2b8bde0ef3c298c9 30-Jul-2010 Duncan Sands <baldrick@free.fr> Fix the ValueMap copy constructor. The issue is that the map keys are value
handles with a pointer to the containing map. When a map is copied, these
pointers need to be corrected to point to the new map. If not, then consider
the case of a map M1 which maps a value V to something. Create a copy M2 of
M1. At this point there are two value handles on V, one representing V as a
key in M1, the other representing V as a key in M2. But both value handles
point to M1 as the containing map. Now delete V. The value handles remove
themselves from their containing map (which destroys them), but only the first
value handle is successful: the second one cannot remove itself from M1 as
(once the first one has removed itself) there is nothing there to remove; it
is therefore not destroyed. This causes an assertion failure "All references
to V were not removed?".


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109851 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/ValueMap.h
978bb87f8871b953d159c2846b379bc93be27972 27-Jul-2010 Duncan Sands <baldrick@free.fr> In commit 91421, isPod was changed from false to true for these value handles.
Change it back again: destructors and constructors need to be run.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109498 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/ValueMap.h
dd6f86a28f1ae77ec2a35598f6a7a934dd5d802f 24-Jun-2010 Eric Christopher <echristo@apple.com> Silence some unused variable warnings.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@106778 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/ValueMap.h
4bbf4ee1491637c247e195e19e3e4a8ee5ad72fa 15-Dec-2009 Chris Lattner <sabre@nondot.org> Remove isPod() from DenseMapInfo, splitting it out to its own
isPodLike type trait. This is a generally useful type trait for
more than just DenseMap, and we really care about whether something
acts like a pod, not whether it really is a pod.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91421 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/ValueMap.h
fe134fe9e5673d63b4b80392adcc5a3df928475f 27-Oct-2009 Mike Stump <mrs@apple.com> Fix VS build, patch by Marius Wachtler.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85198 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/ValueMap.h
4ab74cdc124af6b4f57c2d2d09548e01d64a1f34 23-Oct-2009 Jeffrey Yasskin <jyasskin@google.com> Fix stylistic and documentation problems in ValueMap found by Nick Lewycky and
Evan Cheng.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84967 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/ValueMap.h
71a5c22c2b635ea903c3ae7d2695ca649b38726f 23-Oct-2009 Jeffrey Yasskin <jyasskin@google.com> Try r84890 again (adding ValueMap<>), now that I've tested the compile on
gcc-4.4.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84902 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/ValueMap.h
a84c9db467ce55e68464e6a099dcfe934b513a2a 22-Oct-2009 Jeffrey Yasskin <jyasskin@google.com> Revert r84890, which broke the linux build.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84892 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/ValueMap.h
e0a234029b1b65f21169536f4c45e83743ed3cfa 22-Oct-2009 Jeffrey Yasskin <jyasskin@google.com> Add a ValueMap<ValueOrSubclass*, T> type. ValueMap<Value*, T> is safe to use
even when keys get RAUWed and deleted during its lifetime. By default the keys
act like WeakVHs, but users can pass a third template parameter to configure
how updates work and whether to do anything beyond updating the map on each
action.

It's also possible to automatically acquire a lock around ValueMap updates
triggered by RAUWs and deletes, to support the ExecutionEngine.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84890 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/ADT/ValueMap.h