From 5b63b08f9ee8a50a679b5e533bf76e253e8caff5 Mon Sep 17 00:00:00 2001 From: Paul Khuong Date: Mon, 20 May 2013 10:40:00 -0400 Subject: [PATCH] More robust function-name testing in CUT-TO-WIDTH Let's use lvar-fun-name instead of replicating half the logic; as a bonus, modularity transforms now heeds NOTINLINE. --- src/compiler/srctran.lisp | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/src/compiler/srctran.lisp b/src/compiler/srctran.lisp index 545c4d6..63f1980 100644 --- a/src/compiler/srctran.lisp +++ b/src/compiler/srctran.lisp @@ -2848,10 +2848,7 @@ (lambda-var (binding* ((dest (lvar-dest lvar) :exit-if-null) (nil (combination-p dest) :exit-if-null) - (fun-ref (lvar-use (combination-fun dest))) - (leaf (ref-leaf fun-ref)) - (name (and (leaf-has-source-name-p leaf) - (leaf-source-name leaf)))) + (name (lvar-fun-name (combination-fun dest)))) ;; we're about to insert an m-s-f/logand between a ref to ;; a variable and another m-s-f/logand. No point in doing ;; that; the parent m-s-f/logand was already cut to width @@ -2874,7 +2871,7 @@ (combination (when (eq (basic-combination-kind node) :known) (let* ((fun-ref (lvar-use (combination-fun node))) - (fun-name (leaf-source-name (ref-leaf fun-ref))) + (fun-name (lvar-fun-name (combination-fun node))) (modular-fun (find-modular-version fun-name kind signedp width))) (when (and modular-fun -- 1.7.10.4