From 048d4f9bee26fe0e9b23e44483de726642151994 Mon Sep 17 00:00:00 2001 From: Taylor R Campbell Date: Fri, 4 Jan 2019 05:09:26 +0000 Subject: [PATCH] Use integrated %dispatch-tag-ref in record type predicates. These show up hot in profiles, so this makes a difference. --- src/runtime/record.scm | 3 ++- src/runtime/runtime.pkg | 1 + 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/runtime/record.scm b/src/runtime/record.scm index 63110b90e..bfaee3524 100644 --- a/src/runtime/record.scm +++ b/src/runtime/record.scm @@ -31,6 +31,7 @@ USA. ;;; conforms to R4RS proposal (declare (usual-integrations)) +(declare (integrate-external "dispatch-tag")) (define-primitives (vector-cons 2)) @@ -161,7 +162,7 @@ USA. (dispatch-tag-extra-ref record-type 2)) (define-integrable (%record-type-instance-marker record-type) - (dispatch-tag-extra-ref record-type 3)) + (%dispatch-tag-extra-ref record-type 3)) (define-integrable (%set-record-type-instance-marker! record-type marker) (%dispatch-tag-extra-set! record-type 3 marker)) diff --git a/src/runtime/runtime.pkg b/src/runtime/runtime.pkg index f150d7a4e..75d9f931b 100644 --- a/src/runtime/runtime.pkg +++ b/src/runtime/runtime.pkg @@ -5377,6 +5377,7 @@ USA. probe-cache-4) (export (runtime record) %dispatch-tag-extra-index + %dispatch-tag-extra-ref %dispatch-tag-extra-set!)) (define-package (runtime crypto) -- 2.25.1