Changeset 8233


Ignore:
Timestamp:
Jan 21, 2008, 8:12:56 PM (17 years ago)
Author:
R. Matthew Emerson
Message:

Preserve nargs/eax in default-optionals. Correct emit-aligned-label for x8632.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/ia32/compiler/X86/X8632/x8632-vinsns.lisp

    r8232 r8233  
    275275                                       ((n :u16const))
    276276                                       ((temp :u32)))
     277  ;; xxx temp will probably be eax (which is nargs, too), so preserve it.
     278  (pushl (:%l x8632::nargs.l))
    277279  (rcmpw (:%w x8632::nargs) (:$w (:apply ash n x8632::word-shift)))
    278280  (movw (:%w x8632::nargs) (:%w temp))
     
    280282  :loop
    281283  (addw (:$w x8632::fixnumone) (:%w temp))
     284  (pushl (:$l x8632::nil-value))
    282285  (cmpw (:$w (:apply ash n x8632::word-shift)) (:%w temp))
    283   (pushl (:$l x8632::nil-value))
    284286  (jne :loop)
    285   :done)
     287  :done
     288  (popl (:%l x8632::nargs.l)))
    286289
    287290(define-x8632-vinsn save-lisp-context-no-stack-args (()
     
    13651368  (pushl (:%l x8632::ra0)))
    13661369
    1367 ;; ????
    13681370(define-x8632-vinsn emit-aligned-label (()
    13691371                                        ((label :label)))
     1372  ;; We don't care about label.
     1373  ;; We just want the label following this stuff to be tra-tagged.
    13701374  (:align 3)
    1371   (:long (:^ label)))
     1375  (:long 0)
     1376  (:byte 0))
    13721377
    13731378;; pass-multiple-values-symbol
Note: See TracChangeset for help on using the changeset viewer.