use preserved thread cells for the knot-tying cache

(this makes a difference in the acquire gradual typing
benchmark, which uses nested threads via the sandbox library)
This commit is contained in:
Robby Findler 2018-05-17 08:39:56 -05:00
parent 774b02a0b8
commit 54989bddec

View File

@ -221,7 +221,7 @@
(define (make-blame->val-np->val ctc)
(define list-check? (recursive-contract-list-contract? ctc))
(define blame-accepting-func-cell (make-thread-cell #f))
(define blame-accepting-func-cell (make-thread-cell #f #t))
(define (do-list-check val neg-party blame-known)
(when list-check?
(unless (list? val)
@ -237,7 +237,7 @@
[else
(define r-ctc (force-recursive-contract ctc))
(define f (get/build-late-neg-projection r-ctc))
(define val-neg-party-acceptor (make-thread-cell #f))
(define val-neg-party-acceptor (make-thread-cell #f #t))
(λ (val neg-party)
(cond
[(thread-cell-ref val-neg-party-acceptor)