| Index: src/log.cc
|
| ===================================================================
|
| --- src/log.cc (revision 9531)
|
| +++ src/log.cc (working copy)
|
| @@ -1356,12 +1356,12 @@
|
|
|
| static int EnumerateCompiledFunctions(Handle<SharedFunctionInfo>* sfis,
|
| Handle<Code>* code_objects) {
|
| + HeapIterator iterator;
|
| AssertNoAllocation no_alloc;
|
| int compiled_funcs_count = 0;
|
|
|
| // Iterate the heap to find shared function info objects and record
|
| // the unoptimized code for them.
|
| - HeapIterator iterator;
|
| for (HeapObject* obj = iterator.next(); obj != NULL; obj = iterator.next()) {
|
| if (!obj->IsSharedFunctionInfo()) continue;
|
| SharedFunctionInfo* sfi = SharedFunctionInfo::cast(obj);
|
| @@ -1519,8 +1519,9 @@
|
|
|
|
|
| void Logger::LogCodeObjects() {
|
| + HEAP->CollectAllGarbage(Heap::kMakeHeapIterableMask);
|
| + HeapIterator iterator;
|
| AssertNoAllocation no_alloc;
|
| - HeapIterator iterator;
|
| for (HeapObject* obj = iterator.next(); obj != NULL; obj = iterator.next()) {
|
| if (obj->IsCode()) LogCodeObject(obj);
|
| }
|
| @@ -1573,6 +1574,7 @@
|
|
|
|
|
| void Logger::LogCompiledFunctions() {
|
| + HEAP->CollectAllGarbage(Heap::kMakeHeapIterableMask);
|
| HandleScope scope;
|
| const int compiled_funcs_count = EnumerateCompiledFunctions(NULL, NULL);
|
| ScopedVector< Handle<SharedFunctionInfo> > sfis(compiled_funcs_count);
|
| @@ -1591,9 +1593,9 @@
|
|
|
|
|
| void Logger::LogAccessorCallbacks() {
|
| + HEAP->CollectAllGarbage(Heap::kMakeHeapIterableMask);
|
| + HeapIterator iterator;
|
| AssertNoAllocation no_alloc;
|
| - HeapIterator iterator;
|
| - i::Isolate* isolate = ISOLATE;
|
| for (HeapObject* obj = iterator.next(); obj != NULL; obj = iterator.next()) {
|
| if (!obj->IsAccessorInfo()) continue;
|
| AccessorInfo* ai = AccessorInfo::cast(obj);
|
| @@ -1601,11 +1603,11 @@
|
| String* name = String::cast(ai->name());
|
| Address getter_entry = v8::ToCData<Address>(ai->getter());
|
| if (getter_entry != 0) {
|
| - PROFILE(isolate, GetterCallbackEvent(name, getter_entry));
|
| + PROFILE(ISOLATE, GetterCallbackEvent(name, getter_entry));
|
| }
|
| Address setter_entry = v8::ToCData<Address>(ai->setter());
|
| if (setter_entry != 0) {
|
| - PROFILE(isolate, SetterCallbackEvent(name, setter_entry));
|
| + PROFILE(ISOLATE, SetterCallbackEvent(name, setter_entry));
|
| }
|
| }
|
| }
|
|
|