Michael Zolotukhin f7c66a1b63 ProvenanceAnalysis: Store WeakTrackingVH instead of Value* in UnderlyingValue Cache.
Summary:
Since the value stored in the cache might be deleted or replaced with
something else, we need to use tracking ValueHandlers instead of plain
Value pointers. It was discovered in one of internal builds, and
unfortunately there is no small reproducer for the issue.

The cache was introduced in rL327328.

Reviewers: ahatanak, pete

Subscribers: hiraditya, llvm-commits

Differential Revision: https://reviews.llvm.org/D48407

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@335201 91177308-0d34-0410-b5e6-96231b3b80d8
2018-06-21 05:14:00 +00:00
..