OLD | NEW |
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ | 1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ |
2 /* This Source Code Form is subject to the terms of the Mozilla Public | 2 /* This Source Code Form is subject to the terms of the Mozilla Public |
3 * License, v. 2.0. If a copy of the MPL was not distributed with this | 3 * License, v. 2.0. If a copy of the MPL was not distributed with this |
4 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ | 4 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ |
5 | 5 |
6 /* | 6 /* |
7 ** File: prlong.h | 7 ** File: prlong.h |
8 ** Description: Portable access to 64 bit numerics | 8 ** Description: Portable access to 64 bit numerics |
9 ** | 9 ** |
10 ** Long-long (64-bit signed integer type) support. Some C compilers | 10 ** Long-long (64-bit signed integer type) support. Some C compilers |
(...skipping 17 matching lines...) Expand all Loading... |
28 ** initializer | 28 ** initializer |
29 ***********************************************************************/ | 29 ***********************************************************************/ |
30 NSPR_API(PRInt64) LL_MaxInt(void); | 30 NSPR_API(PRInt64) LL_MaxInt(void); |
31 NSPR_API(PRInt64) LL_MinInt(void); | 31 NSPR_API(PRInt64) LL_MinInt(void); |
32 NSPR_API(PRInt64) LL_Zero(void); | 32 NSPR_API(PRInt64) LL_Zero(void); |
33 NSPR_API(PRUint64) LL_MaxUint(void); | 33 NSPR_API(PRUint64) LL_MaxUint(void); |
34 | 34 |
35 #if defined(HAVE_LONG_LONG) | 35 #if defined(HAVE_LONG_LONG) |
36 | 36 |
37 /* Keep this in sync with prtypes.h. */ | 37 /* Keep this in sync with prtypes.h. */ |
38 #if PR_BYTES_PER_LONG == 8 && !defined(__APPLE__) | 38 #if PR_BYTES_PER_LONG == 8 && !defined(PR_ALTERNATE_INT64_TYPEDEF) |
39 #define LL_MAXINT 9223372036854775807L | 39 #define LL_MAXINT 9223372036854775807L |
40 #define LL_MININT (-LL_MAXINT - 1L) | 40 #define LL_MININT (-LL_MAXINT - 1L) |
41 #define LL_ZERO 0L | 41 #define LL_ZERO 0L |
42 #define LL_MAXUINT 18446744073709551615UL | 42 #define LL_MAXUINT 18446744073709551615UL |
43 #define LL_INIT(hi, lo) ((hi ## L << 32) + lo ## L) | 43 #define LL_INIT(hi, lo) ((hi ## L << 32) + lo ## L) |
44 #elif defined(WIN32) && !defined(__GNUC__) | 44 #elif defined(WIN32) && !defined(__GNUC__) |
45 #define LL_MAXINT 9223372036854775807i64 | 45 #define LL_MAXINT 9223372036854775807i64 |
46 #define LL_MININT (-LL_MAXINT - 1i64) | 46 #define LL_MININT (-LL_MAXINT - 1i64) |
47 #define LL_ZERO 0i64 | 47 #define LL_ZERO 0i64 |
48 #define LL_MAXUINT 18446744073709551615ui64 | 48 #define LL_MAXUINT 18446744073709551615ui64 |
(...skipping 345 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
394 \ | 394 \ |
395 if (_negative) \ | 395 if (_negative) \ |
396 LL_NEG(l, l); \ | 396 LL_NEG(l, l); \ |
397 } | 397 } |
398 | 398 |
399 #endif /* !HAVE_LONG_LONG */ | 399 #endif /* !HAVE_LONG_LONG */ |
400 | 400 |
401 PR_END_EXTERN_C | 401 PR_END_EXTERN_C |
402 | 402 |
403 #endif /* prlong_h___ */ | 403 #endif /* prlong_h___ */ |
OLD | NEW |