Changeset 12013 for release/1.3


Ignore:
Timestamp:
May 7, 2009, 6:32:50 AM (10 years ago)
Author:
gb
Message:

Propagate r12010/r12011 (don't offer restarts for UNBOUND-VARIABLE signaled
via a UUO until we can do so reliably) to 1.3.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • release/1.3/source/level-1/x86-error-signal.lisp

    r11716 r12013  
    102102                          (encoded-gpr-lisp xp (ldb (byte 4 0) op2))
    103103                          frame-ptr)))
     104                  ((= op1 #x90)
     105                   (setq skip (%check-anchored-uuo xcf 3))
     106                   (setf (encoded-gpr-lisp xp (ldb (byte 4 4) op2))
     107                         (%kernel-restart-internal $xvunbnd
     108                                                   (list
     109                                                    (encoded-gpr-lisp
     110                                                     xp
     111                                                     (ldb (byte 4 0) op2)))
     112                                                   frame-ptr)))
    104113                  ((< op1 #xa0)
    105114                   (setq skip (%check-anchored-uuo xcf 2))
    106                    ;; #x9x - register X is a symbol.  It's unbound.
    107                    (%kernel-restart-internal $xvunbnd
    108                                              (list
    109                                               (encoded-gpr-lisp
     115                   ;; #x9x, x>0 - register X is a symbol.  It's unbound,
     116                   ;; but we don't have enough info to offer USE-VALUE,
     117                   ;; STORE-VALUE, or CONTINUE restarts.
     118                   (%error (make-condition 'unbound-variable
     119                                           :name
     120                                           (encoded-gpr-lisp
    110121                                               xp
    111122                                               (ldb (byte 4 0) op1)))
    112                                              frame-ptr))
     123                           ()
     124                           frame-ptr))
    113125                  ((< op1 #xb0)
    114126                   (setq skip (%check-anchored-uuo xcf 2))
     
    275287                          (encoded-gpr-lisp xp (ldb (byte 4 0) op2))
    276288                          frame-ptr)))
     289                  ((= op1 #x90)
     290                   (setq skip (%check-anchored-uuo xcf 3))
     291                   (setf (encoded-gpr-lisp
     292                          xp
     293                          (ldb (byte 3 0) op2))
     294                         (%kernel-restart-internal $xvunbnd
     295                                                   (list
     296                                                    (encoded-gpr-lisp
     297                                                     xp
     298                                                     (ldb (byte 3 0) op2)))
     299                                                   frame-ptr)))
    277300                  ((< op1 #xa0)
    278301                   (setq skip (%check-anchored-uuo xcf 2))
    279                    ;; #x9x - register X is a symbol.  It's unbound.
    280                    (%kernel-restart-internal $xvunbnd
    281                                              (list
    282                                               (encoded-gpr-lisp
     302                   ;; #x9x, x>- - register X is a symbol.  It's unbound,
     303                   ;; but we don't have enough info to offer USE-VALUE,
     304                   ;; STORE-VALUE, or CONTINUE restart
     305                   (%error (make-condition 'unbound-variable
     306                                           :name
     307                                           (encoded-gpr-lisp
    283308                                               xp
    284309                                               (ldb (byte 3 0) op1)))
    285                                              frame-ptr))
     310                           ()
     311                           frame-ptr))
    286312                  ((< op1 #xb0)
    287313                   (setq skip (%check-anchored-uuo xcf 2))
Note: See TracChangeset for help on using the changeset viewer.