From 631ecfcd29ecabd40c3bc5579496e635b30a142e Mon Sep 17 00:00:00 2001 From: Juho Snellman Date: Wed, 20 Sep 2006 14:50:40 +0000 Subject: [PATCH] 0.9.16.42: Always update TN-CURRENT-CONFLICT after the innermost loop of PROPAGATE-LIVE-TNS has found a match, and not just every time it converts a :READ conflict to a :LIVE conflict. This avoids useless travelsals over the tnwise global-conflicts chain, speeding up compilation when there are lots of global conflicts (for example on (DEBUG 3)). Thanks to David Lichteblau. --- src/compiler/life.lisp | 4 ++-- version.lisp-expr | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/compiler/life.lisp b/src/compiler/life.lisp index 6502bc2..8d81428 100644 --- a/src/compiler/life.lisp +++ b/src/compiler/life.lisp @@ -514,10 +514,10 @@ (setf (svref (ir2-block-local-tns block1) (global-conflicts-number current)) nil) - (setf (global-conflicts-number current) nil) - (setf (tn-current-conflict tn) current)) + (setf (global-conflicts-number current) nil)) (t (setf (sbit live-in (global-conflicts-number current)) 1))) + (setf (tn-current-conflict tn) current) (return))))) (:write))) did-something)) diff --git a/version.lisp-expr b/version.lisp-expr index c0f797a..2ac1030 100644 --- a/version.lisp-expr +++ b/version.lisp-expr @@ -17,4 +17,4 @@ ;;; checkins which aren't released. (And occasionally for internal ;;; versions, especially for internal versions off the main CVS ;;; branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".) -"0.9.16.41" +"0.9.16.42" -- 1.7.10.4