[all-commits] [llvm/llvm-project] ce7eb2: [Coroutines] Avoid creating conditional cleanup ma...

Wei Wang via All-commits all-commits at lists.llvm.org
Tue Feb 28 15:31:52 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: ce7eb2e05544437af127684030a21b9e54a34f93
      https://github.com/llvm/llvm-project/commit/ce7eb2e05544437af127684030a21b9e54a34f93
  Author: Wei Wang <apollo.mobility at gmail.com>
  Date:   2023-02-28 (Tue, 28 Feb 2023)

  Changed paths:
    M clang/lib/CodeGen/CGCoroutine.cpp
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    A clang/test/CodeGenCoroutines/pr59181.cpp

  Log Message:
  -----------
  [Coroutines] Avoid creating conditional cleanup markers in suspend block

We shouldn't access coro frame after returning from `await_suspend()` and before `llvm.coro.suspend()`.
Make sure we always hoist conditional cleanup markers when inside the `await.suspend` block.

Fix https://github.com/llvm/llvm-project/issues/59181

Reviewed By: ChuanqiXu

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




More information about the All-commits mailing list