Prepare for https://reviews.llvm.org/D134010.
From the perspective of the middle end, the attribute teaches the compiler how to reduce the control flow graph which was impossible.
Currently the optimization will reduce the size of the destroy function since we know the destroy function will only be called after the coroutine completes.