Bug 1105069 - Part 12: Convert VisitGrayWrapperTargets to GCCellPtr; r=jonco, r=mccr8
This commit is contained in:
@@ -120,7 +120,7 @@ js::IterateGrayObjects(Zone *zone, GCThingCallback cellCallback, void *data)
|
||||
for (ZoneCellIterUnderGC i(zone, AllocKind(finalizeKind)); !i.done(); i.next()) {
|
||||
JSObject *obj = i.get<JSObject>();
|
||||
if (obj->asTenured().isMarked(GRAY))
|
||||
cellCallback(data, obj);
|
||||
cellCallback(data, JS::GCCellPtr(obj));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -659,7 +659,7 @@ js::VisitGrayWrapperTargets(Zone *zone, GCThingCallback callback, void *closure)
|
||||
for (JSCompartment::WrapperEnum e(comp); !e.empty(); e.popFront()) {
|
||||
gc::Cell *thing = e.front().key().wrapped;
|
||||
if (thing->isTenured() && thing->asTenured().isMarked(gc::GRAY))
|
||||
callback(closure, thing);
|
||||
callback(closure, JS::GCCellPtr(thing, thing->asTenured().getTraceKind()));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -513,7 +513,7 @@ extern JS_FRIEND_API(bool)
|
||||
ZoneGlobalsAreAllGray(JS::Zone *zone);
|
||||
|
||||
typedef void
|
||||
(*GCThingCallback)(void *closure, void *gcthing);
|
||||
(*GCThingCallback)(void *closure, JS::GCCellPtr thing);
|
||||
|
||||
extern JS_FRIEND_API(void)
|
||||
VisitGrayWrapperTargets(JS::Zone *zone, GCThingCallback callback, void *closure);
|
||||
|
||||
@@ -439,10 +439,10 @@ NoteJSChildTracerShim(JSTracer* aTrc, void** aThingp, JSGCTraceKind aTraceKind)
|
||||
}
|
||||
|
||||
static void
|
||||
NoteJSChildGrayWrapperShim(void* aData, void* aThing)
|
||||
NoteJSChildGrayWrapperShim(void* aData, JS::GCCellPtr aThing)
|
||||
{
|
||||
TraversalTracer* trc = static_cast<TraversalTracer*>(aData);
|
||||
NoteJSChild(trc, aThing, js::GCThingTraceKind(aThing));
|
||||
NoteJSChild(trc, aThing.asCell(), aThing.kind());
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -706,14 +706,14 @@ CycleCollectedJSRuntime::TraverseZone(JS::Zone* aZone,
|
||||
}
|
||||
|
||||
/* static */ void
|
||||
CycleCollectedJSRuntime::TraverseObjectShim(void* aData, void* aThing)
|
||||
CycleCollectedJSRuntime::TraverseObjectShim(void* aData, JS::GCCellPtr aThing)
|
||||
{
|
||||
TraverseObjectShimClosure* closure =
|
||||
static_cast<TraverseObjectShimClosure*>(aData);
|
||||
|
||||
MOZ_ASSERT(js::GCThingTraceKind(aThing) == JSTRACE_OBJECT);
|
||||
closure->self->TraverseGCThing(CycleCollectedJSRuntime::TRAVERSE_CPP, aThing,
|
||||
JSTRACE_OBJECT, closure->cb);
|
||||
MOZ_ASSERT(aThing.isObject());
|
||||
closure->self->TraverseGCThing(CycleCollectedJSRuntime::TRAVERSE_CPP,
|
||||
aThing.asCell(), JSTRACE_OBJECT, closure->cb);
|
||||
}
|
||||
|
||||
void
|
||||
|
||||
@@ -186,7 +186,7 @@ private:
|
||||
TraverseZone(JS::Zone* aZone, nsCycleCollectionTraversalCallback& aCb);
|
||||
|
||||
static void
|
||||
TraverseObjectShim(void* aData, void* aThing);
|
||||
TraverseObjectShim(void* aData, JS::GCCellPtr aThing);
|
||||
|
||||
void TraverseNativeRoots(nsCycleCollectionNoteRootCallback& aCb);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user