-
Notifications
You must be signed in to change notification settings - Fork 12.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Support] Recycler: Implement move constructor #120555
[Support] Recycler: Implement move constructor #120555
Conversation
This stack of pull requests is managed by Graphite. Learn more about stacking. |
@llvm/pr-subscribers-llvm-support Author: Akshat Oke (optimisan) Changes...discovered missing while running RAGreedy through the NPM which relies on moving analyses to the cache. Full diff: https://github.com/llvm/llvm-project/pull/120555.diff 1 Files Affected:
diff --git a/llvm/include/llvm/Support/Recycler.h b/llvm/include/llvm/Support/Recycler.h
index bbd9ae321ae30c..693c6559ff2fdc 100644
--- a/llvm/include/llvm/Support/Recycler.h
+++ b/llvm/include/llvm/Support/Recycler.h
@@ -60,6 +60,10 @@ class Recycler {
// clear() before deleting the Recycler.
assert(!FreeList && "Non-empty recycler deleted!");
}
+ Recycler(const Recycler &) = delete;
+ Recycler(Recycler &&Other)
+ : FreeList(std::exchange(Other.FreeList, nullptr)) {}
+ Recycler() = default;
/// clear - Release all the tracked allocations to the allocator. The
/// recycler must be free of any tracked allocations before being
|
Unit test coverage? |
d9acb7c
to
c67c0ae
Compare
982ad41
to
df8e573
Compare
600fd4c
to
4496358
Compare
df8e573
to
30e38c2
Compare
4496358
to
ac8a44c
Compare
30e38c2
to
f5baddf
Compare
ac8a44c
to
5e6aefd
Compare
f5baddf
to
af2bec8
Compare
af2bec8
to
e6fab53
Compare
LLVM Buildbot has detected a new failure on builder Full details are available at: https://lab.llvm.org/buildbot/#/builders/143/builds/4576 Here is the relevant piece of the build log for the reference
|
Discovered missing while running RAGreedy through the NPM which relies on moving analyses to the cache.