(defun restrict-compiler-policy (&optional quality (min 0))
#!+sb-doc
- "Assing a minimum value to an optimization quality. QUALITY is the name of
+ "Assign a minimum value to an optimization quality. QUALITY is the name of
the optimization quality to restrict, and MIN (defaulting to zero) is the
minimum allowed value.
;;; Is it deprecated?
(defun policy-quality-deprecation-warning (quality)
- (when (member quality '(stack-allocate-dynamic-extent stack-allocate-vector
- stack-allocate-value-cells))
- (deprecation-warning :late "1.0.19.7" quality '*stack-allocate-dynamic-extent*
- :runtime-error nil)
- t))
+ (case quality
+ ((stack-allocate-dynamic-extent stack-allocate-vector stack-allocate-value-cells)
+ (deprecation-warning :late "1.0.19.7" quality '*stack-allocate-dynamic-extent*
+ :runtime-error nil)
+ t)
+ ((merge-tail-calls)
+ (deprecation-warning :early "1.0.53.74" quality nil :runtime-error nil)
+ t)
+ (otherwise
+ nil)))
;;; *POLICY* holds the current global compiler policy information, as
;;; an alist mapping from optimization quality name to quality value.