• Jiri Slaby's avatar
    linkage: Introduce new macros for assembler symbols · 840d8c9b
    Jiri Slaby authored
    commit ffedeeb7 upstream.
    
    Introduce new C macros for annotations of functions and data in
    assembly. There is a long-standing mess in macros like ENTRY, END,
    ENDPROC and similar. They are used in different manners and sometimes
    incorrectly.
    
    So introduce macros with clear use to annotate assembly as follows:
    
    a) Support macros for the ones below
       SYM_T_FUNC -- type used by assembler to mark functions
       SYM_T_OBJECT -- type used by assembler to mark data
       SYM_T_NONE -- type used by assembler to mark entries of unknown type
    
       They are defined as STT_FUNC, STT_OBJECT, and STT_NOTYPE
       respectively. According to the gas manual, this is the most portable
       way. I am not sure about other assemblers, so this can be switched
       back to %function and %object if this turns into a problem.
       Architectures can also override them by something like ", @function"
       if they need.
    
       SYM_A_ALIGN, SYM_A_NONE -- align the symbol?...
    840d8c9b
asm-annotations.rst 9.13 KB