Skip to content
Snippets Groups Projects
  1. Jan 25, 2016
  2. Jan 23, 2016
  3. Jan 18, 2016
  4. Jan 16, 2016
  5. Jan 14, 2016
  6. Jan 13, 2016
    • Raymond Toy's avatar
      Restore the FPU state before exiting. · d7850f57
      Raymond Toy authored
      Put an unwind-protect around the error calls.  The cleanup form
      restores the floating-point modes from the sigcontext so that the mode
      is restored.  This is needed, I think, because we throw so that the
      signal handler doesn't return so the sigcontext isn't restored.  If we
      don't restore the fpu state, it's set to the default processor state.
      We want the default state when calling error.
      
      In this way, things like (* 1d300 1d300) signals an overflow, and when
      we throw to top-level, the floating-point modes are restored to their
      original values they had before.
      d7850f57
  7. Jan 10, 2016
    • Raymond Toy's avatar
      In WITH-FLOAT-TRAPS-*, remove the unused junk modifying the state. · d9763e90
      Raymond Toy authored
      We just want to return the original modes, so remove all the old
      commented out stuff that was modifying the original modes to some
      strange state.  This makes a lot more sense to me if
      WITH-FLOAT-TRAPS-* actually restored the modes exactly as they were
      before running the body.
      d9763e90
    • Raymond Toy's avatar
      Handle FPU exceptions better. · da2ff74d
      Raymond Toy authored
      In sigfpe-handler, don't modify the modes; just use whatever they
      are. (They should be the default values.)
      
      In with-float-traps-*, actually just restore the floating-point mode
      to the exact original mode instead of trying to mask things out.
      da2ff74d
    • Raymond Toy's avatar
      Handle FP exceptions better. · e63bc1e9
      Raymond Toy authored
      Don't restore the fpu state from the context in the interrupt handler
      code (interrupt_handle_now) because that just makes the fpu state the
      same as the sigcontext that received the exception.  I think this was
      done to reset the x87 fpu precision to 53-bit so that lisp can
      continue with default double-float rounding.  This isn't needed
      anymore since lisp doesn't use x87 anymore.
      
      In SIGFPE-HANDLER, don't modify the current fp state based on the
      state from the sigcontext.
      
      These two items cause the arithmetic-error exception printer to
      trigger inexact when printing out the args.  We add a few debugging
      prints for now so we can see what the FP state is in the handler.
      Remove them later.
      e63bc1e9
  8. Jan 09, 2016
  9. Jan 08, 2016
  10. Jan 07, 2016
  11. Jan 03, 2016
    • Raymond Toy's avatar
      Merge branch 'rtoy-issue-16' into 'master' · c7e71ee2
      Raymond Toy authored
      Handle search lists in pathname-match-p.
      
      Allow search lists in pathname-match-p.  For each arg, we enumerate
      the possible values of the search list and try to find a match between
      the path and the wild path.  If there's a match, return true.
      
      Tests added for some cases of pathname-match-p with search lists.
      
      Fix issue #16.
      
      See merge request !6
      c7e71ee2
  12. Jan 01, 2016
  13. Dec 31, 2015
  14. Dec 30, 2015
    • Raymond Toy's avatar
      Merge branch 'rtoy-issue-14' into 'master' · a610d96c
      Raymond Toy authored
      WITH-FLOAT-TRAPS-ENABLED was incorrectly setting accrued exceptions.
      
      Fix issue #14.
      
      WITH-FLOAT-TRAPS-ENABLED was leaving the accrued (and current)
      exceptions unchanged, but it should have cleared out any values there
      that matched the exceptions to be enabled.  Without this, the next x87
      operation would signal an exception if an accrued exception matched
      an enabled exception.  This was the cause of issue #14.  (Note that
      for x87, the accrued exception is the same as current exception.)
      
      See merge request !5
      a610d96c
    • Raymond Toy's avatar
      WITH-FLOAT-TRAPS-ENABLED was incorrectly setting accrued exceptions. · edb5af9b
      Raymond Toy authored
      Fix issue #14.
      
      WITH-FLOAT-TRAPS-ENABLED was leaving the accrued (and current)
      exceptions unchanged, but it should have cleared out any values there
      that matched the exceptions to be enabled.  Without this, the next x87
      operation would signal an exception if an accrued exception matched
      an enabled exception.  This was the cause of issue #14.  (Note that
      for x87, the accrued exception is the same as current exception.)
      edb5af9b
    • Raymond Toy's avatar
      Regenerate due to new functions. · a65cf4a4
      Raymond Toy authored
      a65cf4a4
    • Raymond Toy's avatar
      Add %SET-FLOATING-POINT-MODES and %GET-FLOATING-POINT-MODES functions. · b4771d76
      Raymond Toy authored
      To aid in debugging floating point modes, add two new functions:
      
      o %SET-FLOATING-POINT-MODES is like SET-FLOATING-POINT-MODES but
        applies the result to a specified mode value, returning the new mode
        value (as an integer).  This is useful for investigating different
        mode values without modifying the actual hardware mode.
      o %GET-FLOATING-POINT-MODES is like GET-FLOATING-POINT-MODES but uses
        an integer argument instead of the actual floating-point mode.
        Useful when used with %SET-FLOATING-POINT-MODE or on its own.
      b4771d76
  15. Dec 28, 2015
Loading