|
|
|
@ -1494,6 +1494,10 @@ |
|
|
|
|
|
|
|
|
|
#define TT_MulFix14 TT_MulFix14_long_long |
|
|
|
|
|
|
|
|
|
/* Temporarily disable the warning that C90 doesn't support `long long'. */ |
|
|
|
|
#pragma GCC diagnostic push |
|
|
|
|
#pragma GCC diagnostic ignored "-Wlong-long" |
|
|
|
|
|
|
|
|
|
/* This is declared `noinline' because inlining the function results */ |
|
|
|
|
/* in slower code. The `pure' attribute indicates that the result */ |
|
|
|
|
/* only depends on the parameters. */ |
|
|
|
@ -1502,10 +1506,6 @@ |
|
|
|
|
TT_MulFix14_long_long( FT_Int32 a, |
|
|
|
|
FT_Int b ) |
|
|
|
|
{ |
|
|
|
|
/* Temporarily disable the warning that C90 doesn't support */ |
|
|
|
|
/* `long long'. */ |
|
|
|
|
#pragma GCC diagnostic push |
|
|
|
|
#pragma GCC diagnostic ignored "-Wlong-long" |
|
|
|
|
|
|
|
|
|
long long ret = (long long)a * b; |
|
|
|
|
|
|
|
|
@ -1518,9 +1518,9 @@ |
|
|
|
|
ret += 0x2000 + tmp; |
|
|
|
|
|
|
|
|
|
return (FT_Int32)( ret >> 14 ); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
#pragma GCC diagnostic pop |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
#endif /* __GNUC__ && ( __i386__ || __x86_64__ ) */ |
|
|
|
|
|
|
|
|
@ -1571,6 +1571,9 @@ |
|
|
|
|
|
|
|
|
|
#define TT_DotFix14 TT_DotFix14_long_long |
|
|
|
|
|
|
|
|
|
#pragma GCC diagnostic push |
|
|
|
|
#pragma GCC diagnostic ignored "-Wlong-long" |
|
|
|
|
|
|
|
|
|
static __attribute__(( pure )) FT_Int32 |
|
|
|
|
TT_DotFix14_long_long( FT_Int32 ax, |
|
|
|
|
FT_Int32 ay, |
|
|
|
@ -1579,8 +1582,6 @@ |
|
|
|
|
{ |
|
|
|
|
/* Temporarily disable the warning that C90 doesn't support */ |
|
|
|
|
/* `long long'. */ |
|
|
|
|
#pragma GCC diagnostic push |
|
|
|
|
#pragma GCC diagnostic ignored "-Wlong-long" |
|
|
|
|
|
|
|
|
|
long long temp1 = (long long)ax * bx; |
|
|
|
|
long long temp2 = (long long)ay * by; |
|
|
|
@ -1592,9 +1593,10 @@ |
|
|
|
|
|
|
|
|
|
return (FT_Int32)( temp1 >> 14 ); |
|
|
|
|
|
|
|
|
|
#pragma GCC diagnostic pop |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
#pragma GCC diagnostic pop |
|
|
|
|
|
|
|
|
|
#endif /* __GNUC__ && (__arm__ || __i386__ || __x86_64__) */ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|