зеркало из https://github.com/mozilla/gecko-dev.git
1) Change HAVE_LONG_LONG to be JS_HAVE_LONG_LONG to avoid collision with NSPR.
2) On Linux, define JS_HAVE_LONG_LONG since we're using gcc.
This commit is contained in:
Родитель
e360cbcf7a
Коммит
e8a1ca2e0f
|
@ -652,7 +652,7 @@ but no real architecture does 128-bit ints yet).
|
|||
<H4>
|
||||
jsosdep.h</H4>
|
||||
Annoying OS dependencies rationalized into a few "feature-test" macros
|
||||
such as <TT>HAVE_LONG_LONG</TT>.
|
||||
such as <TT>JS_HAVE_LONG_LONG</TT>.
|
||||
<H4>
|
||||
jsprf.*</H4>
|
||||
Portable, buffer-overrun-resistant sprintf and friends. For no good reason
|
||||
|
|
|
@ -36,7 +36,7 @@ JS_EXPORT_API(JSInt64) JSLL_MaxInt(void) { return ll_maxint; }
|
|||
JS_EXPORT_API(JSInt64) JSLL_MinInt(void) { return ll_minint; }
|
||||
#endif
|
||||
|
||||
#ifndef HAVE_LONG_LONG
|
||||
#ifndef JS_HAVE_LONG_LONG
|
||||
/*
|
||||
** Divide 64-bit a by 32-bit b, which must be normalized so its high bit is 1.
|
||||
*/
|
||||
|
@ -257,4 +257,4 @@ JS_EXPORT_API(void) jsll_udivmod(JSUint64 *qp, JSUint64 *rp, JSUint64 a, JSUint6
|
|||
qp->hi = q1;
|
||||
}
|
||||
}
|
||||
#endif /* !HAVE_LONG_LONG */
|
||||
#endif /* !JS_HAVE_LONG_LONG */
|
||||
|
|
|
@ -56,7 +56,7 @@ JS_EXTERN_API(JSInt64) JSLL_Zero(void);
|
|||
#define JSLL_MININT JSLL_MinInt()
|
||||
#define JSLL_ZERO JSLL_Zero()
|
||||
|
||||
#ifdef HAVE_LONG_LONG
|
||||
#ifdef JS_HAVE_LONG_LONG
|
||||
|
||||
#if JS_BYTES_PER_LONG == 8
|
||||
#define JSLL_INIT(hi, lo) ((hi ## L << 32) + lo ## L)
|
||||
|
@ -175,7 +175,7 @@ JS_EXTERN_API(JSInt64) JSLL_Zero(void);
|
|||
(*(qp) = ((JSUint64)(a) / (b)), \
|
||||
*(rp) = ((JSUint64)(a) % (b)))
|
||||
|
||||
#else /* !HAVE_LONG_LONG */
|
||||
#else /* !JS_HAVE_LONG_LONG */
|
||||
|
||||
#ifdef IS_LITTLE_ENDIAN
|
||||
#define JSLL_INIT(hi, lo) {JS_INT32(lo), JS_INT32(hi)}
|
||||
|
@ -402,7 +402,7 @@ JS_EXTERN_API(void) jsll_udivmod(JSUint64 *qp, JSUint64 *rp, JSUint64 a, JSUint6
|
|||
JSLL_NEG(l, l); \
|
||||
}
|
||||
|
||||
#endif /* !HAVE_LONG_LONG */
|
||||
#endif /* !JS_HAVE_LONG_LONG */
|
||||
|
||||
JS_END_EXTERN_C
|
||||
|
||||
|
|
|
@ -25,9 +25,9 @@
|
|||
#ifdef XP_PC
|
||||
|
||||
#ifdef _WIN32
|
||||
#define HAVE_LONG_LONG
|
||||
#define JS_HAVE_LONG_LONG
|
||||
#else
|
||||
#undef HAVE_LONG_LONG
|
||||
#undef JS_HAVE_LONG_LONG
|
||||
#endif
|
||||
#endif /* XP_PC */
|
||||
|
||||
|
@ -51,31 +51,31 @@ JS_END_EXTERN_C
|
|||
* Get OS specific header information.
|
||||
*/
|
||||
#if defined(AIXV3)
|
||||
#define HAVE_LONG_LONG
|
||||
#define JS_HAVE_LONG_LONG
|
||||
|
||||
#elif defined(BSDI)
|
||||
#define HAVE_LONG_LONG
|
||||
#define JS_HAVE_LONG_LONG
|
||||
|
||||
#elif defined(HPUX)
|
||||
#undef HAVE_LONG_LONG
|
||||
#undef JS_HAVE_LONG_LONG
|
||||
|
||||
#elif defined(IRIX)
|
||||
#define HAVE_LONG_LONG
|
||||
#define JS_HAVE_LONG_LONG
|
||||
|
||||
#elif defined(linux)
|
||||
#undef HAVE_LONG_LONG
|
||||
#define JS_HAVE_LONG_LONG
|
||||
|
||||
#elif defined(OSF1)
|
||||
#define HAVE_LONG_LONG
|
||||
#define JS_HAVE_LONG_LONG
|
||||
|
||||
#elif defined(SCO)
|
||||
#undef HAVE_LONG_LONG
|
||||
#undef JS_HAVE_LONG_LONG
|
||||
|
||||
#elif defined(SOLARIS)
|
||||
#define HAVE_LONG_LONG
|
||||
#define JS_HAVE_LONG_LONG
|
||||
|
||||
#elif defined(SUNOS4)
|
||||
#undef HAVE_LONG_LONG
|
||||
#undef JS_HAVE_LONG_LONG
|
||||
|
||||
/*
|
||||
** Missing function prototypes
|
||||
|
@ -84,7 +84,7 @@ JS_END_EXTERN_C
|
|||
extern void *sbrk(int);
|
||||
|
||||
#elif defined(UNIXWARE)
|
||||
#undef HAVE_LONG_LONG
|
||||
#undef JS_HAVE_LONG_LONG
|
||||
#endif
|
||||
|
||||
#endif /* XP_UNIX */
|
||||
|
|
|
@ -254,7 +254,7 @@ typedef long JSInt32;
|
|||
** 64 bit values. The only guaranteed portability requires the use of
|
||||
** the JSLL_ macros (see jslong.h).
|
||||
************************************************************************/
|
||||
#ifdef HAVE_LONG_LONG
|
||||
#ifdef JS_HAVE_LONG_LONG
|
||||
#if JS_BYTES_PER_LONG == 8
|
||||
typedef long JSInt64;
|
||||
typedef unsigned long JSUint64;
|
||||
|
@ -268,7 +268,7 @@ typedef unsigned __int64 JSUint64;
|
|||
typedef long long JSInt64;
|
||||
typedef unsigned long long JSUint64;
|
||||
#endif /* JS_BYTES_PER_LONG == 8 */
|
||||
#else /* !HAVE_LONG_LONG */
|
||||
#else /* !JS_HAVE_LONG_LONG */
|
||||
typedef struct {
|
||||
#ifdef IS_LITTLE_ENDIAN
|
||||
JSUint32 lo, hi;
|
||||
|
@ -277,7 +277,7 @@ typedef struct {
|
|||
#endif
|
||||
} JSInt64;
|
||||
typedef JSInt64 JSUint64;
|
||||
#endif /* !HAVE_LONG_LONG */
|
||||
#endif /* !JS_HAVE_LONG_LONG */
|
||||
|
||||
/************************************************************************
|
||||
** TYPES: JSUintn
|
||||
|
|
|
@ -234,7 +234,7 @@ PRMJ_ToExtendedTime(JSInt32 time)
|
|||
|
||||
JSLL_UI2L(g1970GMTMicroSeconds,G1970GMTMICROHI);
|
||||
JSLL_UI2L(low,G1970GMTMICROLOW);
|
||||
#ifndef HAVE_LONG_LONG
|
||||
#ifndef JS_HAVE_LONG_LONG
|
||||
JSLL_SHL(g1970GMTMicroSeconds,g1970GMTMicroSeconds,16);
|
||||
JSLL_SHL(g1970GMTMicroSeconds,g1970GMTMicroSeconds,16);
|
||||
#else
|
||||
|
|
Загрузка…
Ссылка в новой задаче