Skip to content
Snippets Groups Projects
Commit 56fd6636 authored by gerd's avatar gerd
Browse files

(compile nil

	 '(lambda (a b c)
		  (declare (notinline logandc2 not))
		  (declare (optimize (safety 3)))
		  (declare (optimize (speed 0)))
		  (declare (optimize (debug 0)))
		  (let ((v10
			 (let ((v5 (if (not nil) -4 (logandc2 68392 c))))
			      c)))
		       a)))
	 => assertion failure, (not (block-delete-p block))

	* src/compiler/ir1opt.lisp (recognize-known-call): Treat
	:inline and :maybe-inline like :notinline if byte-compiling
	or converting for interpreter.  Reported by Paul Dietz.
parent a7ed2dae
No related branches found
No related tags found
No related merge requests found
......@@ -5,7 +5,7 @@
;;; Carnegie Mellon University, and has been placed in the public domain.
;;;
(ext:file-comment
"$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/ir1opt.lisp,v 1.77 2003/04/29 11:58:16 gerd Exp $")
"$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/ir1opt.lisp,v 1.78 2003/10/05 12:34:35 gerd Exp $")
;;;
;;; **********************************************************************
;;;
......@@ -881,11 +881,13 @@
(declare (type combination call))
(let* ((ref (continuation-use (basic-combination-fun call)))
(leaf (when (ref-p ref) (ref-leaf ref)))
(inlinep (if (and (defined-function-p leaf)
(not (byte-compiling))
(not *converting-for-interpreter*))
(inlinep (if (defined-function-p leaf)
(defined-function-inlinep leaf)
:no-chance)))
(when (and (or (byte-compiling)
*converting-for-interpreter*)
(member inlinep '(:inline :maybe-inline)))
(setq inlinep :notinline))
(cond
((eq inlinep :notinline) (values nil nil))
((not (and (global-var-p leaf)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment