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]

Re: pre egcs-1.1 testing and Linux 2.1.x


In article <Pine.LNX.3.96.980823114054.8844N-100000@penguin.transmeta.com>,
Linus Torvalds <torvalds@transmeta.com> writes:
> On Sun, 23 Aug 1998, David S. Miller wrote:
>> 
>> However, I will continue to ignore developers who don't say "we
>> will fix it eventually", but instead say "let's remove the feature,
>> we'll never be able to fix it".
>> 
>> And the egcs team has not said the latter.  But they will turn the
>> feature off until such time as the fix is made, since it generates
>> incorrect code.

> People I trust tell me that the problem can occur even without regparm,
> it's just that regparm is able to trigger the _real_ bug much more easily.

I managed to trigger such a bug in kernel code around 2.1.5x in
tcp_ipv4.c:tcp_v4_do_rcv(). The analyse of the assembler code 
showed that gcc 2.7.2.3 silently overwrote a variable assigned to a register
when it needed a scratch variable for some computation. It went away
when some inline functions were changed, but the problem definitely
exists (see the comment there). At this time I also tried egcs 1.0.0
and it produced the same buggy code.

-Andi    




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