Skip to content
Snippets Groups Projects
  1. Dec 05, 1997
  2. Dec 03, 1997
  3. Nov 29, 1997
  4. Nov 25, 1997
    • dtc's avatar
      Re-write of the x86 port debug support. This should give a significant · fa77470b
      dtc authored
      improvement in reliability necessary for breakpoint and single
      stepping to have a chance, and has been tested in the experimental
      code and works on FreeBSD and Linux.
      
      The code object for a given return address in now located with the help
      of the GC support function component_ptr_from_pc which can reliably
      locate the code objects. This uses a forward search of the heap so is
      rather slow - some caching will be needed for better performance.
      
      The stack parsing has been re-written using a backtracking search to
      improve the chance of finding a valid frame path given that the
      control changes between C and Lisp conventions.  The x86-lra hack is
      no longer necessary (was unreliable anyway) allowing x86 code to be
      more compact. The return address is now handled as a SAP which is
      acceptable because the code doesn't move with CGC, and GENCGC ensures
      that code objects in the dynamic heap with return addresses on the
      stack are not moved. However there are known problems under GENCGC
      when return addresses are move off the stack during some breakpoint
      operations in which case the code object may move.
      fa77470b
  5. Nov 18, 1997
  6. Nov 15, 1997
  7. Nov 07, 1997
  8. Nov 04, 1997
    • dtc's avatar
      Add a check that objects obtained from the stack in · 54c1961a
      dtc authored
      sub-access-debug-var-slot (x86) are valid.  Debug variable locations
      are not always valid, and on the x86 there can be non-descriptor
      objects on the stack.
      
      Cleanup the sap-ref code in sub-access-debug-var-slot and
      sub-set-debug-var-slot which had been using convoluted code to work
      around sap-ref bugs that have since been fixed.
      54c1961a
    • dtc's avatar
      Merge in changes to the x86 backend from the gencgc branch, allowing · 725ab9ee
      dtc authored
      common binaries to be run on both:
      
      * The immediate-stack storage class has been removed, this is
      unnecessary as the descriptor-stack SC can be used. It may have once
      been part of some GC stragety to reduce the number of stack slots that
      needed to be noted for a GC.
      
      * The object allocation has been abstracted and cleaned up. This
      should produce slightly faster smaller code with CGC, and can be
      compiled to support inline allocation with GENCGC.  CGC compiled code
      will run under GENCGC, and GENCGC binaries that don't use inline
      allocation will run under CGC.
      
      * A random hash is now placed in the unused symbol object slot (the
      symbol-hash slot). This saves flushing the info cache at each GC, and
      may have other uses for symbol based hash tables. Should help MP
      safety.
      
      * Common set of static symbols used by both CGC and GENCGC.
      
      * Corrections to the stack-ref VOP; now returns lisp objects not
      unsigned numbers. Required some patches to debug-int.
      
      * Inline unsigned/signed byte 32 to bignum allocation enabled.
      
      * Support for the x86 xadd instruction applied to instance slot and
      symbol values - may be handy for some MP code.
      
      * Bump up the FASL file version from 1 to 2.
      725ab9ee
  9. Feb 08, 1997
    • pw's avatar
      From: Douglas Thomas Crosher <dtc@scrooge.ee.swin.oz.au> · 0efcc964
      pw authored
      Message-Id: <199702041630.DAA06602@scrooge.ee.swin.oz.au>
      Subject: Re: making eval-functions FINs
      To: cmucl-imp@cons.org
      Date: Wed, 5 Feb 1997 03:30:55 +1100 (EST)
      In-Reply-To: <199702040300.EAA16744@knight.cons.org> from "Rob MacLachlan" at Feb 3, 97 09:59:02 pm
      X-Mailer: ELM [version 2.4 PL24]
      Content-Type: text
      
      
      > I seem to have lost the most recent message about fixing compiler/eval to
      > use FINs instead of closures.  But yes, I would think that the current
      > EVAL-FUNCTION  slots should become slots in the interpreted function FIN.
      > GET-EVAL-FUN when would then become IDENTITY, so it should probably be
      > flushed entirely.
      
      Done; moved eval-function data into the interpreted-function FIN, also
      added a closure slot so describe can access it easily. Revised patches
      below.
      
      Douglas
      0efcc964
  10. Feb 05, 1997
  11. Jan 18, 1997
  12. Oct 31, 1994
  13. Oct 19, 1994
  14. Jul 18, 1994
  15. Jun 22, 1994
  16. Apr 06, 1994
  17. Nov 08, 1993
  18. Nov 07, 1993
  19. Aug 30, 1993
  20. Jul 24, 1993
  21. Jul 22, 1993
  22. May 28, 1993
  23. May 27, 1993
  24. May 21, 1993
  25. Feb 15, 1993
  26. Jan 15, 1993
  27. Jan 13, 1993
  28. Dec 17, 1992
  29. Dec 13, 1992
  30. Aug 19, 1992
  31. Jul 09, 1992
  32. Jun 22, 1992
  33. Jun 04, 1992
  34. May 26, 1992
  35. May 24, 1992
    • wlott's avatar
      Instead of using a hash table to map from compiled-debug-functions to the · 8dbaed74
      wlott authored
      corresponding :function-end breakpoint start-helper, use a slot in the
      c-d-f structure.
      
      Added a :unknown-return-partner kind of breakpoint, which is used
      internally to mark the partner breakpoint for :unknown-return
      code-locations.
      
      Changed MAKE-COMPILED-CODE-LOCATION to be called MAKE-KNOWN-CODE-LOCATION
      because that is what it was doing.  Also, made the optional args required,
      because they really are.
      
      Changed MAKE-UNKNOWN-CODE-LOCATION to be called MAKE-COMPILED-CODE-LOCATION,
      because it is not known to be unknown (i.e. :unsure).
      
      Changed CODE-LOCATION-FROM-PC to check to see if there is a breakpoint
      installed at that pc.  If so, use the code-location from that breakpoint.
      Otherwise, make an :unsure unknown-p code-location so it can be filled in
      if needed.
      
      Fixed FRAME-CATCHES to take into account the code components header length
      when computing the pc offset for the :nlx-entry code location.
      
      Fixed code-location breakpoints to correctly handle :unknown-return and
      :single-value-return code-locations.
      8dbaed74
  36. May 18, 1992
  37. Mar 10, 1992
Loading