VirtualBox

Changeset 100851 in vbox for trunk/src/VBox/VMM


Ignore:
Timestamp:
Aug 10, 2023 2:34:07 PM (18 months ago)
Author:
vboxsync
Message:

VMM/IEM: Make the assembly helpers hidden to avoid calling via the plt or stubs. bugref:10369

Location:
trunk/src/VBox/VMM
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/VMM/VMMAll/IEMAllAImpl.asm

    r100709 r100851  
    7676;
    7777%macro BEGINPROC_FASTCALL 2
    78  %ifdef ASM_FORMAT_PE
    79   export %1=NAME_FASTCALL(%1,%2,$@)
    80  %endif
    81  %ifdef __NASM__
    82   %ifdef ASM_FORMAT_OMF
    83    export NAME(%1) NAME_FASTCALL(%1,%2,$@)
    84   %endif
    85  %endif
    86  %ifndef ASM_FORMAT_BIN
    87   global NAME_FASTCALL(%1,%2,$@)
    88  %endif
    89 NAME_FASTCALL(%1,%2,@):
     78GLOBALNAME_RAW NAME_FASTCALL(%1,%2,@), function, hidden
    9079        IBT_ENDBRxx
    9180%endmacro
  • trunk/src/VBox/VMM/include/IEMInternal.h

    r100847 r100851  
    17151715    __attribute__((__fastcall__)) a_RetType (a_Name) a_ArgList
    17161716# define IEM_DECL_IMPL_DEF(a_RetType, a_Name, a_ArgList) \
    1717     __attribute__((__fastcall__, __nothrow__)) a_RetType a_Name a_ArgList
     1717    __attribute__((__fastcall__, __nothrow__)) DECL_HIDDEN_ONLY(a_RetType) a_Name a_ArgList
    17181718# define IEM_DECL_IMPL_PROTO(a_RetType, a_Name, a_ArgList) \
    1719     __attribute__((__fastcall__, __nothrow__)) a_RetType a_Name a_ArgList
     1719    __attribute__((__fastcall__, __nothrow__)) DECL_HIDDEN_ONLY(a_RetType) a_Name a_ArgList
    17201720
    17211721#elif defined(_MSC_VER) && defined(RT_ARCH_X86)
     
    17311731    a_RetType (VBOXCALL a_Name) a_ArgList RT_NOEXCEPT
    17321732# define IEM_DECL_IMPL_DEF(a_RetType, a_Name, a_ArgList) \
    1733     a_RetType VBOXCALL a_Name a_ArgList RT_NOEXCEPT
     1733    DECL_HIDDEN_ONLY(a_RetType) VBOXCALL a_Name a_ArgList RT_NOEXCEPT
    17341734# define IEM_DECL_IMPL_PROTO(a_RetType, a_Name, a_ArgList) \
    1735     a_RetType VBOXCALL a_Name a_ArgList RT_NOEXCEPT
     1735    DECL_HIDDEN_ONLY(a_RetType) VBOXCALL a_Name a_ArgList RT_NOEXCEPT
    17361736
    17371737#else
     
    17391739    a_RetType (VBOXCALL a_Name) a_ArgList
    17401740# define IEM_DECL_IMPL_DEF(a_RetType, a_Name, a_ArgList) \
    1741     a_RetType VBOXCALL a_Name a_ArgList
     1741    DECL_HIDDEN_ONLY(a_RetType) VBOXCALL a_Name a_ArgList
    17421742# define IEM_DECL_IMPL_PROTO(a_RetType, a_Name, a_ArgList) \
    1743     a_RetType VBOXCALL a_Name a_ArgList
     1743    DECL_HIDDEN_ONLY(a_RetType) VBOXCALL a_Name a_ArgList
    17441744
    17451745#endif
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette