[movitz-cvs] CVS movitz/losp/muerte
ffjeld
ffjeld at common-lisp.net
Sat Apr 7 20:49:17 UTC 2007
Update of /project/movitz/cvsroot/movitz/losp/muerte
In directory clnet:/tmp/cvs-serv30506
Modified Files:
interrupt.lisp
Log Message:
Improved error decoding for exception 69.
--- /project/movitz/cvsroot/movitz/losp/muerte/interrupt.lisp 2007/03/26 21:11:43 1.55
+++ /project/movitz/cvsroot/movitz/losp/muerte/interrupt.lisp 2007/04/07 20:49:17 1.56
@@ -10,7 +10,7 @@
;;;; Author: Frode Vatvedt Fjeld <frodef at acm.org>
;;;; Created at: Wed Apr 7 01:50:03 2004
;;;;
-;;;; $Id: interrupt.lisp,v 1.55 2007/03/26 21:11:43 ffjeld Exp $
+;;;; $Id: interrupt.lisp,v 1.56 2007/04/07 20:49:17 ffjeld Exp $
;;;;
;;;;------------------------------------------------------------------
@@ -342,10 +342,15 @@
$eip $eax $ebx $ecx $edx)
(dotimes (i 100000)
(with-inline-assembly (:returns :nothing) (:nop))))
- (69 (error 'type-error
- :datum (dereference $eax)
- :expected-type (aref #(cons function)
- (dereference $ecx :unsigned-byte8))))
+ (69 (let ((expected-type
+ (aref #(cons function)
+ (dereference $ecx :unsigned-byte8))))
+ (error 'type-error
+ :datum (case expected-type
+ (function
+ (dereference $edx))
+ (t (dereference $eax)))
+ :expected-type expected-type)))
(70 (error "Unaligned memref access."))
((5 55)
(let* ((old-bottom (prog1 (%run-time-context-slot nil 'stack-bottom)
More information about the Movitz-cvs
mailing list