Commit 89a94d4212503cff39448bd5329f1efc38c999be

Dave Arnold 2014-02-12T23:45:47

[cff] Optimize by using `FT_MulDiv'. Suggested by Alexei. * src/cff/cf2font.c (cf2_computeDarkening): Do it.

diff --git a/ChangeLog b/ChangeLog
index e0777e5..122ef6f 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2014-02-12  Dave Arnold  <darnold@adobe.com>
+
+	[cff] Optimize by using `FT_MulDiv'.
+	Suggested by Alexei.
+
+	* src/cff/cf2font.c (cf2_computeDarkening): Do it.
+
 2014-02-12  Werner Lemberg  <wl@gnu.org>
 
 	Fix Savannah bug #41465.
diff --git a/src/cff/cf2font.c b/src/cff/cf2font.c
index 9eedf1b..6e99dc2 100644
--- a/src/cff/cf2font.c
+++ b/src/cff/cf2font.c
@@ -167,7 +167,7 @@
         if ( !xdelta )
           goto Try_x3;
 
-        *darkenAmount = FT_MulFix( x, FT_DivFix( ydelta, xdelta ) ) +
+        *darkenAmount = FT_MulDiv( x, ydelta, xdelta ) +
                           FT_DivFix( cf2_intToFixed( y1 ), ppem );
       }
 
@@ -184,7 +184,7 @@
           if ( !xdelta )
             goto Try_x4;
 
-          *darkenAmount = FT_MulFix( x, FT_DivFix( ydelta, xdelta ) ) +
+          *darkenAmount = FT_MulDiv( x, ydelta, xdelta ) +
                             FT_DivFix( cf2_intToFixed( y2 ), ppem );
         }
       }
@@ -202,7 +202,7 @@
           if ( !xdelta )
             goto Use_y4;
 
-          *darkenAmount = FT_MulFix( x, FT_DivFix( ydelta, xdelta ) ) +
+          *darkenAmount = FT_MulDiv( x, ydelta, xdelta ) +
                             FT_DivFix( cf2_intToFixed( y3 ), ppem );
         }
       }