https://github.com/felixkellenbenz updated https://github.com/llvm/llvm-project/pull/78919
>From bf376afe7bd69fd25a006890b2910f2fd32c191b Mon Sep 17 00:00:00 2001 From: Felix Kellenbenz <fe.kellenbenz.compu...@outlook.de> Date: Mon, 22 Jan 2024 00:49:21 +0100 Subject: [PATCH 1/2] Make llvm-strip not eat the .gnu_debuglink section --- llvm/lib/ObjCopy/ELF/ELFObjcopy.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/llvm/lib/ObjCopy/ELF/ELFObjcopy.cpp b/llvm/lib/ObjCopy/ELF/ELFObjcopy.cpp index daf03810fd7bff..b6d77d17bae36c 100644 --- a/llvm/lib/ObjCopy/ELF/ELFObjcopy.cpp +++ b/llvm/lib/ObjCopy/ELF/ELFObjcopy.cpp @@ -450,6 +450,8 @@ static Error replaceAndRemoveSections(const CommonConfig &Config, return false; if (StringRef(Sec.Name).starts_with(".gnu.warning")) return false; + if (StringRef(Sec.Name).starts_with(".gnu_debuglink")) + return false; // We keep the .ARM.attribute section to maintain compatibility // with Debian derived distributions. This is a bug in their // patchset as documented here: >From b014ffa827fbf8c301a190e2fbf7aa943c78e6f1 Mon Sep 17 00:00:00 2001 From: Felix Kellenbenz <fe.kellenbenz.compu...@outlook.de> Date: Mon, 22 Jan 2024 10:37:22 +0100 Subject: [PATCH 2/2] Add test that checks if llvm-strip removes the .gnu_debuglink section --- llvm/test/tools/llvm-objcopy/ELF/strip-all.test | 2 ++ 1 file changed, 2 insertions(+) diff --git a/llvm/test/tools/llvm-objcopy/ELF/strip-all.test b/llvm/test/tools/llvm-objcopy/ELF/strip-all.test index 20f3c9addf556b..efc3d42f22953f 100644 --- a/llvm/test/tools/llvm-objcopy/ELF/strip-all.test +++ b/llvm/test/tools/llvm-objcopy/ELF/strip-all.test @@ -68,6 +68,8 @@ Sections: Flags: [ ] - Name: .gnu.warning.foo Type: SHT_PROGBITS + - Name: .gnu_debuglink + Type: SHT_PROGBITS ProgramHeaders: # Use an arbitrary segment type to show that the segment type is unimportant. - Type: 0x61234567 _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits