master: Overwrite the _first_ tombstone in a probing sequence

snuglas via Sbcl-commits <[email protected]> Mon, 06 Jul 2026 16:59:43 +0000
Newsgroups gmane.lisp.steel-bank.cvs
Message-ID <[email protected]>
The branch "master" has been updated in SBCL:
       via  c36b941e34587b004863a0dc38ba1749869ebf29 (commit)
      from  e5edefadf3d33c883d4564c8e4d1ca141ba80ae0 (commit)

- Log -----------------------------------------------------------------
commit c36b941e34587b004863a0dc38ba1749869ebf29
Author: Douglas Katzman <[email protected]>
Date:   Mon Jul 6 16:59:33 2026 +0000

    Overwrite the _first_ tombstone in a probing sequence
    
    Taking the last, as was done, tends to lengthen the probing loop
---
 src/compiler/sset.lisp | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/compiler/sset.lisp b/src/compiler/sset.lisp
index 565e40c92..d78e91d55 100644
--- a/src/compiler/sset.lisp
+++ b/src/compiler/sset.lisp
@@ -114,7 +114,7 @@
                          (setf (aref vector hash) element)))
                   (return t))
                  ((eql current -1)
-                  (setf deleted-index hash))
+                  (unless deleted-index (setf deleted-index hash)))
                  ((eq current element)
                   (return nil)))))
 

-----------------------------------------------------------------------


hooks/post-receive
-- 
SBCL