rnk accepted this revision.
rnk added inline comments.
This revision is now accepted and ready to land.


================
Comment at: test/CodeGenCoroutines/coro-await-domination.cpp:33
+  int x = 42;
+  x = co_await A{};
+}
----------------
rnk wrote:
> It looks like this is the expression in question. This expression should have 
> aggregate evaluation kind, not scalar. We don't need to reload aggregate 
> expression evaluation results because they are represented with temporary 
> allocas, and they don't have dominance problems. It seems like there is an 
> incorrect call to PopCleanupBlocks somewhere, and that's where the real fix 
> should be.
OK, nevermind. I found a way to reproduce this issue with gnu statement 
expressions, and after trying to fix it at a higher level, I decided the way 
you are fixing it is better. I went ahead and landed the fix along with my test 
cases. Please go ahead and land the coroutines test, though. More coverage is 
better.


https://reviews.llvm.org/D33733



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to