This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Regression introduced by your change


On Thu, 2 Mar 2006, Jeffrey A Law wrote:
> Is causing 961206-1.c to regress at -O1 and -O2 on i686-pc-linux-gnu
> and possibly other platforms.

Doh!  This doesn't fail on x86_64-unknown-linux-gnu, where I developed
that patch, but I am now seeing those failures on i686-pc-linux-gnu.

> OUCH.  Instead of testing bit 31, we test bit 7.
> It seems to me that we need to emit the shift in the mode of
> the comparison's first operand.  Then convert the result of the
> shift into the desired mode via a subreg or something along
> those lines.
>
> Thoughts?

Sorry for the breakage.  I'll have a fix before the sun goes down,
that performs the shift in the correct mode, then appropriately
sign extends, zero extends or truncates if necessary.

Many thanks for analyzing this failure.  Sorry again.

Roger
--


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]