[llvm-commits] [PATCH] Add a ValueMap type, whose keys act like WeakVHs

jyasskin at gmail.com jyasskin at gmail.com
Sat Oct 17 00:42:54 PDT 2009

Reviewers: ,

This breaks check-lit with the following error:

UNRESOLVED: LLVM-Unit::ADT/Debug/ADTTests/ValueMapTest/1.NoFollowRAUW
(103 of 4819)
******************** TEST
'LLVM-Unit::ADT/Debug/ADTTests/ValueMapTest/1.NoFollowRAUW' FAILED
Exception during script execution:
Traceback (most recent call last):
   File "/Users/jyasskin/src/llvm/jit_del/src/utils/lit/lit.py", line
118, in runTest
   File "/Users/jyasskin/src/llvm/jit_del/src/utils/lit/TestFormats.py",
line 58, in execute
     out, err, exitCode = TestRunner.executeCommand(cmd)
   File "/Users/jyasskin/src/llvm/jit_del/src/utils/lit/TestRunner.py",
line 23, in executeCommand
line 595, in __init__
     errread, errwrite)
line 1092, in _execute_child
     raise child_exception
OSError: [Errno 20] Not a directory

I guess I'll have to figure out how to fix it before submitting.

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.

This type should make http://codereview.appspot.com/133043/diff/1/2
quite a bit simpler, but I haven't yet updated it so I could have missed

Please review this at http://codereview.appspot.com/132055

Affected files:
   M docs/ProgrammersManual.html
   A include/llvm/ADT/ValueMap.h
   M include/llvm/Support/type_traits.h
   A unittests/ADT/ValueMapTest.cpp

More information about the llvm-commits mailing list