Skip to content
Snippets Groups Projects
  1. Feb 11, 2005
  2. Feb 10, 2005
  3. Feb 09, 2005
  4. Feb 08, 2005
  5. Feb 07, 2005
  6. Feb 06, 2005
    • rtoy's avatar
      Bootstrap file for adding linkage-tables to the ppc/darwin port. Use · 8a981c6e
      rtoy authored
      the 2005-02 snapshot to bootstrap.
      8a981c6e
    • rtoy's avatar
      Initial support for linkage-tables on PPC/Darwin. This is a · 6a4fd3c3
      rtoy authored
      relatively straightforward port of the sparc version of
      linkage-tables.  Some refinements are probably still needed, as well
      as some testing.
      
      Use boot-2005-02-ppc-linkage.lisp to bootstrap this change from the
      2005-02 snapshot.
      
      * code/ppc-vm.lisp
        o Add appropriate FOREIGN-SYMBOL-ADDRESS-AUX and FIND-FOREIGN-SYMBOL
          functions for linkage-table.
      
      * compiler/generic/new-genesis.lisp
        o Basically do the same as the sparc port for linkage-tables.
        o need to extern-alien-name on the cold linkages since they C names
          depend on the backend conventions.
      
      * compiler/ppc/alloc.lisp
        o Load "undefined_tramp" appropriately for linkage-tables.
      
      * compiler/ppc/c-call.lisp
        o Define new vops (FOREIGN-SYMBOL-CODE-ADDRESS,
          FOREIGN-SYMBOL-DATA-ADDRESS) for linkage-tables so we can access
          correctly.
      
      * compiler/ppc/cell.lisp
        o Load "closure_tramp" appropriately for linkage-tables
        o Load "undefined_tramp" appropriately for linkage-tables
      
      * compiler/ppc/parms.lisp
        o Put the foreign linkage space start at the end of the static space
          to make it easier to bootstrap.  (We need already mapped memory.)
          We can move this later.
        o Correct TARGET-FOREIGN-LINKAGE-ENTRY-SIZE.
        o Add new static-symbol *linkage-table-data*
        o While were at it, add SPARE-9 and SPARE-0 static symbols so we
          have 10 spares.
      
      * lisp/Config.ppc_darwin
        o Add -DLINKAGE_TABLE to CFLAGS/ASFLAGS if we have linkage-table
          support.
      
      * lisp/Darwin-os.c
        o Add os_dlsym to support linkage-tables.  (This nees a little
          refactoring because we just copied the #defines for dlopen modes.)
      
      * lisp/os-common.c
        o The checking of the linkage tables that is done for sparc almost
          works for ppc, but not quite.  Implement one for ppc.
      
      * lisp/ppc-arch.c
        o Add PPC version of arch_make_jump_entry, arch_make_linkage_entry,
          arch_linkage_entry.
      
      * lisp/ppc-assem.S
        o Add lazy_resolve_linkage to support linkage-tables.  This needs
          some more work.
        o Add undefined_foreign_symbol_trap.  This probably needs work, and
          definitely needs testing.
      
      * lisp/ppc-validate.h
        o Define the start of the linkage space and size.
      6a4fd3c3
    • rtoy's avatar
      Temporarily disable recvfrom and friends on Darwin. · cdc21869
      rtoy authored
      cdc21869
    • rtoy's avatar
      Export COMPATIBLE-FUNCTION-TYPES-P for PPC. · c126db45
      rtoy authored
      c126db45
    • cshapiro's avatar
      Retire i586_bzero() in favor of memset(). The i586_bzero() routine is · a52d33fa
      cshapiro authored
      demonstrably slower than extant compiler intrinsics or C runtime
      memset() implementations for blocks of memory greater than or equal to
      an x86 VM page.
      a52d33fa
  7. Feb 04, 2005
  8. Feb 03, 2005
  9. Feb 02, 2005
  10. Feb 01, 2005
  11. Jan 31, 2005
  12. Jan 29, 2005
  13. Jan 27, 2005
  14. Jan 25, 2005
  15. Jan 13, 2005
  16. Jan 07, 2005
    • rtoy's avatar
      This function from the misc.492 test from ansi-tests: · 529a9ff2
      rtoy authored
      (defun fn-492 (r p1)
        (declare (optimize speed (safety 1))
      	   (type (simple-array (signed-byte 8) nil) r) (type (integer * 22050378) p1))
        (setf (aref r) (lognand (the (integer 19464371) p1) 2257))
        (values))
      
      confuses the compiler and causes (values) to be deleted, and also
      deletes the return from the function so we just run past the end into
      junk.
      
      I think it's caused by confusion in type derivation.  I changed the
      defoptimizer for %aset so it returns the specialized element-type of
      the array instead of the new-value.
      
      This is a workaround, not a solution.
      529a9ff2
Loading