From: Chris Hanson Date: Sun, 25 Apr 2010 04:34:25 +0000 (-0700) Subject: Fix bug: when merging register maps, if a pseudo register was saved X-Git-Tag: 20100708-Gtk~66^2~1 X-Git-Url: https://birchwood-abbey.net/git?a=commitdiff_plain;h=5f1074abde735c1989b8073f468a607c5dd43f22;p=mit-scheme.git Fix bug: when merging register maps, if a pseudo register was saved into its home on some of the maps, and not saved on the other maps, then the resulting map would show that it was saved. Instead, it should show that it is NOT saved. That's less optimal but correct. --- diff --git a/src/compiler/back/mermap.scm b/src/compiler/back/mermap.scm index 6cecf981c..ac687fda1 100644 --- a/src/compiler/back/mermap.scm +++ b/src/compiler/back/mermap.scm @@ -115,7 +115,7 @@ USA. (eqv? home (vector-ref entry 0)))))) (lambda (x-entry y-entry) (vector (vector-ref x-entry 0) - (+ (vector-ref x-entry 1) (vector-ref y-entry 1)) + (min (vector-ref x-entry 1) (vector-ref y-entry 1)) (merge-entries (vector-ref x-entry 2) (vector-ref y-entry 2) (lambda (entry entries) (assq (car entry) entries))