* src/base/ftcalc.c (FT_MulFix) <asm>: Protect registers correctly

from clobbering.  Patch from Savannah bug report #23556.

* docs/CHANGES: Document it.
This commit is contained in:
Werner Lemberg 2008-06-15 11:06:12 +00:00
parent b796adb451
commit ad83e05b37
3 changed files with 21 additions and 2 deletions

View File

@ -1,3 +1,10 @@
2008-06-15 Werner Lemberg <wl@gnu.org>
* src/base/ftcalc.c (FT_MulFix) <asm>: Protect registers correctly
from clobbering. Patch from Savannah bug report #23556.
* docs/CHANGES: Document it.
2008-06-10 Werner Lemberg <wl@gnu.org>
* autogen.sh: Add option `--install' to libtoolize.

View File

@ -1,3 +1,15 @@
CHANGES BETWEEN 2.3.7 and 2.3.6
I. IMPORTANT BUG FIXES
- If the library was compiled on an i386 platform using gcc, and
compiler option -O3 was given, `FT_MulFix' sometimes returned
incorrect results which could have caused problems with
`FT_Request_Metrics' and `FT_Select_Metrics', returning an
incorrect descender size.
======================================================================
CHANGES BETWEEN 2.3.6 and 2.3.5

View File

@ -430,8 +430,8 @@
"shll $16, %%edx\n"
"addl %%edx, %%eax\n"
"mov %%eax, %0\n"
: "=r"(result)
: "a"(a), "d"(b)
: "=a"(result), "+d"(b)
: "a"(a)
: "%ecx"
);
return result;