Help the branch predictor in the builtins.

This commit is contained in:
Andreas Gal 2008-07-05 15:46:58 -07:00
parent 00b1baa734
commit 05c4c4bb27

View File

@ -176,14 +176,14 @@ inline FASTCALL uint64 builtin_BoxDouble(JSContext* cx, jsdouble d)
inline FASTCALL uint64 builtin_BoxInt32(JSContext* cx, jsint i)
{
if (INT_FITS_IN_JSVAL(i))
if (JS_LIKELY(INT_FITS_IN_JSVAL(i)))
return INT_TO_JSVAL(i) & 0xffffffffLL;
return builtin_BoxDouble(cx, (jsdouble)i);
}
}
inline FASTCALL uint64 builtin_UnboxInt32(JSContext* cx, jsval v)
{
if (JSVAL_IS_INT(v))
if (JS_LIKELY(JSVAL_IS_INT(v)))
return JSVAL_TO_INT(v);
jsint i;
if (JSVAL_IS_DOUBLE(v) && JSDOUBLE_IS_INT(*JSVAL_TO_DOUBLE(v), i))