[clang] [clang][LoongArch] Enable -fasynchronous-unwind-tables by default on Linux (PR #94711)

via cfe-commits cfe-commits at lists.llvm.org
Thu Jun 6 20:00:17 PDT 2024


https://github.com/wangleiat updated https://github.com/llvm/llvm-project/pull/94711

>From 819f126473b34014bb3ad946f78b4e86b7fca09d Mon Sep 17 00:00:00 2001
From: wanglei <wanglei at loongson.cn>
Date: Fri, 7 Jun 2024 09:08:57 +0800
Subject: [PATCH] =?UTF-8?q?[=F0=9D=98=80=F0=9D=97=BD=F0=9D=97=BF]=20initia?=
 =?UTF-8?q?l=20version?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Created using spr 1.3.5-bogner
---
 clang/lib/Driver/ToolChains/Gnu.cpp    | 2 ++
 clang/test/Driver/loongarch-features.c | 7 +++++++
 2 files changed, 9 insertions(+)
 create mode 100644 clang/test/Driver/loongarch-features.c

diff --git a/clang/lib/Driver/ToolChains/Gnu.cpp b/clang/lib/Driver/ToolChains/Gnu.cpp
index b141e5f2adfab..e8c81ca966801 100644
--- a/clang/lib/Driver/ToolChains/Gnu.cpp
+++ b/clang/lib/Driver/ToolChains/Gnu.cpp
@@ -3087,6 +3087,8 @@ Generic_GCC::getDefaultUnwindTableLevel(const ArgList &Args) const {
   switch (getArch()) {
   case llvm::Triple::aarch64:
   case llvm::Triple::aarch64_be:
+  case llvm::Triple::loongarch32:
+  case llvm::Triple::loongarch64:
   case llvm::Triple::ppc:
   case llvm::Triple::ppcle:
   case llvm::Triple::ppc64:
diff --git a/clang/test/Driver/loongarch-features.c b/clang/test/Driver/loongarch-features.c
new file mode 100644
index 0000000000000..6d0db0f3ac6a9
--- /dev/null
+++ b/clang/test/Driver/loongarch-features.c
@@ -0,0 +1,7 @@
+// RUN: %clang --target=loongarch64-linux -### %s -fsyntax-only 2>&1 \
+// RUN:   | FileCheck %s -check-prefix=DEFAULT-LINUX
+
+// DEFAULT-LINUX: "-funwind-tables=2"
+// DEFAULT-LINUX-SAME: "-target-feature" "+f"
+// DEFAULT-LINUX-SAME: "-target-feature" "+d"
+// DEFAULT-LINUX-SAME: "-target-feature" "+ual"



More information about the cfe-commits mailing list