Ignore:
Timestamp:
May 10, 2005, 6:36:37 AM (14 years ago)
Author:
gb
Message:

some more #+ppc64-target conditionalization; still more to be done
(especially bignum stuff.)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/ccl/level-0/l0-pred.lisp

    r964 r1326  
    245245(defun hairy-equal (x y)
    246246  (declare (optimize (speed 3)))
    247   ; X and Y are not EQL, and are both of tag ppc32::fulltag-misc.
     247  ;; X and Y are not EQL, and are both of tag target::fulltag-misc.
    248248  (let* ((x-type (typecode x))
    249249         (y-type (typecode y)))
    250250    (declare (fixnum x-type y-type))
    251     (if (and (>= x-type ppc32::subtag-vectorH)
    252              (>= y-type ppc32::subtag-vectorH))
    253         (let* ((x-simple (if (= x-type ppc32::subtag-vectorH)
    254                              (ldb ppc32::arrayH.flags-cell-subtag-byte
    255                                   (the fixnum (%svref x ppc32::arrayH.flags-cell)))
     251    (if (and (>= x-type target::subtag-vectorH)
     252             (>= y-type target::subtag-vectorH))
     253        (let* ((x-simple (if (= x-type target::subtag-vectorH)
     254                             (ldb target::arrayH.flags-cell-subtag-byte
     255                                  (the fixnum (%svref x target::arrayH.flags-cell)))
    256256                             x-type))
    257                (y-simple (if (= y-type ppc32::subtag-vectorH)
    258                              (ldb ppc32::arrayH.flags-cell-subtag-byte
    259                                   (the fixnum (%svref y ppc32::arrayH.flags-cell)))
     257               (y-simple (if (= y-type target::subtag-vectorH)
     258                             (ldb target::arrayH.flags-cell-subtag-byte
     259                                  (the fixnum (%svref y target::arrayH.flags-cell)))
    260260                             y-type)))
    261261          (declare (fixnum x-simple y-simple))
    262           (if (= x-simple ppc32::subtag-simple-base-string)
    263               (if (= y-simple ppc32::subtag-simple-base-string)
     262          (if (= x-simple target::subtag-simple-base-string)
     263              (if (= y-simple target::subtag-simple-base-string)
    264264                  (locally
    265265                      (declare (optimize (speed 3) (safety 0)))
    266                     (let* ((x-len (if (= x-type ppc32::subtag-vectorH)
    267                                       (%svref x ppc32::vectorH.logsize-cell)
     266                    (let* ((x-len (if (= x-type target::subtag-vectorH)
     267                                      (%svref x target::vectorH.logsize-cell)
    268268                                      (uvsize x)))
    269269                           (x-pos 0)
    270                            (y-len (if (= y-type ppc32::subtag-vectorH)
    271                                       (%svref y ppc32::vectorH.logsize-cell)
     270                           (y-len (if (= y-type target::subtag-vectorH)
     271                                      (%svref y target::vectorH.logsize-cell)
    272272                                      (uvsize y)))
    273273                           (y-pos 0))
    274274                      (declare (fixnum x-len x-pos y-len y-pos))
    275                       (when (= x-type ppc32::subtag-vectorH)
     275                      (when (= x-type target::subtag-vectorH)
    276276                        (multiple-value-setq (x x-pos) (array-data-and-offset x)))
    277                       (when (= y-type ppc32::subtag-vectorH)
     277                      (when (= y-type target::subtag-vectorH)
    278278                        (multiple-value-setq (y y-pos) (array-data-and-offset y)))
    279279                      (%simple-string= x y x-pos y-pos (the fixnum (+ x-pos x-len)) (the fixnum (+ y-pos y-len))))))
    280280              ;;Bit-vector case or fail.
    281               (and (= x-simple ppc32::subtag-bit-vector)
    282                    (= y-simple ppc32::subtag-bit-vector)
     281              (and (= x-simple target::subtag-bit-vector)
     282                   (= y-simple target::subtag-bit-vector)
    283283                   (locally
    284284                       (declare (optimize (speed 3) (safety 0)))
    285                      (let* ((x-len (if (= x-type ppc32::subtag-vectorH)
    286                                        (%svref x ppc32::vectorH.logsize-cell)
     285                     (let* ((x-len (if (= x-type target::subtag-vectorH)
     286                                       (%svref x target::vectorH.logsize-cell)
    287287                                       (uvsize x)))
    288288                            (x-pos 0)
    289                             (y-len (if (= y-type ppc32::subtag-vectorH)
    290                                        (%svref y ppc32::vectorH.logsize-cell)
     289                            (y-len (if (= y-type target::subtag-vectorH)
     290                                       (%svref y target::vectorH.logsize-cell)
    291291                                       (uvsize y)))
    292292                            (y-pos 0))
    293293                       (declare (fixnum x-len x-pos y-len y-pos))
    294294                       (when (= x-len y-len)
    295                          (when (= x-type ppc32::subtag-vectorH)
     295                         (when (= x-type target::subtag-vectorH)
    296296                           (multiple-value-setq (x x-pos) (array-data-and-offset x)))
    297                          (when (= y-type ppc32::subtag-vectorH)
     297                         (when (= y-type target::subtag-vectorH)
    298298                           (multiple-value-setq (y y-pos) (array-data-and-offset y)))
    299299                         (do* ((i 0 (1+ i)))
     
    305305                           (incf y-pos))))))))
    306306        (if (= x-type y-type)
    307             (if (= x-type ppc32::subtag-istruct)
     307            (if (= x-type target::subtag-istruct)
    308308                (and (let* ((structname (%svref x 0)))
    309309                       (and (eq structname (%svref y 0))
     
    365365    creole-object                       ; 6
    366366    ;; 8-20 are unused
    367     xcode-vecor                         ; 7
     367    xcode-vector                        ; 7
    368368    bogus                               ; 8
    369369    bogus                               ; 9
     
    464464(defun structurep (form)
    465465  "True if the given object is a named structure, Nil otherwise."
    466   (= (the fixnum (typecode form)) ppc32::subtag-struct))
     466  (= (the fixnum (typecode form)) target::subtag-struct))
    467467
    468468(defun istructp (form)
    469   (= (the fixnum (typecode form)) ppc32::subtag-istruct))
     469  (= (the fixnum (typecode form)) target::subtag-istruct))
    470470
    471471(defun structure-typep (thing type)
    472   (if (= (the fixnum (typecode thing)) ppc32::subtag-struct)
     472  (if (= (the fixnum (typecode thing)) target::subtag-struct)
    473473    (if (memq type (%svref thing 0))
    474474      t)))
     
    476476
    477477(defun istruct-typep (thing type)
    478   (if (= (the fixnum (typecode thing)) ppc32::subtag-istruct)
     478  (if (= (the fixnum (typecode thing)) target::subtag-istruct)
    479479    (eq (%svref thing 0) type)))
    480480
     
    482482  "Return true if OBJECT is a SYMBOL, and NIL otherwise."
    483483  (if thing
    484     (= (the fixnum (typecode thing)) ppc32::subtag-symbol)
     484    (= (the fixnum (typecode thing)) target::subtag-symbol)
    485485    t))
    486486
    487487(defun packagep (thing)
    488   (= (the fixnum (typecode thing)) ppc32::subtag-package))
     488  (= (the fixnum (typecode thing)) target::subtag-package))
    489489
    490490; 1 if by land, 2 if by sea.
    491491(defun sequence-type (x)
    492   (unless (>= (the fixnum (typecode x)) ppc32::min-vector-subtag)
     492  (unless (>= (the fixnum (typecode x)) target::min-vector-subtag)
    493493    (or (listp x)
    494494        (report-bad-arg x 'sequence))))
    495495
    496496(defun uvectorp (x)
    497   (= (the fixnum (lisptag x)) ppc32::tag-misc))
     497  (= (the fixnum (fulltag x)) target::fulltag-misc))
    498498
    499499(setf (type-predicate 'uvector) 'uvectorp)
Note: See TracChangeset for help on using the changeset viewer.