[edk2-devel] [PATCH v5 02/10] MdePkg: don't set visibility to hidden

Marvin Häuser mhaeuser at posteo.de
Fri Apr 21 06:01:11 UTC 2023


> On 21. Apr 2023, at 06:45, Gerd Hoffmann <kraxel at redhat.com> wrote:
> 
> Not needed any more on modern toolchains, they are better
> in not creating a GOT without this trick.

Hi Gerd,

Thanks! Just out of interest, how did you test this and what were the results?

Best regards,
Marvin

> 
> Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
> ---
> MdePkg/Include/X64/ProcessorBind.h | 14 --------------
> 1 file changed, 14 deletions(-)
> 
> diff --git a/MdePkg/Include/X64/ProcessorBind.h b/MdePkg/Include/X64/ProcessorBind.h
> index f0a4d00142b9..afbb4b6273fb 100644
> --- a/MdePkg/Include/X64/ProcessorBind.h
> +++ b/MdePkg/Include/X64/ProcessorBind.h
> @@ -21,20 +21,6 @@
>   #pragma pack()
> #endif
> 
> -#if defined (__GNUC__) && defined (__pic__) && !defined (USING_LTO)  && !defined (__APPLE__)
> -//
> -// Mark all symbol declarations and references as hidden, meaning they will
> -// not be subject to symbol preemption. This allows the compiler to refer to
> -// symbols directly using relative references rather than via the GOT, which
> -// contains absolute symbol addresses that are subject to runtime relocation.
> -//
> -// The LTO linker will not emit GOT based relocations when all symbol
> -// references can be resolved locally, and so there is no need to set the
> -// pragma in that case (and doing so will cause other issues).
> -//
> -  #pragma GCC visibility push (hidden)
> -#endif
> -
> #if defined (__INTEL_COMPILER)
> //
> // Disable ICC's remark #869: "Parameter" was never referenced warning.
> -- 
> 2.40.0
> 



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#103371): https://edk2.groups.io/g/devel/message/103371
Mute This Topic: https://groups.io/mt/98404595/1813853
Group Owner: devel+owner at edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [edk2-devel-archive at redhat.com]
-=-=-=-=-=-=-=-=-=-=-=-




More information about the edk2-devel-archive mailing list