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
|