Skip to content
Snippets Groups Projects
Forked from cmucl / cmucl
Source project has a limited visibility.
  • Raymond Toy's avatar
    571dd490
    Unify extern-alien-name for darwin x86 and ppc. · 571dd490
    Raymond Toy authored
    Initial attempt to unify extern-alien-name, primarily for darwin (x86
    and ppc). Thus, systems using elf do not prepend an underscore, but
    other systems are assumed to prepend an underscore.
    
    This is currently only for darwin/x86.  A cross-compile on darwin x86
    is needed.
    
     * code/x86-vm.lisp:
       * For elf systems, don't prepend an underscore.  For other systems,
         do prepend.
     * compiler/generic/new-genesis.lisp:
       * Fix long-standing bug where we should call EXTERN-ALIEN-NAME to
         get the right name for "resolve_linkage_tramp".
     * lisp/Darwin-os.c:
       * Update os_dlsym to assume the external name is always preceded by
         an underscore.  The lookup for dlysm is done by stripping off the
         leading underscore.
     * lisp/os-common.c:
       * Add EXTERN_ALIEN_NAME macro to create the correct alien name for
         elf and non-elf systems.
       * Use it to generate the correct name to be used for comparison in
         the sanity checks of the linkage table entries.
    571dd490
    History
    Unify extern-alien-name for darwin x86 and ppc.
    Raymond Toy authored
    Initial attempt to unify extern-alien-name, primarily for darwin (x86
    and ppc). Thus, systems using elf do not prepend an underscore, but
    other systems are assumed to prepend an underscore.
    
    This is currently only for darwin/x86.  A cross-compile on darwin x86
    is needed.
    
     * code/x86-vm.lisp:
       * For elf systems, don't prepend an underscore.  For other systems,
         do prepend.
     * compiler/generic/new-genesis.lisp:
       * Fix long-standing bug where we should call EXTERN-ALIEN-NAME to
         get the right name for "resolve_linkage_tramp".
     * lisp/Darwin-os.c:
       * Update os_dlsym to assume the external name is always preceded by
         an underscore.  The lookup for dlysm is done by stripping off the
         leading underscore.
     * lisp/os-common.c:
       * Add EXTERN_ALIEN_NAME macro to create the correct alien name for
         elf and non-elf systems.
       * Use it to generate the correct name to be used for comparison in
         the sanity checks of the linkage table entries.