Changeset 3605


Ignore:
Timestamp:
Mar 5, 2006, 1:29:02 AM (14 years ago)
Author:
gb
Message:

New arch-specific macros.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/ccl/lib/number-macros.lisp

    r3599 r3605  
    1818
    1919(eval-when (:compile-toplevel :execute)
    20   (require "PPC32-ARCH" )
    21   (require "PPC-LAPMACROS")
    2220  (require "LISPEQU")
    2321  )
    2422
    25 (defmacro %make-sfloat ()
    26   (target-arch-case
    27    (:ppc32
    28     `(%alloc-misc ppc32::single-float.element-count ppc32::subtag-single-float))
    29    (:ppc64
    30     (error "%MAKE-SFLOAT shouldn't be used in code targeting PPC64"))))
     23(declare-arch-specific-macro %make-sfloat)
    3124
    32 (defmacro %make-dfloat ()
    33   (target-arch-case
    34    (:ppc32
    35     `(%alloc-misc ppc32::double-float.element-count ppc32::subtag-double-float))
    36    (:ppc64
    37     `(%alloc-misc ppc64::double-float.element-count ppc64::subtag-double-float))))
     25(declare-arch-specific-macro %make-dfloat)
    3826
    3927(defmacro require-null-or-double-float-sym (sym)
     
    4331
    4432
    45 (defmacro %numerator (x)
    46   (target-arch-case
    47    (:ppc32 `(%svref ,x ppc32::ratio.numer-cell))
    48    (:ppc64 `(%svref ,x ppc64::ratio.numer-cell))))
     33(declare-arch-specific-macro %numerator)
    4934
    50 (defmacro %denominator (x)
    51   (target-arch-case
    52    (:ppc32 `(%svref ,x ppc32::ratio.denom-cell))
    53    (:ppc64 `(%svref ,x ppc64::ratio.denom-cell))))
     35(declare-arch-specific-macro %denominator)
    5436
    55 (defmacro %realpart (x)
    56   (target-arch-case
    57    (:ppc32 `(%svref ,x ppc32::complex.realpart-cell))
    58    (:ppc64 `(%svref ,x ppc64::complex.realpart-cell))))
     37(declare-arch-specific-macro %realpart)
    5938
    60 (defmacro %imagpart (x)
    61   (target-arch-case
    62    (:ppc32 `(%svref ,x ppc32::complex.imagpart-cell))
    63    (:ppc64 `(%svref ,x ppc64::complex.imagpart-cell))))
     39(declare-arch-specific-macro %imagpart)
    6440
    6541
     
    8157      ,@body)))
    8258
    83 (setf (macro-function 'with-ppc-stack-double-floats) (macro-function 'with-stack-double-floats))
     59
    8460
    8561
     
    162138(provide "NUMBER-MACROS")
    163139
    164 ; end of number-macros.lisp
     140;;; end of number-macros.lisp
Note: See TracChangeset for help on using the changeset viewer.