Skip to content
Snippets Groups Projects
  1. Jan 04, 1998
  2. Jan 03, 1998
  3. Jan 02, 1998
  4. Jan 01, 1998
    • dtc's avatar
      Fix a bug in the scrubbing of the current stack-group's eval-stack. · 30a881ca
      dtc authored
      Update the eval-stack for the current stack-group when scrubbing to
      ensuring that the stack-top is valid and maybe flush an old stored
      vector.
      
      Completely scrub the stored binding stack for the current stack group.
      
      Implement the lock waiting in a separate function rather than
      inlining. This ensures that the wait predicate is fast native code so
      that locking in byte-compiled and interpreted code doesn't slow the
      scheduler.
      30a881ca
  5. Dec 31, 1997
    • pw's avatar
      Calls to set-values resulted in multiple calls to XtFree on same address · d083cef2
      pw authored
      which probably caused trouble on some systems. Error traced to bogus
      call to register_garbage in RXtSetValues and RXtGetValues. Had to add
      such a call in message_read_resource_names. Also added a scan of
      the garbage_list prior to adding something new with a warning message
      if things seem wrong.
      d083cef2
    • dtc's avatar
      Enhance scavenge_thread_stacks to only scavenge the live portion of · a9b61aa6
      dtc authored
      the saved stack vectors.
      a9b61aa6
    • dtc's avatar
      Add support for creating stack-groups with a fresh control stack, · 8e8f4c2a
      dtc authored
      rather than inheriting the current stack.
      
      Add support for scrubbing the binding and eval stacks of all the
      processes - call this before GC.
      8e8f4c2a
    • dtc's avatar
      Add a second argument to control-stack-fork to specify if a fresh · 2959142b
      dtc authored
      stack should be setup or the current stack copied.
      2959142b
    • dtc's avatar
      When using the MP feature have internal-debug wrap the debug-loop in · cc0c3cba
      dtc authored
      with-scheduling, otherwise debugging can be rather problematic - could
      use some more thought.
      cc0c3cba
    • dtc's avatar
      Add the option of creating stack groups that are allocated fresh · e7093599
      dtc authored
      stacks rather than inheriting those of the current stack group. The
      alien stack, the eval stack, and the shallow bindings are allocated
      afresh for the new stack-group, but some work on the VOPs is needed to
      handle the control stack. Initial bindings for the following symbols
      are setup by default: * ** *** - + ++ +++ /// // /.
      
      Exploit this new option during the creation of new processes. The user
      visible change is that new processes now have a fresh set of bindings
      rather than inheriting those of the parent process.
      
      During the unwinding and rebinding of the binding stacks there is the
      possibility that *interrupts-enabled* will briefly set to true which
      may cause an unexpected interrupt. For now mask the interrupts during
      the binding stack switch; a better fix may be to implement these
      functions in assembly routines using pseudo-atomic to block
      interrupts.
      e7093599
  6. Dec 30, 1997
  7. Dec 29, 1997
  8. Dec 28, 1997
  9. Dec 27, 1997
  10. Dec 25, 1997
  11. Dec 22, 1997
    • dtc's avatar
      Bring in enhancements from the experimental branch: · a9e601ad
      dtc authored
      * On the X86 port stack SCs may be placed in the list of operand
      preferred SCs and these are selected by emit-coerce-vop in preference
      to the register SCs because they happen to be defined first in
      vm.lisp.  Since in most cases a register SC is preferable,
      emit-coerce-vop now searches these first.
      
      Note that there are a few VOPs on the X86 port for which a stack SC is
      preferable, typically when the argument must be in memory,
      e.g. integer to float coercion, so this could use a little move work.
      
      
      * Add-representation-costs ignores the representation costs for MOVE
      VOPs when the representation of neither argument has been
      determined. In this case select-tn-representation chooses the first
      possible representation which may not be the most appropriate, and
      which can be improved upon by delaying the choice for the MOVE VOPs.
      
      This patch modifies select-representations to use two passes. On the
      first pass ambiguous choices are ignored giving a better chance for
      the propagation of argument and result representations for the MOVE
      VOPs after which a second pass can make a better choice.  This
      required an extension to select-tn-representation to return a second
      value indicating if a unique choice could be made.
      a9e601ad
  12. Dec 21, 1997
  13. Dec 20, 1997
  14. Dec 19, 1997
  15. Dec 18, 1997
  16. Dec 17, 1997
Loading