diff options
author | Julian Lettner <jlettner@apple.com> | 2019-04-16 01:34:38 +0000 |
---|---|---|
committer | Julian Lettner <jlettner@apple.com> | 2019-04-16 01:34:38 +0000 |
commit | 263264345485263e318f3acc90b2ad90a8847b39 (patch) | |
tree | 982a7e6c4c8a996d25eb5ba3973155786cd46458 /llvm/lib/Transforms/Utils/CodeExtractor.cpp | |
parent | 3ad162bbebc4f1488a06feb3d64bd572cb595543 (diff) | |
download | bcm5719-llvm-263264345485263e318f3acc90b2ad90a8847b39.tar.gz bcm5719-llvm-263264345485263e318f3acc90b2ad90a8847b39.zip |
[TSan][libdispatch] Port gcd-sync-block-copy.mm to C++
Summary:
Apparently, it makes a difference on where a block lives depending on if
it's passed "inline" versus assigned and then passed via a variable.
Both tests in this commit now give a signal, if `Block_copy` is used in
`dispatch_sync`.
Since these tests use different mechanisms (Objective-C retain versus
C++ copy constructor) as proxies to observe if the block was copied, we
should keep both of them.
Commit, that first avoided the unnecessary copy:
faef7d034a9ec6cb757137adce8e8670ec6c2d7b
Subscribers: kubamracek, #sanitizers, llvm-commits
Tags: #sanitizers, #llvm
Differential Revision: https://reviews.llvm.org/D60639
llvm-svn: 358469
Diffstat (limited to 'llvm/lib/Transforms/Utils/CodeExtractor.cpp')
0 files changed, 0 insertions, 0 deletions