From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 29025 invoked by alias); 11 Apr 2003 11:57:17 -0000 Mailing-List: contact gcc-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-owner@gcc.gnu.org Received: (qmail 29018 invoked from network); 11 Apr 2003 11:57:17 -0000 Received: from unknown (HELO mail.libertysurf.net) (213.36.80.91) by sources.redhat.com with SMTP; 11 Apr 2003 11:57:17 -0000 Received: from localhost.localdomain (213.36.79.104) by mail.libertysurf.net (6.5.026) id 3E8A4CE6001A976F; Fri, 11 Apr 2003 13:57:16 +0200 Content-Type: text/plain; charset="iso-8859-1" From: Eric Botcazou To: Jan Hubicka Subject: Re: Reload bug Date: Fri, 11 Apr 2003 14:44:00 -0000 User-Agent: KMail/1.4.3 Cc: gcc@gcc.gnu.org References: <200304081937.16859.ebotcazou@libertysurf.fr> <200304102200.35188.ebotcazou@libertysurf.fr> <20030410202612.GI9319@kam.mff.cuni.cz> In-Reply-To: <20030410202612.GI9319@kam.mff.cuni.cz> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Message-Id: <200304111356.23415.ebotcazou@libertysurf.fr> X-SW-Source: 2003-04/txt/msg00539.txt.bz2 > The code is wrong for post-SUBREG_BYTE patch as it checks that the > partial regs have exactly size of one word, but we do allow subregs on > registers of different sizes. We need to verify that offset can > represent the register exactly. Is it really wrong or is it incomplete now, in the post-SUBREG_BYTE era? > Looking as subreg_regno_offset, I think we need to practically check > that division in: > return (y_offset / (mode_multiple / nregs_multiple)) * nregs_ymode; > Does not round. When it rounds we are having registers too wide and we > must reload. > All the other divisions should be safe from SUBREG definition that is > already verified by my simplify_subreg code. > We also should add a trap to subreg_regno_offset in the mainline... > Seems to make sense? Do you mean that we can generate (subreg:HI (reg/v:SI 67) 2) and we currently have no means to fix it during the reload pass? -- Eric Botcazou