Skip to content
Snippets Groups Projects
Commit 61589832 authored by ram's avatar ram
Browse files

Fixed DEBUG-FUNCTION-FROM-PC to correctly deal with PCs in elsewhere code.

parent 4648b314
No related branches found
No related tags found
No related merge requests found
...@@ -784,12 +784,20 @@ ...@@ -784,12 +784,20 @@
(declare (simple-vector function-map)) (declare (simple-vector function-map))
(if (= len 1) (if (= len 1)
(make-compiled-debug-function (svref function-map 0) component) (make-compiled-debug-function (svref function-map 0) component)
(let ((i 1)) (let ((i 1)
(elsewhere-p
(>= pc (c::compiled-debug-function-elsewhere-pc
(svref function-map 0)))))
(declare (type c::index i)) (declare (type c::index i))
(loop (loop
(when (or (= i len) (< pc (svref function-map i))) (when (or (= i len)
(return (make-compiled-debug-function (svref function-map (1- i)) (< pc (if elsewhere-p
component))) (c::compiled-debug-function-elsewhere-pc
(svref function-map (1+ i)))
(svref function-map i))))
(return (make-compiled-debug-function
(svref function-map (1- i))
component)))
(incf i 2))))))) (incf i 2)))))))
;;; FUNCTION-CODE-HEADER -- Internal. ;;; FUNCTION-CODE-HEADER -- Internal.
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment