From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 21124 invoked by alias); 28 Jan 2002 19:28:45 -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 21082 invoked from network); 28 Jan 2002 19:28:40 -0000 Received: from unknown (HELO cygnus.com) (205.180.230.5) by sources.redhat.com with SMTP; 28 Jan 2002 19:28:40 -0000 Received: from porcupine.cygnus.com (cse.sfbay.redhat.com [205.180.230.236]) by runyon.cygnus.com (8.8.7-cygnus/8.8.7) with ESMTP id LAA12277 for ; Mon, 28 Jan 2002 11:28:37 -0800 (PST) Received: from porcupine.cygnus.com (law@localhost) by porcupine.cygnus.com (8.11.6/8.11.6) with ESMTP id g0SJQE316694; Mon, 28 Jan 2002 12:26:14 -0700 X-Mailer: exmh version 2.4 06/23/2000 with nmh-1.0.4 To: Richard Henderson cc: gcc@gcc.gnu.org Subject: Re: paradoxical subreg problem Reply-To: law@redhat.com From: law@redhat.com In-reply-to: Your message of Mon, 28 Jan 2002 11:23:30 PST. <20020128112330.A25997@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Date: Mon, 28 Jan 2002 12:09:00 -0000 Message-ID: <16693.1012245973@porcupine.cygnus.com> X-SW-Source: 2002-01/txt/msg01817.txt.bz2 In message <20020128112330.A25997@redhat.com>, Richard Henderson writes: > On Mon, Jan 28, 2002 at 11:59:37AM -0700, law@redhat.com wrote: > > More correctly, they're allowed between combine and reload inclusively. > > I don't think so. The documentation has allowed this for years. From rtl.texi: @cindex combiner pass @cindex reload pass @cindex @code{subreg}, special reload handling Between the combiner pass and the reload pass, it is possible to have a paradoxical @code{subreg} which contains a @code{mem} instead of a @code{reg} as its first operand. After the reload pass, it is also possible to have a non-paradoxical @code{subreg} which contains a @code{mem}; this usually occurs when the @code{mem} is a stack slot which replaced a pseudo register. > > And it's the combiner that is creating the paradoxical, > > That would be a bug. A failure to call simplify_subreg or > simplify_gen_subreg. I disagree given the above docs. jeff > > > r~