Ignore:
Timestamp:
Oct 14, 2008, 6:30:00 PM (13 years ago)
Author:
gz
Message:

Merge/bootstrap assorted low level stuff from trunk - kernel, syscall stuff, lowmem-bias, formatting tweaks, a few bug fixes included

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/working-0711/ccl/compiler/optimizers.lisp

    r10617 r11089  
    18411841      `(eql (lisptag ,n) ,cons-tag))))
    18421842
    1843 (define-compiler-macro consp (n)
    1844   (let* ((cons-tag (arch::target-cons-tag (backend-target-arch *target-backend*))))
    1845   `(eql (fulltag ,n) ,cons-tag)))
     1843(define-compiler-macro consp (&whole call n)
     1844  (let* ((arch (backend-target-arch *target-backend*))
     1845         (cons-tag (arch::target-cons-tag arch))
     1846         (nil-tag (arch::target-null-tag arch)))
     1847    (if (= nil-tag cons-tag)
     1848      call
     1849      `(eql (fulltag ,n) ,cons-tag))))
    18461850
    18471851(define-compiler-macro bignump (n)
     
    20742078      `(let* ((,typecode (typecode ,x)))
    20752079        (declare (type (unsigned-byte 8) ,typecode))
    2076         #+ppc32-target
    2077         (or (= ,typecode ppc32::tag-fixnum)
    2078          (and (>= ,typecode ppc32::min-numeric-subtag)
    2079           (<= ,typecode ppc32::max-real-subtag)))
     2080        #+(or ppc32-target x8632-target)
     2081        (or (= ,typecode target::tag-fixnum)
     2082         (and (>= ,typecode target::min-numeric-subtag)
     2083          (<= ,typecode target::max-real-subtag)))
    20802084        #+ppc64-target
    20812085        (if (<= ,typecode ppc64::subtag-double-float)
     
    24422446  `(read-char-internal ,stream ,eof-error-p (values ,eof-value ,recursive-p)))
    24432447
     2448
    24442449(provide "OPTIMIZERS")
Note: See TracChangeset for help on using the changeset viewer.