From: Paul K. <pk...@us...> - 2013-12-02 03:46:04
|
The branch "master" has been updated in SBCL: via 0f3a5f2e8886d18d0b4f6485c38a42be629422ae (commit) from cf96bb4253ddc05188f4a45aead5f0497339ad17 (commit) - Log ----------------------------------------------------------------- commit 0f3a5f2e8886d18d0b4f6485c38a42be629422ae Author: Paul Khuong <pv...@pv...> Date: Wed Nov 13 13:18:29 2013 -0500 Utility predicates for packing: UNBOUNDED-SC-P and UNBOUNDED-TN-P Determine if the backing storage base (or the preferred storage class for a TN) is :UNBOUNDED, i.e., on the stack. --- src/compiler/pack.lisp | 9 +++++++++ 1 files changed, 9 insertions(+), 0 deletions(-) diff --git a/src/compiler/pack.lisp b/src/compiler/pack.lisp index 451f83e..42e6c5e 100644 --- a/src/compiler/pack.lisp +++ b/src/compiler/pack.lisp @@ -1375,6 +1375,15 @@ ;;;; pack interface +;; Misc. utilities +(declaim (inline unbounded-sc-p)) +(defun unbounded-sc-p (sc) + (eq (sb-kind (sc-sb sc)) :unbounded)) + +(defun unbounded-tn-p (tn) + (unbounded-sc-p (tn-sc tn))) +(declaim (notinline unbounded-sc-p)) + ;;; Attempt to pack TN in all possible SCs, first in the SC chosen by ;;; representation selection, then in the alternate SCs in the order ;;; they were specified in the SC definition. If the TN-COST is ----------------------------------------------------------------------- hooks/post-receive -- SBCL |