| Index: include/freetype/config/ftconfig.h
|
| diff --git a/include/freetype/config/ftconfig.h b/include/freetype/config/ftconfig.h
|
| index 56285694749047d349c7d71713afb29776e385b7..5dce30ef3edc73afca9ea0b1216079262373ff6b 100644
|
| --- a/include/freetype/config/ftconfig.h
|
| +++ b/include/freetype/config/ftconfig.h
|
| @@ -4,7 +4,7 @@
|
| /* */
|
| /* ANSI-specific configuration file (specification only). */
|
| /* */
|
| -/* Copyright 1996-2004, 2006-2008, 2010-2011 by */
|
| +/* Copyright 1996-2004, 2006-2008, 2010-2011, 2013 by */
|
| /* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
| /* */
|
| /* This file is part of the FreeType project, and may only be used, */
|
| @@ -200,6 +200,30 @@ FT_BEGIN_HEADER
|
| /* */
|
| typedef unsigned XXX FT_UInt32;
|
|
|
| +
|
| + /*************************************************************************/
|
| + /* */
|
| + /* <Type> */
|
| + /* FT_Int64 */
|
| + /* */
|
| + /* A typedef for a 64bit signed integer type. The size depends on */
|
| + /* the configuration. Only defined if there is real 64bit support; */
|
| + /* otherwise, it gets emulated with a structure (if necessary). */
|
| + /* */
|
| + typedef signed XXX FT_Int64;
|
| +
|
| +
|
| + /*************************************************************************/
|
| + /* */
|
| + /* <Type> */
|
| + /* FT_UInt64 */
|
| + /* */
|
| + /* A typedef for a 64bit unsigned integer type. The size depends on */
|
| + /* the configuration. Only defined if there is real 64bit support; */
|
| + /* otherwise, it gets emulated with a structure (if necessary). */
|
| + /* */
|
| + typedef unsigned XXX FT_UInt64;
|
| +
|
| /* */
|
|
|
| #endif
|
| @@ -239,13 +263,15 @@ FT_BEGIN_HEADER
|
|
|
| /* FT_LONG64 must be defined if a 64-bit type is available */
|
| #define FT_LONG64
|
| -#define FT_INT64 long
|
| +#define FT_INT64 long
|
| +#define FT_UINT64 unsigned long
|
|
|
| #elif defined( _MSC_VER ) && _MSC_VER >= 900 /* Visual C++ (and Intel C++) */
|
|
|
| /* this compiler provides the __int64 type */
|
| #define FT_LONG64
|
| -#define FT_INT64 __int64
|
| +#define FT_INT64 __int64
|
| +#define FT_UINT64 unsigned __int64
|
|
|
| #elif defined( __BORLANDC__ ) /* Borland C++ */
|
|
|
| @@ -254,7 +280,8 @@ FT_BEGIN_HEADER
|
|
|
| /* this compiler provides the __int64 type */
|
| #define FT_LONG64
|
| -#define FT_INT64 __int64
|
| +#define FT_INT64 __int64
|
| +#define FT_UINT64 unsigned __int64
|
|
|
| #elif defined( __WATCOMC__ ) /* Watcom C++ */
|
|
|
| @@ -263,13 +290,15 @@ FT_BEGIN_HEADER
|
| #elif defined( __MWERKS__ ) /* Metrowerks CodeWarrior */
|
|
|
| #define FT_LONG64
|
| -#define FT_INT64 long long int
|
| +#define FT_INT64 long long int
|
| +#define FT_UINT64 unsigned long long int
|
|
|
| #elif defined( __GNUC__ )
|
|
|
| /* GCC provides the `long long' type */
|
| #define FT_LONG64
|
| -#define FT_INT64 long long int
|
| +#define FT_INT64 long long int
|
| +#define FT_UINT64 unsigned long long int
|
|
|
| #endif /* FT_SIZEOF_LONG == (64 / FT_CHAR_BIT) */
|
|
|
| @@ -293,6 +322,11 @@ FT_BEGIN_HEADER
|
|
|
| #endif /* FT_LONG64 && !FT_CONFIG_OPTION_FORCE_INT64 */
|
|
|
| +#ifdef FT_LONG64
|
| + typedef FT_INT64 FT_Int64;
|
| + typedef FT_UINT64 FT_UInt64;
|
| +#endif
|
| +
|
|
|
| #define FT_BEGIN_STMNT do {
|
| #define FT_END_STMNT } while ( 0 )
|
| @@ -355,7 +389,8 @@ FT_BEGIN_HEADER
|
| "mov %0, %1, lsr #16\n\t" /* %0 = %1 >> 16 */
|
| "orr %0, %0, %2, lsl #16\n\t" /* %0 |= %2 << 16 */
|
| : "=r"(a), "=&r"(t2), "=&r"(t)
|
| - : "r"(a), "r"(b) );
|
| + : "r"(a), "r"(b)
|
| + : "cc" );
|
| return a;
|
| }
|
|
|
|
|