Original patch from H.J. Lu, as reported there:http://www.nabble.com/PATCH:-Use-short-for-fnstsw-td14775171.htmlfnstsw stores 16bit into %ax. The upper 16bit of %eax is unchanged.The new assembler (binutils-2.18.50.0.4 and up) will disallow "fnstsw %eax".diff -dur glibc-2.6.1.orig/sysdeps/i386/fpu/ftestexcept.c glibc-2.6.1/sysdeps/i386/fpu/ftestexcept.c--- glibc-2.6.1.orig/sysdeps/i386/fpu/ftestexcept.c 2004-03-05 11:14:48.000000000 +0100+++ glibc-2.6.1/sysdeps/i386/fpu/ftestexcept.c 2008-06-24 10:56:14.000000000 +0200@@ -26,7 +26,7 @@ int fetestexcept (int excepts) {- int temp;+ short temp; int xtemp = 0; /* Get current exceptions. */