From 8dc4944a6c449de1616c2acb10d25f2b43986294 Mon Sep 17 00:00:00 2001 From: Jessica Hamilton Date: Wed, 6 May 2026 22:38:54 +1200 Subject: [PATCH] elf.h: add definitions for symbol visibility MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit As defined at https://refspecs.linuxfoundation.org/elf/gabi4+/ch4.symtab.html Change-Id: I3e89f78626e1271a99bc4b58b7edb3e169c74c64 Reviewed-on: https://review.haiku-os.org/c/haiku/+/10938 Haiku-Format: Haiku-format Bot Reviewed-by: Jérôme Duval --- headers/os/kernel/elf.h | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/headers/os/kernel/elf.h b/headers/os/kernel/elf.h index 9e4fa2b9a1..85b5d8144b 100644 --- a/headers/os/kernel/elf.h +++ b/headers/os/kernel/elf.h @@ -399,10 +399,12 @@ typedef struct { #define ELF32_ST_BIND(i) ((i) >> 4) #define ELF32_ST_TYPE(i) ((i) & 0xf) #define ELF32_ST_INFO(b, t) (((b) << 4) + ((t) & 0xf)) +#define ELF32_ST_VISIBILITY(o) ((o) & 0x3) #define ELF64_ST_BIND(i) ((i) >> 4) #define ELF64_ST_TYPE(i) ((i) & 0xf) #define ELF64_ST_INFO(b, t) (((b) << 4) + ((t) & 0xf)) +#define ELF64_ST_VISIBILITY(o) ((o) & 0x3) /* symbol types */ #define STT_NOTYPE 0 @@ -421,6 +423,12 @@ typedef struct { #define STB_LOPROC 13 #define STB_HIPROC 15 +/* symbol visibility */ +#define STV_DEFAULT 0 +#define STV_INTERNAL 1 +#define STV_HIDDEN 2 +#define STV_PROTECTED 3 + /* special symbol indices */ #define STN_UNDEF 0