This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: Better fix for fix_truncsfdi2 i386 bug in egcs 1.1.2
- To: Jim Kingdon <kingdon at redhat dot com>
- Subject: Re: Better fix for fix_truncsfdi2 i386 bug in egcs 1.1.2
- From: Jeffrey A Law <law at cygnus dot com>
- Date: Fri, 27 Aug 1999 01:03:59 -0600
- cc: gcc-patches at gcc dot gnu dot org
- Reply-To: law at cygnus dot com
In message <199908242112.RAA05763@devserv.devel.redhat.com>you write:
> > It would have helped if you indicated what path through
> > output_fix_trunc and output_to_reg was used -- I had to spend a lot
> > of time reading that code to see how we might be losing.
>
> Thanks for suggesting this - it isn't that I forgot to mention this,
> it is that I didn't know the compiler well enough to easily understand
> how output_fix_trunc related to the other pieces and so on. I think
> I'm slowly gaining enlightenment.
It takes time.
> Yes, I concur (after stepping through the code on my test case and
> thinking about it and so on). Once I look at it right, it looks like
> a straightforward application of the rule "Therefore, this
> [earlyclobber] operand may not lie in a register that is used as
> . . . part of any memory address" from md.texi.
Yup.
> > Can you please fix all the patterns which call output_fix_trunc such
> > that they have an earlyclobber on the "!r" output alternative if you
> > agree with my comments?
>
> Patch enclosed. Thanks for your patience/help - and I'm glad you took
> the time because I wouldn't have noticed the SImode case without your
> suggestions.
Thanks. Installed. I'm also filing it in the potential patches for
gcc-2.95.2.
No problem at all helping out now that I can at least see the top of the hole
I'm trying to dig out of from the gcc-2.95 release cycle :-)
On a slightly related note, this patch is small enough not to need a copyright
assignment, but if it looks like you'll be doing a fair amount of gcc work
you'll probably want to get the paperwork started.
jeff