/[cmucl]/src/general-info/release-20a.txt
ViewVC logotype

Contents of /src/general-info/release-20a.txt

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.3 - (show annotations)
Fri Mar 20 14:54:29 2009 UTC (5 years ago) by rtoy
Branch: MAIN
CVS Tags: label-2009-03-25
Changes since 1.2: +4 -0 lines
File MIME type: text/plain
This big of code causes CMUCL to spend huge amounts of time trying to
simplify the union of disjoint double-float types:

(defun foo (arg)
  (declare (type double-double-float arg)
	   (optimize (speed 3) (space 0)))
  (let* ((x arg)
	 (xx 0w0)
	 (k 0)
	 (px (coerce k 'double-double-float))
	 (qx 0w0))
    (declare (type double-double-float x xx px qx)
	     (notinline poly-eval poly-eval-1))
    (setf x (- (- x (* px log2-c1)) (* px log2-c2)))
    (+ x 0d0)
    ))

Fix it:

code/type.lisp:
o Rename SIMPLIFY-BIG-INTEGER-UNION to SIMPLIFY-BIG-UNION
o SIMPLIFY-BIG-UNION takes an extra arg to specify the resulting type.
o Modify SIMPLIFY-UNIONS to handle float unions as well as integer
  unions.

general-info/release-20a.txt:
o Update
1 ========================== C M U C L 20 a =============================
2
3 [--- WORK IN PROGRESS ---]
4
5 The CMUCL project is pleased to announce the release of CMUCL 20a.
6 This is a major release which contains numerous enhancements and
7 bugfixes from the 19e release.
8
9 CMUCL is a free, high performance implementation of the Common Lisp
10 programming language which runs on most major Unix platforms. It
11 mainly conforms to the ANSI Common Lisp standard. CMUCL provides a
12 sophisticated native code compiler; a powerful foreign function
13 interface; an implementation of CLOS, the Common Lisp Object System,
14 which includes multimethods and a metaobject protocol; a source-level
15 debugger and code profiler; and an Emacs-like editor implemented in
16 Common Lisp. CMUCL is maintained by a team of volunteers collaborating
17 over the Internet, and is mostly in the public domain.
18
19 New in this release:
20
21
22 * Feature enhancements:
23
24 * ANSI compliance fixes:
25
26 * Bugfixes:
27 - CMUCL sometimes gets "stuck" during compilation where it is
28 trying to simplify the union of a large number of disjoint
29 numeric types. Previously, we handled the case of integer
30 types. Extend this to handle floats as well.
31
32 * Trac Tickets:
33 #31: pathname bug with :case :common
34 Fixed. The common case is applied to each part of the directory,
35 not to the directory as a whole.
36
37 * Other changes:
38
39 * Improvements to the PCL implementation of CLOS:
40
41 * Changes to building procedure:
42
43 This release is not binary compatible with code compiled using CMUCL
44 19f; you will need to recompile FASL files.
45
46 See <URL:http://www.cons.org/cmucl/> for download information,
47 guidelines on reporting bugs, and mailing list details.
48
49
50 We hope you enjoy using this release of CMUCL!
51

  ViewVC Help
Powered by ViewVC 1.1.5