diff --git a/clang/lib/Driver/ToolChains/Gnu.cpp b/clang/lib/Driver/ToolChains/Gnu.cpp --- a/clang/lib/Driver/ToolChains/Gnu.cpp +++ b/clang/lib/Driver/ToolChains/Gnu.cpp @@ -2900,6 +2900,8 @@ case llvm::Triple::ppcle: case llvm::Triple::ppc64: case llvm::Triple::ppc64le: + case llvm::Triple::riscv32: + case llvm::Triple::riscv64: case llvm::Triple::x86: case llvm::Triple::x86_64: return UnwindTableLevel::Asynchronous; diff --git a/clang/test/Driver/riscv-features.c b/clang/test/Driver/riscv-features.c --- a/clang/test/Driver/riscv-features.c +++ b/clang/test/Driver/riscv-features.c @@ -26,7 +26,8 @@ // RUN: %clang --target=riscv64-linux -### %s -fsyntax-only 2>&1 \ // RUN: | FileCheck %s -check-prefix=DEFAULT-LINUX -// DEFAULT-LINUX: "-target-feature" "+m" +// DEFAULT-LINUX: "-funwind-tables=2" +// DEFAULT-LINUX-SAME: "-target-feature" "+m" // DEFAULT-LINUX-SAME: "-target-feature" "+a" // DEFAULT-LINUX-SAME: "-target-feature" "+f" // DEFAULT-LINUX-SAME: "-target-feature" "+d"