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