https://github.com/ChuanqiXu9 commented:

Thanks for looking into this. I haven't looked it in details. Given this is 
complex, it should take a relative longer time.

Here is some quick feedbacks:
- Every time we change the non-static data members of AST nodes, we need to 
update the serializations. Otherwise, modules won't work.
- Every time we change the LLVM intrinsics, we need to change the documentation.
- Every time we change the LLVM with a functional change, we need a test in the 
LLVM part.

And there is something I haven't fully understand:
- I feel odd about `helperFunction`. I don't understand the necessity and I 
feel we should make it in the middle end.
- I feel odd about `IsSuspendNoThrow`. Can't we make it simply during the 
CodeGen time by the attribute of `await_suspend`?.
- I am wondering if we can get rid of the introduction of `OpaqueFramePtr` from 
`CoroutineSuspendExpr` either in CodeGen part or in Sema part.

But I am not sure if my feelings are correct. I need more time looking into it.

https://github.com/llvm/llvm-project/pull/79712
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to