diff --git a/js/src/jsarray.cpp b/js/src/jsarray.cpp index a109aa5bae7f..4d9bb41dea57 100644 --- a/js/src/jsarray.cpp +++ b/js/src/jsarray.cpp @@ -1764,30 +1764,6 @@ InitArrayObject(JSContext *cx, JSObject *obj, jsuint length, const jsval *vector return JS_TRUE; } -#ifdef JS_TRACER -static JSString* FASTCALL -Array_p_join(JSContext* cx, JSObject* obj, JSString *str) -{ - AutoValueRooter tvr(cx); - if (!array_toString_sub(cx, obj, JS_FALSE, str, tvr.addr())) { - SetBuiltinError(cx); - return NULL; - } - return JSVAL_TO_STRING(tvr.value()); -} - -static JSString* FASTCALL -Array_p_toString(JSContext* cx, JSObject* obj) -{ - AutoValueRooter tvr(cx); - if (!array_toString_sub(cx, obj, JS_FALSE, NULL, tvr.addr())) { - SetBuiltinError(cx); - return NULL; - } - return JSVAL_TO_STRING(tvr.value()); -} -#endif - /* * Perl-inspired join, reverse, and sort. */ @@ -2406,21 +2382,6 @@ js_ArrayCompPush(JSContext *cx, JSObject *obj, jsval v) JS_DEFINE_CALLINFO_3(extern, BOOL, js_ArrayCompPush, CONTEXT, OBJECT, JSVAL, 0, nanojit::ACC_STORE_ANY) -#ifdef JS_TRACER -static jsval FASTCALL -Array_p_push1(JSContext* cx, JSObject* obj, jsval v) -{ - AutoValueRooter tvr(cx, v); - if (obj->isDenseArray() - ? array_push1_dense(cx, obj, v, tvr.addr()) - : array_push_slowly(cx, obj, 1, tvr.addr(), tvr.addr())) { - return tvr.value(); - } - SetBuiltinError(cx); - return JSVAL_VOID; -} -#endif - static JSBool array_push(JSContext *cx, uintN argc, jsval *vp) { @@ -2478,21 +2439,6 @@ array_pop_dense(JSContext *cx, JSObject* obj, jsval *vp) return JS_TRUE; } -#ifdef JS_TRACER -static jsval FASTCALL -Array_p_pop(JSContext* cx, JSObject* obj) -{ - AutoValueRooter tvr(cx); - if (obj->isDenseArray() - ? array_pop_dense(cx, obj, tvr.addr()) - : array_pop_slowly(cx, obj, tvr.addr())) { - return tvr.value(); - } - SetBuiltinError(cx); - return JSVAL_VOID; -} -#endif - static JSBool array_pop(JSContext *cx, uintN argc, jsval *vp) { @@ -3273,28 +3219,19 @@ static JSPropertySpec array_props[] = { {0,0,0,0,0} }; -JS_DEFINE_TRCINFO_1(array_toString, - (2, (static, STRING_FAIL, Array_p_toString, CONTEXT, THIS, 0, nanojit::ACC_STORE_ANY))) -JS_DEFINE_TRCINFO_1(array_join, - (3, (static, STRING_FAIL, Array_p_join, CONTEXT, THIS, STRING, 0, nanojit::ACC_STORE_ANY))) -JS_DEFINE_TRCINFO_1(array_push, - (3, (static, JSVAL_FAIL, Array_p_push1, CONTEXT, THIS, JSVAL, 0, nanojit::ACC_STORE_ANY))) -JS_DEFINE_TRCINFO_1(array_pop, - (2, (static, JSVAL_FAIL, Array_p_pop, CONTEXT, THIS, 0, nanojit::ACC_STORE_ANY))) - static JSFunctionSpec array_methods[] = { #if JS_HAS_TOSOURCE JS_FN(js_toSource_str, array_toSource, 0,0), #endif - JS_TN(js_toString_str, array_toString, 0,0, &array_toString_trcinfo), + JS_FN(js_toString_str, array_toString, 0,0), JS_FN(js_toLocaleString_str,array_toLocaleString,0,0), /* Perl-ish methods. */ - JS_TN("join", array_join, 1,JSFUN_GENERIC_NATIVE, &array_join_trcinfo), + JS_FN("join", array_join, 1,JSFUN_GENERIC_NATIVE), JS_FN("reverse", array_reverse, 0,JSFUN_GENERIC_NATIVE), JS_FN("sort", array_sort, 1,JSFUN_GENERIC_NATIVE), - JS_TN("push", array_push, 1,JSFUN_GENERIC_NATIVE, &array_push_trcinfo), - JS_TN("pop", array_pop, 0,JSFUN_GENERIC_NATIVE, &array_pop_trcinfo), + JS_FN("push", array_push, 1,JSFUN_GENERIC_NATIVE), + JS_FN("pop", array_pop, 0,JSFUN_GENERIC_NATIVE), JS_FN("shift", array_shift, 0,JSFUN_GENERIC_NATIVE), JS_FN("unshift", array_unshift, 1,JSFUN_GENERIC_NATIVE), JS_FN("splice", array_splice, 2,JSFUN_GENERIC_NATIVE), diff --git a/js/src/jsdate.cpp b/js/src/jsdate.cpp index 9f16c8aa40b7..e75d56d81c39 100644 --- a/js/src/jsdate.cpp +++ b/js/src/jsdate.cpp @@ -2199,26 +2199,6 @@ date_toString(JSContext *cx, uintN argc, jsval *vp) return date_format(cx, utctime, FORMATSPEC_FULL, vp); } -#ifdef JS_TRACER -static jsval FASTCALL -date_valueOf_tn(JSContext* cx, JSObject* obj, JSString* str) -{ - JS_ASSERT(JS_InstanceOf(cx, obj, &js_DateClass, NULL)); - jsdouble t = *JSVAL_TO_DOUBLE(obj->getDateUTCTime()); - - JSString* number_str = ATOM_TO_STRING(cx->runtime->atomState.typeAtoms[JSTYPE_NUMBER]); - jsval v; - if (js_EqualStrings(str, number_str)) { - if (!js_NewNumberInRootedValue(cx, t, &v)) - return JSVAL_ERROR_COOKIE; - } else { - if (!date_format(cx, t, FORMATSPEC_FULL, &v)) - return JSVAL_ERROR_COOKIE; - } - return v; -} -#endif - static JSBool date_valueOf(JSContext *cx, uintN argc, jsval *vp) { @@ -2254,9 +2234,6 @@ static JSFunctionSpec date_static_methods[] = { JS_FS_END }; -JS_DEFINE_TRCINFO_1(date_valueOf, - (3, (static, JSVAL_RETRY, date_valueOf_tn, CONTEXT, THIS, STRING, 0, nanojit::ACC_STORE_ANY))) - static JSFunctionSpec date_methods[] = { JS_FN("getTime", date_getTime, 0,0), JS_FN("getTimezoneOffset", date_getTimezoneOffset, 0,0), @@ -2302,12 +2279,11 @@ static JSFunctionSpec date_methods[] = { JS_FN("toTimeString", date_toTimeString, 0,0), JS_FN("toISOString", date_toISOString, 0,0), JS_FN(js_toJSON_str, date_toISOString, 0,0), - #if JS_HAS_TOSOURCE JS_FN(js_toSource_str, date_toSource, 0,0), #endif JS_FN(js_toString_str, date_toString, 0,0), - JS_TN(js_valueOf_str, date_valueOf, 0,0, &date_valueOf_trcinfo), + JS_FN(js_valueOf_str, date_valueOf, 0,0), JS_FS_END }; diff --git a/js/src/jstracer.cpp b/js/src/jstracer.cpp index d941d00ced95..dae37bcb8f87 100644 --- a/js/src/jstracer.cpp +++ b/js/src/jstracer.cpp @@ -10681,7 +10681,7 @@ TraceRecorder::emitNativeCall(JSSpecializedNative* sn, uintN argc, LIns* args[], /* * The return value will be processed by NativeCallComplete since * we have to know the actual return value type for calls that return - * jsval (like Array_p_pop). + * jsval. */ pendingSpecializedNative = sn;