master: Improve reporting of NOTINLINE full calls in make-host-2.lisp
melisgl via Sbcl-commits <[email protected]> Sat, 30 May 2026 10:18:04 +0000
| Newsgroups | gmane.lisp.steel-bank.cvs |
|---|---|
| Message-ID | <[email protected]> |
The branch "master" has been updated in SBCL:
via e1c2bc15e2661b851c67330d2d0815dbea6dead2 (commit)
from 48063e41707f0965f57b2c124312376be9b12096 (commit)
- Log -----------------------------------------------------------------
commit e1c2bc15e2661b851c67330d2d0815dbea6dead2
Author: Gabor Melis <[email protected]>
Date: Wed May 27 14:24:37 2026 +0200
Improve reporting of NOTINLINE full calls in make-host-2.lisp
Previously, make-host-2.lisp reported full calls of inline functions
even if all full calls were NOTINLINE. This was because the diagnostic
loop failed to check the 0th bit of the EMITTED-FULL-CALLS cell (via
ODDP), which PONDER-FULL-CALL specifically uses to track whether any
of the calls lacked a NOTINLINE declaration.
Background: When accommodating compilation dependencies in other
ways (such as changing the build order) is too difficult, NOTINLINE is
used to avoid the compilation failures that a full call to a function
that's later inlined would cause.
With this change, there are no "Likely suspicious" calls reported on
the default x86-64 build.
---
make-host-2.lisp | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/make-host-2.lisp b/make-host-2.lisp
index 84d3d1460..77931b21e 100644
--- a/make-host-2.lisp
+++ b/make-host-2.lisp
@@ -98,6 +98,12 @@
(source-xform (sb-int:info :function :source-transform name))
(info (sb-int:info :function :info name)))
(when (and cell
+ ;; Do not report if all calls were expressly
+ ;; NOTINLINE. If CELL is odd (i.e. there were full
+ ;; calls without NOTINLINE), then the number of
+ ;; full calls reported includes those expressly
+ ;; NOTINLINE. See SB-C::EMITTED-FULL-CALL-COUNT.
+ (oddp cell)
(or inlinep
source-xform
(and info (sb-c::fun-info-templates info))
-----------------------------------------------------------------------
hooks/post-receive
--
SBCL