[all-commits] [llvm/llvm-project] 33e3b2: Fix assertion when -fasy-exception is used.

jyu2-git via All-commits all-commits at lists.llvm.org
Thu Aug 10 21:59:36 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 33e3b2c46084bc47ef4067ed487b24b58934d044
      https://github.com/llvm/llvm-project/commit/33e3b2c46084bc47ef4067ed487b24b58934d044
  Author: Jennifer Yu <jennifer.yu at intel.com>
  Date:   2023-08-10 (Thu, 10 Aug 2023)

  Changed paths:
    M clang/lib/CodeGen/CGCleanup.cpp
    A clang/test/CodeGen/windows-seh-async-exceptions.cpp

  Log Message:
  -----------
  Fix assertion when -fasy-exception is used.

The assertion only happens with use of -fasy-exception without
-fexcessions.

The assertion appen during the call to generate SehScopeBegin(), where
assert with:
assert(CGF.Builder.GetInsertBlock() && InvokeDest);
InvokeDest is null. Because exceptions are disabled, and SEH is not
in use.
The fix is before call EmitSehCppScopeBegin check getInvokeDest(),
to avoid assert during the emit llvm.seh.scope.begin()

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




More information about the All-commits mailing list