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: Is this a bug in doloop.c?


On Tue, 2004-08-31 at 08:11, John Lu wrote:
> Sorry, for not giving more details.  I'll try to be clearer now.
> The reason I think there is a problem is by comparing the behavior
> for the GE case with the NE case.

I'm not an expert on doloop, so this doesn't really help me much.  If I
had a testcase that was miscompiled, that would be more useful.  But if
you only have a testcase for a port that isn't in the FSF tree, then
that doesn't help me.  If you showed before and after RTL that was
miscompiled that might be helpful.

I don't think it is safe to make the assumption that a >=0 test is
equivalent to a !=-1 which implies an initial value of N-2.  I think
there are other factors that would have to be considered, such as how
the loop bounds get canonicalized for different types of loops, and how
the RTL gets emitted for different kinds of doloops.  I don't have
enough info to say whether there is a bug here.

Anyways, I already pointed out that this code has been rewritten on
mainline.  It was rewritten in a way that implied that there were a few
problems, but it isn't immediately obvious how to translate the changes
back to gcc-3.4.
-- 
Jim Wilson, GNU Tools Support, http://www.SpecifixInc.com



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