Skip to content
Snippets Groups Projects
  1. Feb 25, 2005
  2. Feb 24, 2005
    • rtoy's avatar
      Update from commit logs. · 27301eab
      rtoy authored
      27301eab
    • rtoy's avatar
      o Fix typo. · 522ebee0
      rtoy authored
      o When PPC_FUN_HACK is not defined, the raw_addr slot of an fdefn
        object should be on a word boundary, so change undefined_tramp and
        closure_tramp to be on such a boundary.  Previously, these had a
        lowtag of 1.  With this change, can we get rid of the other parts of
        a function definition that we don't use?
      522ebee0
  3. Feb 22, 2005
  4. Feb 21, 2005
    • rtoy's avatar
      Apply Lynn Quam's proposed enhancements to fd-streams allowing input · d4ad6755
      rtoy authored
      streams opened with element-type (unsigned-byte 8) to be also opened
      for character input.  This gives simple-streams semantics to
      fd-streams.
      
      * code/fd-stream.lisp
        o Make FD-STREAM-IN use PICK-INPUT-ROUTINE to select the correct
          type of input.
        o Add *FD-STREAM-ENABLE-CHARACTER-AND-BINARY-INPUT* to allow binary
          and character input.  Currently defaults to NIL, but will change
          to T.
      
      * code/stream.lisp
        o New READ-INTO-SIMPLE-STRING to allow stream element-type of
          (unsigned-byte 8).
        o Support reading and writing simple arrays of single-float and
          double-float.
        o Strings can be written to streams of element-type '(unsigned-byte
          8).
      
      * tools/worldcom.lisp
        o Compile stream-vector-io.lisp.
      
      * tools/worldload.lisp
        o Load stream-vector-io.
      
      * code/stream-vector-io.lisp
        o New file implementing READ-VECTOR and WRITE-VECTOR.
      d4ad6755
    • rtoy's avatar
      In some situations, the compiler spends an enormous amount of time · ae65549e
      rtoy authored
      computing the union of a bunch of disjoint integer types, usually from
      some DO loop.  This fix implements a hack to short-circuit that case
      by checking to see if the union is long enough and instead of
      returning the precise union, we return the smallest interval that
      contains all of the integer types in the union.  The max length of the
      union is set by *union-length-threshold*, defaulting to 50.
      
      This is a gross hack.  We should do something better than this.
      ae65549e
  5. Feb 18, 2005
  6. Feb 15, 2005
  7. Feb 12, 2005
  8. Feb 11, 2005
  9. Feb 10, 2005
  10. Feb 09, 2005
  11. Feb 08, 2005
  12. Feb 07, 2005
  13. 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
  14. Feb 04, 2005
  15. Feb 03, 2005
Loading