mirror of
git://git.code.sf.net/p/sbcl/sbcl
synced 2026-09-10 07:26:40 -04:00
Implement unbound variable restarts for arm64.
This commit is contained in:
parent
73c8c9f2ca
commit
d7c22a0902
|
|
@ -131,9 +131,12 @@
|
|||
LOCAL))))
|
||||
|
||||
(when check-boundp
|
||||
(let ((err-lab (generate-error-code vop 'unbound-symbol-error symbol)))
|
||||
(inst cmp value unbound-marker-widetag)
|
||||
(inst b :eq err-lab)))))
|
||||
(assemble ()
|
||||
(let* ((*location-context* (make-restart-location RETRY value))
|
||||
(err-lab (generate-error-code vop 'unbound-symbol-error symbol)))
|
||||
(inst cmp value unbound-marker-widetag)
|
||||
(inst b :eq err-lab))
|
||||
RETRY))))
|
||||
|
||||
(define-vop (fast-symbol-value symbol-value)
|
||||
(:policy :fast)
|
||||
|
|
|
|||
|
|
@ -590,7 +590,7 @@
|
|||
(defun ggg+1 () (1+ *ggg*))
|
||||
|
||||
(with-test (:name :restart-unbound-variable
|
||||
:skipped-on (not (and :x86-64 :sb-thread)))
|
||||
:skipped-on (not (and (or :arm64 :x86-64) :sb-thread)))
|
||||
(let ((success nil))
|
||||
(handler-bind
|
||||
((unbound-variable
|
||||
|
|
|
|||
Loading…
Reference in a new issue