2007-11-08 12:07:48 -05:00
|
|
|
Performance Bugs:
|
|
|
|
|
|
|
|
Tail call optimization does not seem to always kick. In this
|
|
|
|
example, x which comes in (disp -4 %esp) is copied into
|
|
|
|
(disp -4 %esp) even though it was there to begin with.
|
|
|
|
|
|
|
|
> (lambda (x) (quotient x x))
|
|
|
|
|
|
|
|
---
|
|
|
|
(cmpl -4 %eax)
|
|
|
|
(jne (label L16))
|
|
|
|
(label L17)
|
|
|
|
(movl (disp -4 %esp) %edi)
|
|
|
|
(movl (disp -4 %esp) %eax)
|
|
|
|
(movl %edi %ebx)
|
|
|
|
(movl (disp (obj quotient) 7) %edi)
|
|
|
|
(movl %ebx (disp -4 %esp))
|
|
|
|
(movl %eax (disp -8 %esp))
|
|
|
|
(movl -8 %eax)
|
|
|
|
(jmp (disp -3 %edi))
|
|
|
|
(label L16)
|
|
|
|
(jmp (label SL_invalid_args))
|
|
|
|
(nop)
|
|
|
|
|
|
|
|
Other Bugs:
|
2007-08-28 15:37:51 -04:00
|
|
|
|
2007-09-12 23:34:21 -04:00
|
|
|
* fxsra does not work for large numbers
|
|
|
|
|
2007-08-28 17:45:54 -04:00
|
|
|
* Ensure immutable exports
|
2007-08-28 15:37:51 -04:00
|
|
|
|
|
|
|
|
2007-06-10 13:21:41 -04:00
|
|
|
Email Will Clinger regarding:
|
|
|
|
|
|
|
|
Larceny v0.93 "Deviated Prevert" (Nov 10 2006 04:27:45, precise:BSD
|
|
|
|
Unix:unified)
|
|
|
|
|
|
|
|
|
|
|
|
> (exact->inexact #xFFFFFFFFFFFFFFFF)
|
|
|
|
9.223372036854776e18
|
|
|
|
|
|
|
|
> #xFFFFFFFFFFFFFFFF
|
|
|
|
18446744073709551615
|
|
|
|
|
|
|
|
======================================================================
|
2007-11-08 12:07:48 -05:00
|
|
|
FIXED:
|
|
|
|
|
|
|
|
* pretty-print goes into infinite loop on cyclic data
|
|
|
|
|
|
|
|
* set! on global names is not working.
|
|
|
|
|
|
|
|
* (exact->inexact (/ (expt 2 3000) (- (expt 2 3000) 1)))
|
|
|
|
should return 1.0, not +nan.0.
|
2007-06-10 13:21:41 -04:00
|
|
|
|
2007-09-05 02:41:12 -04:00
|
|
|
* FIXED symbol calls are not checking for non-procedure.
|
2007-06-10 13:21:41 -04:00
|
|
|
|
|
|
|
|
2007-01-15 02:44:45 -05:00
|
|
|
* FIX: Error in generate-code: BUG: unhandles single rv.
|
2006-12-25 03:38:18 -05:00
|
|
|
|
2007-05-14 18:16:00 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Not applicable anymore:
|
|
|
|
|
2007-05-04 03:48:49 -04:00
|
|
|
* In libcompile.ss:
|
|
|
|
If you move the (initialize-system) call to the very bottom of the
|
|
|
|
library, the system crashes on startup.
|
|
|
|
|
2007-05-14 18:16:00 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
2007-06-10 13:21:41 -04:00
|
|
|
|
2007-05-14 18:16:00 -04:00
|
|
|
Fixed:
|
|
|
|
|
2006-12-25 03:38:18 -05:00
|
|
|
* Investigate what happens when an interrupt occurs during a write.
|
|
|
|
|
|
|
|
> (define (f) (write (gensym)) (newline) (f))
|
|
|
|
> (f)
|
|
|
|
...
|
|
|
|
#{g17660 |adxhQB29QdSYPKBS|}
|
|
|
|
#{g17661 |ZaFfTMGRz!c17&zm|}
|
|
|
|
#{g17662 |>yF!AMbaIL$dTG>B|}#{g17662 |>yF!AMbaIL$dTG>B|}Error:
|
|
|
|
interrupted.
|
|
|
|
>
|
|
|
|
|
2007-01-19 18:13:44 -05:00
|
|
|
Two displays occurred at the end.
|
2007-05-04 03:48:49 -04:00
|
|
|
|
2007-06-10 13:21:41 -04:00
|
|
|
|