Messages in this thread | | | Subject | Re: ALERT! Stay away from patched gcc's (was Re: 2.0.22 will be the last version) | From | Tom May <> | Date | 28 Sep 1996 13:59:59 -0700 |
| |
Linus Torvalds <torvalds@cs.helsinki.fi> writes:
> Ok, I asked Werner to send me a disassembly of the affected function, and he > definitely had some bad code produced by his compiler for the new inline > assembly code to handle semaphores.
Since I have posted a patch to gcc on this list (relating to memory clobber not being honored in all cases), I would be extremely interested in getting a copy of the failing source code and finding out what patches Werner has applied to gcc.
> There is at least _one_ reasonably recent version of gcc out there that > provably produces bad code when it comes to inline asm register clobbers, and > I'd ask people to take a hard look at their compiler if they don't have a > unpatched gcc.
What exactly should we be looking for? Can you point out a specific function or code construct that compiles incorrectly?
> It looks like the standard gcc's are ok, but I wonder about > gcc-2.7.2.1 (which reportedly also fixes the strength-reduce bug, and if they > used the same bugfix as Werners version did, it may be suspect).
gcc-2.7.2.1 has a different fix for the strength reduce bug than the patch posted to this list a long time ago. The posted patch should definitely not affect clobbers. The gcc-2.7.2.1 patch is more mystical but it is still in an area of the compiler that has nothing to do with clobbers. That's not to say that gcc-2.7.2.1 isn't broken, although I'm using it to compile 2.0.21.
Tom.
| |