Custom Query (1030 matches)

Filters
 
Or
 
  
 
Columns

Show under each result:


Results (979 - 981 of 1030)

Ticket Resolution Summary Owner Reporter
#1269 fixed Lambdas don't optimize Gary Byers Shannon Spires
Description

Optimization works on defun forms like the following:

(defun fptest1 (a b)
  (declare (optimize (speed 3) (safety 1) (debug 1))
           (single-float a b))
  (+ a b))

(disassemble 'fptest1)

We can see from the disassembly that it's using the addss* instruction and not calling .SPBUILTIN-PLUS, so we know the optimization is happening.

[*addss is X86. The ARM equivalent is fadds.]

But lambda forms like the following don't optimize in CCL:

(defun fptest8 ()
  (declare (optimize (speed 3) (safety 0) (debug 0)))
  (lambda (a b)
    (declare (optimize (speed 3) (safety 0) (debug 0))
             (single-float a b))
    (+ a b)))

(disassemble (fptest8))

Because the disassembly contains the telltale line (jmpq (@ .SPBUILTIN-PLUS)), we know that optimization isn't happening.

However, the following works:

(defparameter fptest14
        (lambda (a b)
          (declare (optimize (speed 3) (safety 1) (debug 1))
                   (single-float a b))
          (+ a b)))

(disassemble fptest14)

As you can see, the resulting disassembly has no call to .SPBUILTIN-PLUS but rather it calls (addss (% fp1) (% fp0)), indicating optimization is happening. So using a global variable rather than a defun seems to be a partial workaround for anonymous functions, but not closures.

#1309 fixed Make atomic-incf-decf handle structure references Shannon Spires Shannon Spires
Description

atomic-incf-decf throws an error if you hand it a structure reference.

#1346 fixed Writing :MACOS external-format files does the wrong thing Shannon Spires Shannon Spires
Description
(with-open-file (s "ccl:line-termination-test-macos.txt"
                   :direction :output
                   :if-exists :supersede
                   :external-format :macos)
  (dotimes (i 10)
    (write-line "This is a test" s)))

Produces a file that has #x0A line endings, when they should be #x0D.

Batch Modify
Note: See TracBatchModify for help on using batch modify.
Note: See TracQuery for help on using queries.