aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStefan Monnier2024-05-22 14:45:35 -0400
committerStefan Monnier2024-05-28 20:53:25 -0400
commitfde8dc9287c0a81c6b942b5cf445f8f7aeba1207 (patch)
treedf05ec0d8c9770e6eaac7c6f3aff918c40c04933
parent1a1170cde7e847f4eb4d736a400f7325f2265a1c (diff)
downloademacs-fde8dc9287c0a81c6b942b5cf445f8f7aeba1207.tar.gz
emacs-fde8dc9287c0a81c6b942b5cf445f8f7aeba1207.zip
Redirect calls to `subr-native-elisp-p` to `native-comp-function-p`
* test/src/comp-tests.el (comp-tests-bootstrap, lambda-return) (lambda-return2, free-fun, free-fun2, free-fun-silly-name, speed--1) (compile-forms, comp-test-defsubst, primitive-redefine-compile-44221) (48029-1, 61917-1, tco, fw-prop-1, pure): * test/lisp/help-fns-tests.el (help-fns-test-lisp-defun): * lisp/subr.el (subr-primitive-p, primitive-function-p, symbol-file): * lisp/help-fns.el (find-lisp-object-file-name): * lisp/emacs-lisp/disass.el (disassemble-internal): * lisp/emacs-lisp/comp.el (comp--call-optim-form-call): * lisp/emacs-lisp/comp-run.el (comp-warn-primitives): * lisp/emacs-lisp/comp-common.el (comp-function-type-spec): * lisp/emacs-lisp/byte-opt.el (side-effect-free-fns): * lisp/emacs-lisp/bytecomp.el (<trailer>): Rename `subr-native-elisp-p` to `native-comp-function-p`.
-rw-r--r--lisp/emacs-lisp/byte-opt.el5
-rw-r--r--lisp/emacs-lisp/bytecomp.el2
-rw-r--r--lisp/emacs-lisp/comp-common.el2
-rw-r--r--lisp/emacs-lisp/comp-run.el2
-rw-r--r--lisp/emacs-lisp/comp.el2
-rw-r--r--lisp/emacs-lisp/disass.el4
-rw-r--r--lisp/help-fns.el2
-rw-r--r--lisp/subr.el8
-rw-r--r--test/lisp/help-fns-tests.el2
-rw-r--r--test/src/comp-tests.el40
10 files changed, 35 insertions, 34 deletions
diff --git a/lisp/emacs-lisp/byte-opt.el b/lisp/emacs-lisp/byte-opt.el
index 4095726d276..c060c8d676b 100644
--- a/lisp/emacs-lisp/byte-opt.el
+++ b/lisp/emacs-lisp/byte-opt.el
@@ -1876,9 +1876,10 @@ See Info node `(elisp) Integer Basics'."
1876 byteorder car-safe cdr-safe char-or-string-p char-table-p 1876 byteorder car-safe cdr-safe char-or-string-p char-table-p
1877 condition-variable-p consp eq floatp indirect-function 1877 condition-variable-p consp eq floatp indirect-function
1878 integer-or-marker-p integerp keywordp listp markerp 1878 integer-or-marker-p integerp keywordp listp markerp
1879 module-function-p multibyte-string-p mutexp natnump nlistp null 1879 module-function-p multibyte-string-p mutexp native-comp-function-p
1880 natnump nlistp null
1880 number-or-marker-p numberp recordp remove-pos-from-symbol 1881 number-or-marker-p numberp recordp remove-pos-from-symbol
1881 sequencep stringp subr-native-elisp-p subrp symbol-with-pos-p symbolp 1882 sequencep stringp subrp symbol-with-pos-p symbolp
1882 threadp type-of user-ptrp vector-or-char-table-p vectorp wholenump 1883 threadp type-of user-ptrp vector-or-char-table-p vectorp wholenump
1883 ;; editfns.c 1884 ;; editfns.c
1884 bobp bolp buffer-size buffer-string current-message emacs-pid 1885 bobp bolp buffer-size buffer-string current-message emacs-pid
diff --git a/lisp/emacs-lisp/bytecomp.el b/lisp/emacs-lisp/bytecomp.el
index 12b45f9f5b8..03cfbe6f4c9 100644
--- a/lisp/emacs-lisp/bytecomp.el
+++ b/lisp/emacs-lisp/bytecomp.el
@@ -6028,7 +6028,7 @@ and corresponding effects."
6028 (let ((byte-optimize nil) ; do it fast 6028 (let ((byte-optimize nil) ; do it fast
6029 (byte-compile-warnings nil)) 6029 (byte-compile-warnings nil))
6030 (mapc (lambda (x) 6030 (mapc (lambda (x)
6031 (unless (subr-native-elisp-p x) 6031 (unless (native-comp-function-p x)
6032 (or noninteractive (message "compiling %s..." x)) 6032 (or noninteractive (message "compiling %s..." x))
6033 (byte-compile x) 6033 (byte-compile x)
6034 (or noninteractive (message "compiling %s...done" x)))) 6034 (or noninteractive (message "compiling %s...done" x))))
diff --git a/lisp/emacs-lisp/comp-common.el b/lisp/emacs-lisp/comp-common.el
index 355988838c7..ce6296953bf 100644
--- a/lisp/emacs-lisp/comp-common.el
+++ b/lisp/emacs-lisp/comp-common.el
@@ -518,7 +518,7 @@ itself."
518 (if-let ((delc-type (function-get function 'function-type))) 518 (if-let ((delc-type (function-get function 'function-type)))
519 ;; Declared Lisp function 519 ;; Declared Lisp function
520 (setf type-spec delc-type) 520 (setf type-spec delc-type)
521 (when (subr-native-elisp-p f) 521 (when (native-comp-function-p f)
522 ;; Native compiled inferred 522 ;; Native compiled inferred
523 (setf kind 'inferred 523 (setf kind 'inferred
524 type-spec (subr-type f)))))) 524 type-spec (subr-type f))))))
diff --git a/lisp/emacs-lisp/comp-run.el b/lisp/emacs-lisp/comp-run.el
index 5cc61579030..f159c5b1911 100644
--- a/lisp/emacs-lisp/comp-run.el
+++ b/lisp/emacs-lisp/comp-run.el
@@ -341,7 +341,7 @@ display a message."
341 (clrhash comp-deferred-pending-h))) 341 (clrhash comp-deferred-pending-h)))
342 342
343(defconst comp-warn-primitives 343(defconst comp-warn-primitives
344 '(null memq gethash and subrp not subr-native-elisp-p 344 '(null memq gethash and subrp not native-comp-function-p
345 comp--install-trampoline concat if symbolp symbol-name make-string 345 comp--install-trampoline concat if symbolp symbol-name make-string
346 length aset aref length> mapcar expand-file-name 346 length aset aref length> mapcar expand-file-name
347 file-name-as-directory file-exists-p native-elisp-load) 347 file-name-as-directory file-exists-p native-elisp-load)
diff --git a/lisp/emacs-lisp/comp.el b/lisp/emacs-lisp/comp.el
index 4c76f95a0e9..32d4442ca1b 100644
--- a/lisp/emacs-lisp/comp.el
+++ b/lisp/emacs-lisp/comp.el
@@ -2847,7 +2847,7 @@ FUNCTION can be a function-name or byte compiled function."
2847 (subrp (subrp f)) 2847 (subrp (subrp f))
2848 (comp-func-callee (comp--func-in-unit callee))) 2848 (comp-func-callee (comp--func-in-unit callee)))
2849 (cond 2849 (cond
2850 ((and subrp (not (subr-native-elisp-p f))) 2850 ((and subrp (not (native-comp-function-p f)))
2851 ;; Trampoline removal. 2851 ;; Trampoline removal.
2852 (let* ((callee (intern (subr-name f))) ; Fix aliased names. 2852 (let* ((callee (intern (subr-name f))) ; Fix aliased names.
2853 (maxarg (cdr (subr-arity f))) 2853 (maxarg (cdr (subr-arity f)))
diff --git a/lisp/emacs-lisp/disass.el b/lisp/emacs-lisp/disass.el
index 91427166137..07072f2a2be 100644
--- a/lisp/emacs-lisp/disass.el
+++ b/lisp/emacs-lisp/disass.el
@@ -91,8 +91,8 @@ redefine OBJECT if it is a symbol."
91 args) 91 args)
92 (setq obj (autoload-do-load obj name)) 92 (setq obj (autoload-do-load obj name))
93 (if (subrp obj) 93 (if (subrp obj)
94 (if (and (fboundp 'subr-native-elisp-p) 94 (if (and (fboundp 'native-comp-function-p)
95 (subr-native-elisp-p obj)) 95 (native-comp-function-p obj))
96 (progn 96 (progn
97 (require 'comp) 97 (require 'comp)
98 (let ((eln (native-comp-unit-file (subr-native-comp-unit obj)))) 98 (let ((eln (native-comp-unit-file (subr-native-comp-unit obj))))
diff --git a/lisp/help-fns.el b/lisp/help-fns.el
index a202c2d247e..f2257cb9398 100644
--- a/lisp/help-fns.el
+++ b/lisp/help-fns.el
@@ -478,7 +478,7 @@ the C sources, too."
478 (cond 478 (cond
479 ((and (not file-name) 479 ((and (not file-name)
480 (subrp type) 480 (subrp type)
481 (not (subr-native-elisp-p type))) 481 (not (native-comp-function-p type)))
482 ;; A built-in function. The form is from `describe-function-1'. 482 ;; A built-in function. The form is from `describe-function-1'.
483 (if (or (get-buffer " *DOC*") 483 (if (or (get-buffer " *DOC*")
484 (and also-c-source 484 (and also-c-source
diff --git a/lisp/subr.el b/lisp/subr.el
index eda5b7ae31b..57c6f8a528f 100644
--- a/lisp/subr.el
+++ b/lisp/subr.el
@@ -316,14 +316,14 @@ value of last one, or nil if there are none."
316Such objects can be functions or special forms." 316Such objects can be functions or special forms."
317 (declare (side-effect-free error-free)) 317 (declare (side-effect-free error-free))
318 (and (subrp object) 318 (and (subrp object)
319 (not (subr-native-elisp-p object)))) 319 (not (native-comp-function-p object))))
320 320
321(defsubst primitive-function-p (object) 321(defsubst primitive-function-p (object)
322 "Return t if OBJECT is a built-in primitive function. 322 "Return t if OBJECT is a built-in primitive function.
323This excludes special forms, since they are not functions." 323This excludes special forms, since they are not functions."
324 (declare (side-effect-free error-free)) 324 (declare (side-effect-free error-free))
325 (and (subrp object) 325 (and (subrp object)
326 (not (or (subr-native-elisp-p object) 326 (not (or (native-comp-function-p object)
327 (eq (cdr (subr-arity object)) 'unevalled))))) 327 (eq (cdr (subr-arity object)) 'unevalled)))))
328 328
329(defsubst xor (cond1 cond2) 329(defsubst xor (cond1 cond2)
@@ -3022,7 +3022,7 @@ This is to `put' what `defalias' is to `fset'."
3022 3022
3023(defvar comp-native-version-dir) 3023(defvar comp-native-version-dir)
3024(defvar native-comp-eln-load-path) 3024(defvar native-comp-eln-load-path)
3025(declare-function subr-native-elisp-p "data.c") 3025(declare-function native-comp-function-p "data.c")
3026(declare-function native-comp-unit-file "data.c") 3026(declare-function native-comp-unit-file "data.c")
3027(declare-function subr-native-comp-unit "data.c") 3027(declare-function subr-native-comp-unit "data.c")
3028(declare-function comp-el-to-eln-rel-filename "comp.c") 3028(declare-function comp-el-to-eln-rel-filename "comp.c")
@@ -3071,7 +3071,7 @@ instead."
3071 (symbolp symbol) 3071 (symbolp symbol)
3072 (native-comp-available-p) 3072 (native-comp-available-p)
3073 ;; If it's a defun, we have a shortcut. 3073 ;; If it's a defun, we have a shortcut.
3074 (subr-native-elisp-p (symbol-function symbol))) 3074 (native-comp-function-p (symbol-function symbol)))
3075 ;; native-comp-unit-file returns unnormalized file names. 3075 ;; native-comp-unit-file returns unnormalized file names.
3076 (expand-file-name (native-comp-unit-file (subr-native-comp-unit 3076 (expand-file-name (native-comp-unit-file (subr-native-comp-unit
3077 (symbol-function symbol)))) 3077 (symbol-function symbol))))
diff --git a/test/lisp/help-fns-tests.el b/test/lisp/help-fns-tests.el
index 82350a4bc71..7393a2624fe 100644
--- a/test/lisp/help-fns-tests.el
+++ b/test/lisp/help-fns-tests.el
@@ -67,7 +67,7 @@ Return first line of the output of (describe-function-1 FUNC)."
67 (result (help-fns-tests--describe-function 'last))) 67 (result (help-fns-tests--describe-function 'last)))
68 (should (string-match regexp result)) 68 (should (string-match regexp result))
69 (should (member (match-string 1 result) 69 (should (member (match-string 1 result)
70 '("subr-native-elisp" "byte-code-function"))))) 70 '("native-comp-function" "byte-code-function")))))
71 71
72(ert-deftest help-fns-test-lisp-defsubst () 72(ert-deftest help-fns-test-lisp-defsubst ()
73 (let ((regexp "a byte-code-function in .+subr\\.el") 73 (let ((regexp "a byte-code-function in .+subr\\.el")
diff --git a/test/src/comp-tests.el b/test/src/comp-tests.el
index 5deff03fd84..dffb7097a3e 100644
--- a/test/src/comp-tests.el
+++ b/test/src/comp-tests.el
@@ -85,13 +85,13 @@ Check that the resulting binaries do not differ."
85 (copy-file comp-src comp2-src t) 85 (copy-file comp-src comp2-src t)
86 (let ((load-no-native t)) 86 (let ((load-no-native t))
87 (load (concat comp-src "c") nil nil t t)) 87 (load (concat comp-src "c") nil nil t t))
88 (should-not (subr-native-elisp-p (symbol-function 'native-compile))) 88 (should-not (native-comp-function-p (symbol-function 'native-compile)))
89 (message "Compiling stage1...") 89 (message "Compiling stage1...")
90 (let* ((t0 (current-time)) 90 (let* ((t0 (current-time))
91 (comp1-eln (native-compile comp1-src))) 91 (comp1-eln (native-compile comp1-src)))
92 (message "Done in %d secs" (float-time (time-since t0))) 92 (message "Done in %d secs" (float-time (time-since t0)))
93 (load comp1-eln nil nil t t) 93 (load comp1-eln nil nil t t)
94 (should (subr-native-elisp-p (symbol-function 'native-compile))) 94 (should (native-comp-function-p (symbol-function 'native-compile)))
95 (message "Compiling stage2...") 95 (message "Compiling stage2...")
96 (let ((t0 (current-time)) 96 (let ((t0 (current-time))
97 (comp2-eln (native-compile comp2-src))) 97 (comp2-eln (native-compile comp2-src)))
@@ -325,15 +325,15 @@ Check that the resulting binaries do not differ."
325 325
326(comp-deftest lambda-return () 326(comp-deftest lambda-return ()
327 (let ((f (comp-tests-lambda-return-f))) 327 (let ((f (comp-tests-lambda-return-f)))
328 (should (subr-native-elisp-p f)) 328 (should (native-comp-function-p f))
329 (should (= (funcall f 3) 4)))) 329 (should (= (funcall f 3) 4))))
330 330
331(comp-deftest lambda-return2 () 331(comp-deftest lambda-return2 ()
332 "Check a nested lambda function gets native compiled." 332 "Check a nested lambda function gets native compiled."
333 (let ((f (comp-tests-lambda-return-f2))) 333 (let ((f (comp-tests-lambda-return-f2)))
334 (should (subr-native-elisp-p f)) 334 (should (native-comp-function-p f))
335 (let ((f2 (funcall f))) 335 (let ((f2 (funcall f)))
336 (should (subr-native-elisp-p f2)) 336 (should (native-comp-function-p f2))
337 (should (= (funcall f2 3) 4))))) 337 (should (= (funcall f2 3) 4)))))
338 338
339(comp-deftest recursive () 339(comp-deftest recursive ()
@@ -391,7 +391,7 @@ Check that the resulting binaries do not differ."
391 t) 391 t)
392 (native-compile #'comp-tests-free-fun-f) 392 (native-compile #'comp-tests-free-fun-f)
393 393
394 (should (subr-native-elisp-p (symbol-function 'comp-tests-free-fun-f))) 394 (should (native-comp-function-p (symbol-function 'comp-tests-free-fun-f)))
395 (should (= (comp-tests-free-fun-f) 3)) 395 (should (= (comp-tests-free-fun-f) 3))
396 (should (string= (documentation #'comp-tests-free-fun-f) 396 (should (string= (documentation #'comp-tests-free-fun-f)
397 "Some doc.")) 397 "Some doc."))
@@ -412,8 +412,8 @@ Check that the resulting binaries do not differ."
412 412
413 (let* ((f (symbol-function 'comp-tests-free-fun-f2)) 413 (let* ((f (symbol-function 'comp-tests-free-fun-f2))
414 (f2 (funcall f))) 414 (f2 (funcall f)))
415 (should (subr-native-elisp-p f)) 415 (should (native-comp-function-p f))
416 (should (subr-native-elisp-p f2)) 416 (should (native-comp-function-p f2))
417 (should (string= (documentation f2) "Some doc.")) 417 (should (string= (documentation f2) "Some doc."))
418 (should (commandp f2)) 418 (should (commandp f2))
419 (should (equal (interactive-form f2) '(interactive nil))) 419 (should (equal (interactive-form f2) '(interactive nil)))
@@ -425,7 +425,7 @@ Check that the resulting binaries do not differ."
425 "Check we are able to compile a single function." 425 "Check we are able to compile a single function."
426 (eval '(defun comp-tests/free\fun-f ()) t) 426 (eval '(defun comp-tests/free\fun-f ()) t)
427 (native-compile #'comp-tests/free\fun-f) 427 (native-compile #'comp-tests/free\fun-f)
428 (should (subr-native-elisp-p (symbol-function 'comp-tests/free\fun-f)))) 428 (should (native-comp-function-p (symbol-function 'comp-tests/free\fun-f))))
429 429
430(comp-deftest bug-40187 () 430(comp-deftest bug-40187 ()
431 "Check function name shadowing. 431 "Check function name shadowing.
@@ -436,7 +436,7 @@ https://lists.gnu.org/archive/html/bug-gnu-emacs/2020-03/msg00914.html."
436(comp-deftest speed--1 () 436(comp-deftest speed--1 ()
437 "Check that at speed -1 we do not native compile." 437 "Check that at speed -1 we do not native compile."
438 (should (= (comp-test-speed--1-f) 3)) 438 (should (= (comp-test-speed--1-f) 3))
439 (should-not (subr-native-elisp-p (symbol-function 'comp-test-speed--1-f)))) 439 (should-not (native-comp-function-p (symbol-function 'comp-test-speed--1-f))))
440 440
441(comp-deftest bug-42360 () 441(comp-deftest bug-42360 ()
442 "<https://lists.gnu.org/archive/html/bug-gnu-emacs/2020-07/msg00418.html>." 442 "<https://lists.gnu.org/archive/html/bug-gnu-emacs/2020-07/msg00418.html>."
@@ -497,22 +497,22 @@ https://lists.gnu.org/archive/html/bug-gnu-emacs/2020-03/msg00914.html."
497 (should-error (native-compile '(+ 1 foo))) 497 (should-error (native-compile '(+ 1 foo)))
498 (let ((lexical-binding t) 498 (let ((lexical-binding t)
499 (f (native-compile '(lambda (x) (1+ x))))) 499 (f (native-compile '(lambda (x) (1+ x)))))
500 (should (subr-native-elisp-p f)) 500 (should (native-comp-function-p f))
501 (should (= (funcall f 2) 3))) 501 (should (= (funcall f 2) 3)))
502 (let* ((lexical-binding nil) 502 (let* ((lexical-binding nil)
503 (f (native-compile '(lambda (x) (1+ x))))) 503 (f (native-compile '(lambda (x) (1+ x)))))
504 (should (subr-native-elisp-p f)) 504 (should (native-comp-function-p f))
505 (should (= (funcall f 2) 3)))) 505 (should (= (funcall f 2) 3))))
506 506
507(comp-deftest comp-test-defsubst () 507(comp-deftest comp-test-defsubst ()
508 ;; Bug#42664, Bug#43280, Bug#44209. 508 ;; Bug#42664, Bug#43280, Bug#44209.
509 (should-not (subr-native-elisp-p (symbol-function 'comp-test-defsubst-f)))) 509 (should-not (native-comp-function-p (symbol-function 'comp-test-defsubst-f))))
510 510
511(comp-deftest primitive-redefine-compile-44221 () 511(comp-deftest primitive-redefine-compile-44221 ()
512 "Test the compiler still works while primitives are redefined (bug#44221)." 512 "Test the compiler still works while primitives are redefined (bug#44221)."
513 (cl-letf (((symbol-function 'delete-region) 513 (cl-letf (((symbol-function 'delete-region)
514 (lambda (_ _)))) 514 (lambda (_ _))))
515 (should (subr-native-elisp-p 515 (should (native-comp-function-p
516 (native-compile 516 (native-compile
517 '(lambda () 517 '(lambda ()
518 (delete-region (point-min) (point-max)))))))) 518 (delete-region (point-min) (point-max))))))))
@@ -564,7 +564,7 @@ https://lists.gnu.org/archive/html/bug-gnu-emacs/2020-03/msg00914.html."
564 564
565(comp-deftest 48029-1 () 565(comp-deftest 48029-1 ()
566 "<https://lists.gnu.org/archive/html/bug-gnu-emacs/2022-07/msg00666.html>" 566 "<https://lists.gnu.org/archive/html/bug-gnu-emacs/2022-07/msg00666.html>"
567 (should (subr-native-elisp-p 567 (should (native-comp-function-p
568 (symbol-function 'comp-test-48029-nonascii-žžž-f)))) 568 (symbol-function 'comp-test-48029-nonascii-žžž-f))))
569 569
570(comp-deftest 61917-1 () 570(comp-deftest 61917-1 ()
@@ -578,7 +578,7 @@ dedicated byte-op code."
578 (setf x (native-compile 578 (setf x (native-compile
579 '(lambda () 579 '(lambda ()
580 (delete-region 1 2)))) 580 (delete-region 1 2))))
581 (should (subr-native-elisp-p x)) 581 (should (native-comp-function-p x))
582 (funcall x) 582 (funcall x)
583 (advice-remove #'delete-region f) 583 (advice-remove #'delete-region f)
584 (should (equal comp-test-primitive-redefine-args '(1 2)))))) 584 (should (equal comp-test-primitive-redefine-args '(1 2))))))
@@ -874,7 +874,7 @@ Return a list of results."
874 (comp-tests-tco-f (+ a b) a (- count 1)))) 874 (comp-tests-tco-f (+ a b) a (- count 1))))
875 t) 875 t)
876 (native-compile #'comp-tests-tco-f) 876 (native-compile #'comp-tests-tco-f)
877 (should (subr-native-elisp-p (symbol-function 'comp-tests-tco-f))) 877 (should (native-comp-function-p (symbol-function 'comp-tests-tco-f)))
878 (should (= (comp-tests-tco-f 1 0 10) 55)))) 878 (should (= (comp-tests-tco-f 1 0 10) 55))))
879 879
880(defun comp-tests-fw-prop-checker-1 (_) 880(defun comp-tests-fw-prop-checker-1 (_)
@@ -901,7 +901,7 @@ Return a list of results."
901 (length c))) ; <= has to optimize 901 (length c))) ; <= has to optimize
902 t) 902 t)
903 (native-compile #'comp-tests-fw-prop-1-f) 903 (native-compile #'comp-tests-fw-prop-1-f)
904 (should (subr-native-elisp-p (symbol-function 'comp-tests-fw-prop-1-f))) 904 (should (native-comp-function-p (symbol-function 'comp-tests-fw-prop-1-f)))
905 (should (= (comp-tests-fw-prop-1-f) 6)))) 905 (should (= (comp-tests-fw-prop-1-f) 6))))
906 906
907(defun comp-tests--type-lists-equal (l1 l2) 907(defun comp-tests--type-lists-equal (l1 l2)
@@ -1556,10 +1556,10 @@ folded."
1556 (declare-function comp-tests-pure-caller-f nil) 1556 (declare-function comp-tests-pure-caller-f nil)
1557 (declare-function comp-tests-pure-fibn-entry-f nil) 1557 (declare-function comp-tests-pure-fibn-entry-f nil)
1558 1558
1559 (should (subr-native-elisp-p (symbol-function 'comp-tests-pure-caller-f))) 1559 (should (native-comp-function-p (symbol-function 'comp-tests-pure-caller-f)))
1560 (should (= (comp-tests-pure-caller-f) 4)) 1560 (should (= (comp-tests-pure-caller-f) 4))
1561 1561
1562 (should (subr-native-elisp-p (symbol-function 'comp-tests-pure-fibn-entry-f))) 1562 (should (native-comp-function-p (symbol-function 'comp-tests-pure-fibn-entry-f)))
1563 (should (= (comp-tests-pure-fibn-entry-f) 6765)))) 1563 (should (= (comp-tests-pure-fibn-entry-f) 6765))))
1564 1564
1565(defvar comp-tests-cond-rw-checked-function nil 1565(defvar comp-tests-cond-rw-checked-function nil