This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: patch: reject incompatible classes in simplify_subreg
- From: Aldy Hernandez <aldyh at redhat dot com>
- To: Richard Henderson <rth at redhat dot com>, gcc-patches at gcc dot gnu dot org
- Date: Mon, 6 Dec 2004 22:27:47 -0400
- Subject: Re: patch: reject incompatible classes in simplify_subreg
- References: <20041104193639.GA19349@redhat.com> <20041129234858.GA1071@redhat.com> <20041206235056.GA4177@redhat.com> <20041207000733.GB17237@bubble.modra.org>
On Tue, Dec 07, 2004 at 10:37:33AM +1030, Alan Modra wrote:
> On Mon, Dec 06, 2004 at 07:50:56PM -0400, Aldy Hernandez wrote:
> > So we want to change the upper bits of (reg:DF 9), but we end up changing
> > (reg:SI 9), which is actually the bottom bits.
>
> No, (reg:SI 9) is the high word of (reg:DF 9).
That's the catch, for e500v2 it *is* the low bits because a DF goes in one
register not two. However, the upper 32-bits are only accesible with
SIMD or double FP operations. When classic 32-bit operations are
performed on a given register (accessed by itself), we're talking about
the lower 32-bits.
See my problem? :-(
Aldy