[llvm] [LLVM] set OpenBSD's ELFOSABI by default (PR #98158)
via llvm-commits
llvm-commits at lists.llvm.org
Wed Jul 10 07:02:24 PDT 2024
llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-mc
Author: John Ericson (Ericson2314)
<details>
<summary>Changes</summary>
This matches what is done for FreeBSD.
OpenBSD has a few special program header types, and other such ELF extensions. Setting the ELFOSABI like so will allow LLD to support them without needlessly impacting non-OpenBSD ELFs.
Leveraged by #<!-- -->97122
---
Full diff: https://github.com/llvm/llvm-project/pull/98158.diff
3 Files Affected:
- (modified) llvm/include/llvm/MC/MCELFObjectWriter.h (+2)
- (added) llvm/test/MC/ELF/osabi-freebsd.s (+2)
- (added) llvm/test/MC/ELF/osabi-openbsd.s (+2)
``````````diff
diff --git a/llvm/include/llvm/MC/MCELFObjectWriter.h b/llvm/include/llvm/MC/MCELFObjectWriter.h
index d7c223cdcc07f..12237094ad86a 100644
--- a/llvm/include/llvm/MC/MCELFObjectWriter.h
+++ b/llvm/include/llvm/MC/MCELFObjectWriter.h
@@ -78,6 +78,8 @@ class MCELFObjectTargetWriter : public MCObjectTargetWriter {
return ELF::ELFOSABI_FREEBSD;
case Triple::Solaris:
return ELF::ELFOSABI_SOLARIS;
+ case Triple::OpenBSD:
+ return ELF::ELFOSABI_OPENBSD;
default:
return ELF::ELFOSABI_NONE;
}
diff --git a/llvm/test/MC/ELF/osabi-freebsd.s b/llvm/test/MC/ELF/osabi-freebsd.s
new file mode 100644
index 0000000000000..0dbef293772e9
--- /dev/null
+++ b/llvm/test/MC/ELF/osabi-freebsd.s
@@ -0,0 +1,2 @@
+# RUN: llvm-mc -filetype obj -triple amd64-freebsd %s | llvm-readobj -hS - | FileCheck %s
+# CHECK: OS/ABI: FreeBSD
diff --git a/llvm/test/MC/ELF/osabi-openbsd.s b/llvm/test/MC/ELF/osabi-openbsd.s
new file mode 100644
index 0000000000000..f501dfa7bb126
--- /dev/null
+++ b/llvm/test/MC/ELF/osabi-openbsd.s
@@ -0,0 +1,2 @@
+# RUN: llvm-mc -filetype obj -triple amd64-openbsd %s | llvm-readobj -hS - | FileCheck %s
+# CHECK: OS/ABI: OpenBSD
``````````
</details>
https://github.com/llvm/llvm-project/pull/98158
More information about the llvm-commits
mailing list