Wrap deallocation code with:
if (auto *mem = coro.free()) Deallocate
When backend decides to elide allocations it will replace coro.free with nullptr to suppress deallocation code.
Differential D31590
[coroutines] Add support for deallocation elision GorNishanov on Apr 2 2017, 8:34 PM. Authored by
Details
Wrap deallocation code with: if (auto *mem = coro.free()) Deallocate When backend decides to elide allocations it will replace coro.free with nullptr to suppress deallocation code.
Diff Detail Event Timeline |