From owner-p4-projects@FreeBSD.ORG Sun Apr 27 11:31:05 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9F1C837B404; Sun, 27 Apr 2003 11:31:04 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 57F9637B401 for ; Sun, 27 Apr 2003 11:31:04 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 02D1B43FA3 for ; Sun, 27 Apr 2003 11:31:04 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3RIV30U077089 for ; Sun, 27 Apr 2003 11:31:03 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3RIV3L7077081 for perforce@freebsd.org; Sun, 27 Apr 2003 11:31:03 -0700 (PDT) Date: Sun, 27 Apr 2003 11:31:03 -0700 (PDT) Message-Id: <200304271831.h3RIV3L7077081@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar To: Perforce Change Reviews Subject: PERFORCE change 29883 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 27 Apr 2003 18:31:05 -0000 http://perforce.freebsd.org/chv.cgi?CH=29883 Change 29883 by marcel@marcel_nfs on 2003/04/27 11:30:56 Prefer ar.bsp over ar.bspstore. The value of ar.bspstore is supposed to be equal to the value of ar.bsp due to flushing the register stack, but a PAL bug existed where a PMI could cause RSE spills or fills to fail to complete. This makes me wonder: why use a register that has a more dynamic nature than one that is invariant over the course of this function and has the value we're interested in? This change doesn't fix a problem (alas, because it means I still have to fix the problem I hoped this would fix :-) and is probably gratuitous for all practical purposes but it has higher quality this way. For example: ar.bsp may have faster access times because it's invariant. The RSE has to synchronize access to ar.bspstore with RSE operation... Affected files ... .. //depot/projects/ia64_epc/sys/ia64/ia64/context.s#13 edit Differences ... ==== //depot/projects/ia64_epc/sys/ia64/ia64/context.s#13 (text+ko) ==== @@ -197,7 +197,7 @@ } { .mmi st8 [r31]=r16,16 // pr - mov r17=ar.bspstore + mov r17=ar.bsp mov r16=ar.pfs ;; }