From 86a22004c9bdd1e93aac773cfda1932061f3b724 Mon Sep 17 00:00:00 2001 From: Andrea Corallo Date: Sun, 22 Sep 2019 17:11:53 +0200 Subject: [PATCH] repropagate after call-optim --- lisp/emacs-lisp/comp.el | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/lisp/emacs-lisp/comp.el b/lisp/emacs-lisp/comp.el index b66bccede54..c3ec012c4a1 100644 --- a/lisp/emacs-lisp/comp.el +++ b/lisp/emacs-lisp/comp.el @@ -57,6 +57,7 @@ comp-ssa comp-propagate comp-call-optim + comp-propagate comp-final) "Passes to be executed in order.") @@ -1278,10 +1279,10 @@ This can run just once." (pcase insn (`(set ,lval ,rval) (pcase rval - (`(call ,f . ,_) + (`(,(or 'call 'direct-call) ,f . ,_) (setf (comp-mvar-type lval) (cdr (assq f comp-known-ret-types)))) - (`(callref ,f . ,args) + (`(,(or 'callref 'direct-callref) ,f . ,args) (cl-loop for v in args do (setf (comp-mvar-ref v) t)) (setf (comp-mvar-type lval) -- 2.39.5