]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdePkg/Include/X64/ProcessorBind.h
MdePkg X64: force 'protected' visibility when building with -fpic
[mirror_edk2.git] / MdePkg / Include / X64 / ProcessorBind.h
index 705104af062a9e3506645c8d1f8324cceb64f60e..a4aad3e524e8e52497be50b2bc1d277368687206 100644 (file)
 #pragma pack()\r
 #endif\r
 \r
+#if defined(__GNUC__) && defined(__pic__)\r
+//\r
+// Mark all symbol declarations and references as protected, meaning they will\r
+// not be subject to symbol preemption. This allows the compiler to refer to\r
+// symbols directly using relative references rather than via the GOT, which\r
+// contains absolute symbol addresses that are subject to runtime relocation.\r
+//\r
+#pragma GCC visibility push (protected)\r
+#endif\r
 \r
 #if defined(__INTEL_COMPILER)\r
 //\r