This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: paradoxical subreg problem
- From: law at redhat dot com
- To: Richard Henderson <rth at redhat dot com>
- Cc: gcc at gcc dot gnu dot org
- Date: Mon, 28 Jan 2002 12:26:13 -0700
- Subject: Re: paradoxical subreg problem
- Reply-to: law at redhat dot com
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~