Back out e4c82a6b298c, 036194408a50, 39acc9f51df8 (bug 714647 and followups) because of test_finalizer.js crashes in Linux64 PGO builds

This commit is contained in:
Matt Brubeck
2012-04-12 22:07:43 -07:00
parent be481d84f3
commit c5e4bddc54
82 changed files with 1061 additions and 1362 deletions

View File

@@ -443,7 +443,7 @@ js::GetPropertyNames(JSContext *cx, JSObject *obj, unsigned flags, AutoIdVector
size_t sCustomIteratorCount = 0;
static inline bool
GetCustomIterator(JSContext *cx, HandleObject obj, unsigned flags, Value *vp)
GetCustomIterator(JSContext *cx, JSObject *obj, unsigned flags, Value *vp)
{
JS_CHECK_RECURSION(cx, return false);
@@ -584,7 +584,7 @@ RegisterEnumerator(JSContext *cx, JSObject *iterobj, NativeIterator *ni)
}
static inline bool
VectorToKeyIterator(JSContext *cx, HandleObject obj, unsigned flags, AutoIdVector &keys,
VectorToKeyIterator(JSContext *cx, JSObject *obj, unsigned flags, AutoIdVector &keys,
uint32_t slength, uint32_t key, Value *vp)
{
JS_ASSERT(!(flags & JSITER_FOREACH));
@@ -595,7 +595,7 @@ VectorToKeyIterator(JSContext *cx, HandleObject obj, unsigned flags, AutoIdVecto
types::MarkTypeObjectFlags(cx, obj, types::OBJECT_FLAG_ITERATED);
}
RootedVarObject iterobj(cx, NewIteratorObject(cx, flags));
JSObject *iterobj = NewIteratorObject(cx, flags);
if (!iterobj)
return false;
@@ -631,13 +631,13 @@ VectorToKeyIterator(JSContext *cx, HandleObject obj, unsigned flags, AutoIdVecto
namespace js {
bool
VectorToKeyIterator(JSContext *cx, HandleObject obj, unsigned flags, AutoIdVector &props, Value *vp)
VectorToKeyIterator(JSContext *cx, JSObject *obj, unsigned flags, AutoIdVector &props, Value *vp)
{
return VectorToKeyIterator(cx, obj, flags, props, 0, 0, vp);
}
bool
VectorToValueIterator(JSContext *cx, HandleObject obj, unsigned flags, AutoIdVector &keys,
VectorToValueIterator(JSContext *cx, JSObject *obj, unsigned flags, AutoIdVector &keys,
Value *vp)
{
JS_ASSERT(flags & JSITER_FOREACH);
@@ -665,7 +665,7 @@ VectorToValueIterator(JSContext *cx, HandleObject obj, unsigned flags, AutoIdVec
}
bool
EnumeratedIdVectorToIterator(JSContext *cx, HandleObject obj, unsigned flags, AutoIdVector &props, Value *vp)
EnumeratedIdVectorToIterator(JSContext *cx, JSObject *obj, unsigned flags, AutoIdVector &props, Value *vp)
{
if (!(flags & JSITER_FOREACH))
return VectorToKeyIterator(cx, obj, flags, props, vp);
@@ -682,7 +682,7 @@ UpdateNativeIterator(NativeIterator *ni, JSObject *obj)
}
bool
GetIterator(JSContext *cx, HandleObject obj, unsigned flags, Value *vp)
GetIterator(JSContext *cx, JSObject *obj, unsigned flags, Value *vp)
{
Vector<const Shape *, 8> shapes(cx);
uint32_t key = 0;
@@ -849,7 +849,7 @@ iterator_next(JSContext *cx, unsigned argc, Value *vp)
CallArgs args = CallArgsFromVp(argc, vp);
bool ok;
RootedVarObject obj(cx, NonGenericMethodGuard(cx, args, iterator_next, &IteratorClass, &ok));
JSObject *obj = NonGenericMethodGuard(cx, args, iterator_next, &IteratorClass, &ok);
if (!obj)
return ok;
@@ -893,7 +893,7 @@ js::ValueToIterator(JSContext *cx, unsigned flags, Value *vp)
*/
cx->iterValue.setMagic(JS_NO_ITER_VALUE);
RootedVarObject obj(cx);
JSObject *obj;
if (vp->isObject()) {
/* Common case. */
obj = &vp->toObject();
@@ -906,7 +906,7 @@ js::ValueToIterator(JSContext *cx, unsigned flags, Value *vp)
* standard.
*/
if ((flags & JSITER_ENUMERATE)) {
if (!js_ValueToObjectOrNull(cx, *vp, obj.address()))
if (!js_ValueToObjectOrNull(cx, *vp, &obj))
return false;
/* fall through */
} else {
@@ -1154,7 +1154,7 @@ bool
ElementIteratorObject::iteratorNext(JSContext *cx, Value *vp)
{
uint32_t i, length;
RootedVarObject obj(cx, getTargetObject());
JSObject *obj = getTargetObject();
if (!js_GetLengthProperty(cx, obj, &length))
goto error;
@@ -1186,7 +1186,7 @@ JSObject::asElementIterator()
}
JSBool
js_IteratorMore(JSContext *cx, HandleObject iterobj, Value *rval)
js_IteratorMore(JSContext *cx, JSObject *iterobj, Value *rval)
{
/* Fast path for native iterators */
NativeIterator *ni = NULL;