summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Analysis/MustExecute.cpp
diff options
context:
space:
mode:
authorSam McCall <sam.mccall@gmail.com>2018-10-16 09:05:13 +0000
committerSam McCall <sam.mccall@gmail.com>2018-10-16 09:05:13 +0000
commitbca624ab039ed690b50b5ae222eb60790fb27c91 (patch)
tree25eef620329a0c270dcc8cfdca7f4daa7693aa81 /llvm/lib/Analysis/MustExecute.cpp
parent96f248955785ecd7cc5b5b92e7548eb84c0bdf1c (diff)
downloadbcm5719-llvm-bca624ab039ed690b50b5ae222eb60790fb27c91.tar.gz
bcm5719-llvm-bca624ab039ed690b50b5ae222eb60790fb27c91.zip
[clangd] Fix threading bugs in (not-yet-used) BackgroundIndex, re-enable test.
Summary: One relatively boring bug: forgot to notify the CV after enqueue. One much more fun bug: the thread member could access instance variables before they were initialized. Although the thread was last in the init list, QueueCV etc were listed after Thread in the class, so their default constructors raced with the thread itself. We have to get very unlucky to lose this race, I saw it 0.02% of the time. Reviewers: ioeric Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, kadircet, jfb, cfe-commits Differential Revision: https://reviews.llvm.org/D53313 llvm-svn: 344595
Diffstat (limited to 'llvm/lib/Analysis/MustExecute.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud