On Tue, Nov 05, 2002 at 03:47:55PM +0100, Christoph Martin <[EMAIL PROTECTED]> wrote... > "Oliver M. Bolzer" <[EMAIL PROTECTED]> writes: > > The problem with OpenSSL is, that it is hand-assembly. The author is using > > the cmov instruction for an i686-optimized routine, though that instruction > > is not guranteed to be available. > This is wrong. The cmov instruction is NOT used in the assembly > routines. Also there are only assembly routines for i586. The cmov > instruction comes in through the usage of the -mcpu=i686 flag of > gcc. cmov is optional in i686, so gcc should not use it.
OK, my error. I didn't check the sources myself (root for all evil) and just assumed it was hand-written based on this thread. Nevertheless, it IS a real problem. As the cmov instruction is OPTIONAL for i686 but GCC uses it for 686, that is the cause of the problem. That the kernel compiles itself as 585 if a C3 is specified is simply a work-around. The correct solution is to fix GCC, but for now, can we either not ship a i686-optimized libssl or just hardlink the i585-version into the i686-directory ? We have lived with the i386 version long enough, using a slightly less optimized version for the time being is MUCH better than simply breaking on C3 machines. -- Oliver M. Bolzer [EMAIL PROTECTED] GPG (PGP) Fingerprint = 621B 52F6 2AC1 36DB 8761 018F 8786 87AD EF50 D1FF