[clang] Disable -gsplit-dwarf as it is unsupported at the moment on AIX (PR #158199)
Aditya Chaudhary via cfe-commits
cfe-commits at lists.llvm.org
Sun Sep 14 22:39:34 PDT 2025
https://github.com/adityankit updated https://github.com/llvm/llvm-project/pull/158199
>From 4f58d192cb423bf3a546c5dab307a4064707cd13 Mon Sep 17 00:00:00 2001
From: Aditya Chaudhary <aditya.chaudhary1 at ibm.com>
Date: Thu, 11 Sep 2025 12:16:31 -0400
Subject: [PATCH] Disable -gsplit-dwarf as it is unsupported at the moment on
AIX
---
clang/lib/Driver/ToolChains/Clang.cpp | 7 +++++++
clang/test/Driver/aix-gsplit-dwarf.c | 12 ++++++++++++
2 files changed, 19 insertions(+)
create mode 100644 clang/test/Driver/aix-gsplit-dwarf.c
diff --git a/clang/lib/Driver/ToolChains/Clang.cpp b/clang/lib/Driver/ToolChains/Clang.cpp
index 946b1e39af3b9..a72bdedd7317b 100644
--- a/clang/lib/Driver/ToolChains/Clang.cpp
+++ b/clang/lib/Driver/ToolChains/Clang.cpp
@@ -4393,6 +4393,13 @@ renderDebugOptions(const ToolChain &TC, const Driver &D, const llvm::Triple &T,
// object file generation and no IR generation, -gN should not be needed. So
// allow -gsplit-dwarf with either -gN or IR input.
if (IRInput || Args.hasArg(options::OPT_g_Group)) {
+ // FIXME: -gsplit-dwarf on AIX is currently unimplemented.
+ if (TC.getTriple().isOSAIX() && Args.hasArg(options::OPT_gsplit_dwarf)) {
+ D.Diag(diag::err_drv_unsupported_opt_for_target)
+ << Args.getLastArg(options::OPT_gsplit_dwarf)->getSpelling()
+ << TC.getTriple().str();
+ return;
+ }
Arg *SplitDWARFArg;
DwarfFission = getDebugFissionKind(D, Args, SplitDWARFArg);
if (DwarfFission != DwarfFissionKind::None &&
diff --git a/clang/test/Driver/aix-gsplit-dwarf.c b/clang/test/Driver/aix-gsplit-dwarf.c
new file mode 100644
index 0000000000000..22f2a66961f36
--- /dev/null
+++ b/clang/test/Driver/aix-gsplit-dwarf.c
@@ -0,0 +1,12 @@
+// Verify error message is emitted for `-gsplit-dwarf` on AIX
+// as it's unsupported at the moment.
+
+// RUN: not %clang -target powerpc-ibm-aix -gdwarf-4 -gsplit-dwarf %s 2>&1 \
+// RUN: | FileCheck %s --check-prefix=UNSUP_OPT_AIX
+// RUN: not %clang -target powerpc64-ibm-aix -gdwarf-4 -gsplit-dwarf %s 2>&1 \
+// RUN: | FileCheck %s --check-prefix=UNSUP_OPT_AIX64
+
+// UNSUP_OPT_AIX: error: unsupported option '-gsplit-dwarf' for target 'powerpc-ibm-aix'
+// UNSUP_OPT_AIX64: error: unsupported option '-gsplit-dwarf' for target 'powerpc64-ibm-aix'
+
+int main(){return 0;}
More information about the cfe-commits
mailing list