[coroutines] Improve suspend point simplification
authorGor Nishanov <GorNishanov@gmail.com>
Tue, 11 Dec 2018 21:23:09 +0000 (21:23 +0000)
committerGor Nishanov <GorNishanov@gmail.com>
Tue, 11 Dec 2018 21:23:09 +0000 (21:23 +0000)
commit20d833d5e3c5ab1d66ec0e4df7a95b84dcc780e6
treef1afa5b4573feb577d1d3f45fcd62fa253d7cc27
parentac874c48ca1071d853a819bf93fe0b95c1122e90
[coroutines] Improve suspend point simplification

Summary:
Enable suspend point simplification for cases where:
* coro.save and coro.suspend are in different basic blocks
* where there are intervening intrinsics

Reviewers: modocache, tks2103, lewissbaker

Reviewed By: modocache

Subscribers: EricWF, llvm-commits

Differential Revision: https://reviews.llvm.org/D55160

llvm-svn: 348897
llvm/lib/Transforms/Coroutines/CoroSplit.cpp
llvm/test/Transforms/Coroutines/no-suspend.ll