X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2Fcompiler%2Ftarget-disassem.lisp;h=ae62e1a3061c06781d612fcba729f7c596d3420e;hb=edf8d3701ba59bd9f0c1bd027f3179b98250cfd0;hp=b34a6a1fedb8494400c67fc3f8a4f801d4ed15b6;hpb=7a5d64bca426192e259825e1cad3f47cd4f32247;p=sbcl.git diff --git a/src/compiler/target-disassem.lisp b/src/compiler/target-disassem.lisp index b34a6a1..ae62e1a 100644 --- a/src/compiler/target-disassem.lisp +++ b/src/compiler/target-disassem.lisp @@ -796,6 +796,7 @@ ;;; Make a disassembler-state object. (defun make-dstate (&optional (fun-hooks *default-dstate-hooks*)) (let ((sap + ;; FIXME: What is this for? This cannot be safe! (sb!sys:vector-sap (coerce #() '(vector (unsigned-byte 8))))) (alignment *disassem-inst-alignment-bytes*) (arg-column @@ -827,8 +828,8 @@ ;;; A SAP-MAKER is a no-argument function that returns a SAP. +;; FIXME: Are the objects we are taking saps for always pinned? #!-sb-fluid (declaim (inline sap-maker)) - (defun sap-maker (function input offset) (declare (optimize (speed 3)) (type (function (t) sb!sys:system-area-pointer) function) @@ -1016,7 +1017,7 @@ (sfcache-form-number-mapping-table cache) mapping-table)) (cond ((null toplevel-form) nil) - ((> form-number (length mapping-table)) + ((>= form-number (length mapping-table)) (warn "bogus form-number in form! The source file has probably ~@ been changed too much to cope with.") (when cache