OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
4 // met: | 4 // met: |
5 // | 5 // |
6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
(...skipping 7307 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
7318 const i::CpuProfile* profile = reinterpret_cast<const i::CpuProfile*>(this); | 7318 const i::CpuProfile* profile = reinterpret_cast<const i::CpuProfile*>(this); |
7319 return reinterpret_cast<const CpuProfileNode*>(profile->sample(index)); | 7319 return reinterpret_cast<const CpuProfileNode*>(profile->sample(index)); |
7320 } | 7320 } |
7321 | 7321 |
7322 | 7322 |
7323 int CpuProfile::GetSamplesCount() const { | 7323 int CpuProfile::GetSamplesCount() const { |
7324 return reinterpret_cast<const i::CpuProfile*>(this)->samples_count(); | 7324 return reinterpret_cast<const i::CpuProfile*>(this)->samples_count(); |
7325 } | 7325 } |
7326 | 7326 |
7327 | 7327 |
7328 int CpuProfiler::GetProfilesCount() { | |
7329 i::Isolate* isolate = i::Isolate::Current(); | |
7330 IsDeadCheck(isolate, "v8::CpuProfiler::GetProfilesCount"); | |
7331 i::CpuProfiler* profiler = isolate->cpu_profiler(); | |
7332 ASSERT(profiler != NULL); | |
7333 return profiler->GetProfilesCount(); | |
7334 } | |
7335 | |
7336 | |
7337 int CpuProfiler::GetProfileCount() { | 7328 int CpuProfiler::GetProfileCount() { |
7338 return reinterpret_cast<i::CpuProfiler*>(this)->GetProfilesCount(); | 7329 return reinterpret_cast<i::CpuProfiler*>(this)->GetProfilesCount(); |
7339 } | 7330 } |
7340 | 7331 |
7341 | 7332 |
7342 const CpuProfile* CpuProfiler::GetProfile(int index, | |
7343 Handle<Value> security_token) { | |
7344 i::Isolate* isolate = i::Isolate::Current(); | |
7345 IsDeadCheck(isolate, "v8::CpuProfiler::GetProfile"); | |
7346 i::CpuProfiler* profiler = isolate->cpu_profiler(); | |
7347 ASSERT(profiler != NULL); | |
7348 return reinterpret_cast<const CpuProfile*>( | |
7349 profiler->GetProfile( | |
7350 security_token.IsEmpty() ? NULL : *Utils::OpenHandle(*security_token), | |
7351 index)); | |
7352 } | |
7353 | |
7354 | |
7355 const CpuProfile* CpuProfiler::GetCpuProfile(int index, | 7333 const CpuProfile* CpuProfiler::GetCpuProfile(int index, |
7356 Handle<Value> security_token) { | 7334 Handle<Value> security_token) { |
7357 return reinterpret_cast<const CpuProfile*>( | 7335 return reinterpret_cast<const CpuProfile*>( |
7358 reinterpret_cast<i::CpuProfiler*>(this)->GetProfile( | 7336 reinterpret_cast<i::CpuProfiler*>(this)->GetProfile( |
7359 security_token.IsEmpty() ? NULL : *Utils::OpenHandle(*security_token), | 7337 security_token.IsEmpty() ? NULL : *Utils::OpenHandle(*security_token), |
7360 index)); | 7338 index)); |
7361 } | 7339 } |
7362 | 7340 |
7363 | 7341 |
7364 const CpuProfile* CpuProfiler::GetCpuProfile(int index) { | 7342 const CpuProfile* CpuProfiler::GetCpuProfile(int index) { |
7365 return reinterpret_cast<const CpuProfile*>( | 7343 return reinterpret_cast<const CpuProfile*>( |
7366 reinterpret_cast<i::CpuProfiler*>(this)->GetProfile(NULL, index)); | 7344 reinterpret_cast<i::CpuProfiler*>(this)->GetProfile(NULL, index)); |
7367 } | 7345 } |
7368 | 7346 |
7369 | 7347 |
7370 const CpuProfile* CpuProfiler::FindProfile(unsigned uid, | |
7371 Handle<Value> security_token) { | |
7372 i::Isolate* isolate = i::Isolate::Current(); | |
7373 IsDeadCheck(isolate, "v8::CpuProfiler::FindProfile"); | |
7374 i::CpuProfiler* profiler = isolate->cpu_profiler(); | |
7375 ASSERT(profiler != NULL); | |
7376 return reinterpret_cast<const CpuProfile*>( | |
7377 profiler->FindProfile( | |
7378 security_token.IsEmpty() ? NULL : *Utils::OpenHandle(*security_token), | |
7379 uid)); | |
7380 } | |
7381 | |
7382 | |
7383 const CpuProfile* CpuProfiler::FindCpuProfile(unsigned uid, | 7348 const CpuProfile* CpuProfiler::FindCpuProfile(unsigned uid, |
7384 Handle<Value> security_token) { | 7349 Handle<Value> security_token) { |
7385 return reinterpret_cast<const CpuProfile*>( | 7350 return reinterpret_cast<const CpuProfile*>( |
7386 reinterpret_cast<i::CpuProfiler*>(this)->FindProfile( | 7351 reinterpret_cast<i::CpuProfiler*>(this)->FindProfile( |
7387 security_token.IsEmpty() ? NULL : *Utils::OpenHandle(*security_token), | 7352 security_token.IsEmpty() ? NULL : *Utils::OpenHandle(*security_token), |
7388 uid)); | 7353 uid)); |
7389 } | 7354 } |
7390 | 7355 |
7391 | 7356 |
7392 void CpuProfiler::StartProfiling(Handle<String> title, bool record_samples) { | |
7393 i::Isolate* isolate = i::Isolate::Current(); | |
7394 IsDeadCheck(isolate, "v8::CpuProfiler::StartProfiling"); | |
7395 i::CpuProfiler* profiler = isolate->cpu_profiler(); | |
7396 ASSERT(profiler != NULL); | |
7397 profiler->StartProfiling(*Utils::OpenHandle(*title), record_samples); | |
7398 } | |
7399 | |
7400 | |
7401 void CpuProfiler::StartCpuProfiling(Handle<String> title, bool record_samples) { | 7357 void CpuProfiler::StartCpuProfiling(Handle<String> title, bool record_samples) { |
7402 reinterpret_cast<i::CpuProfiler*>(this)->StartProfiling( | 7358 reinterpret_cast<i::CpuProfiler*>(this)->StartProfiling( |
7403 *Utils::OpenHandle(*title), record_samples); | 7359 *Utils::OpenHandle(*title), record_samples); |
7404 } | 7360 } |
7405 | 7361 |
7406 | 7362 |
7407 const CpuProfile* CpuProfiler::StopProfiling(Handle<String> title, | |
7408 Handle<Value> security_token) { | |
7409 i::Isolate* isolate = i::Isolate::Current(); | |
7410 IsDeadCheck(isolate, "v8::CpuProfiler::StopProfiling"); | |
7411 i::CpuProfiler* profiler = isolate->cpu_profiler(); | |
7412 ASSERT(profiler != NULL); | |
7413 return reinterpret_cast<const CpuProfile*>( | |
7414 profiler->StopProfiling( | |
7415 security_token.IsEmpty() ? NULL : *Utils::OpenHandle(*security_token), | |
7416 *Utils::OpenHandle(*title))); | |
7417 } | |
7418 | |
7419 | |
7420 const CpuProfile* CpuProfiler::StopCpuProfiling(Handle<String> title, | 7363 const CpuProfile* CpuProfiler::StopCpuProfiling(Handle<String> title, |
7421 Handle<Value> security_token) { | 7364 Handle<Value> security_token) { |
7422 return reinterpret_cast<const CpuProfile*>( | 7365 return reinterpret_cast<const CpuProfile*>( |
7423 reinterpret_cast<i::CpuProfiler*>(this)->StopProfiling( | 7366 reinterpret_cast<i::CpuProfiler*>(this)->StopProfiling( |
7424 security_token.IsEmpty() ? NULL : *Utils::OpenHandle(*security_token), | 7367 security_token.IsEmpty() ? NULL : *Utils::OpenHandle(*security_token), |
7425 *Utils::OpenHandle(*title))); | 7368 *Utils::OpenHandle(*title))); |
7426 } | 7369 } |
7427 | 7370 |
7428 | 7371 |
7429 const CpuProfile* CpuProfiler::StopCpuProfiling(Handle<String> title) { | 7372 const CpuProfile* CpuProfiler::StopCpuProfiling(Handle<String> title) { |
7430 return reinterpret_cast<const CpuProfile*>( | 7373 return reinterpret_cast<const CpuProfile*>( |
7431 reinterpret_cast<i::CpuProfiler*>(this)->StopProfiling( | 7374 reinterpret_cast<i::CpuProfiler*>(this)->StopProfiling( |
7432 NULL, | 7375 NULL, |
7433 *Utils::OpenHandle(*title))); | 7376 *Utils::OpenHandle(*title))); |
7434 } | 7377 } |
7435 | 7378 |
7436 | 7379 |
7437 void CpuProfiler::DeleteAllProfiles() { | |
7438 i::Isolate* isolate = i::Isolate::Current(); | |
7439 IsDeadCheck(isolate, "v8::CpuProfiler::DeleteAllProfiles"); | |
7440 i::CpuProfiler* profiler = isolate->cpu_profiler(); | |
7441 ASSERT(profiler != NULL); | |
7442 profiler->DeleteAllProfiles(); | |
7443 } | |
7444 | |
7445 | |
7446 void CpuProfiler::DeleteAllCpuProfiles() { | 7380 void CpuProfiler::DeleteAllCpuProfiles() { |
7447 reinterpret_cast<i::CpuProfiler*>(this)->DeleteAllProfiles(); | 7381 reinterpret_cast<i::CpuProfiler*>(this)->DeleteAllProfiles(); |
7448 } | 7382 } |
7449 | 7383 |
7450 | 7384 |
7451 static i::HeapGraphEdge* ToInternal(const HeapGraphEdge* edge) { | 7385 static i::HeapGraphEdge* ToInternal(const HeapGraphEdge* edge) { |
7452 return const_cast<i::HeapGraphEdge*>( | 7386 return const_cast<i::HeapGraphEdge*>( |
7453 reinterpret_cast<const i::HeapGraphEdge*>(edge)); | 7387 reinterpret_cast<const i::HeapGraphEdge*>(edge)); |
7454 } | 7388 } |
7455 | 7389 |
(...skipping 113 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
7569 IsDeadCheck(isolate, "v8::HeapSnapshot::Delete"); | 7503 IsDeadCheck(isolate, "v8::HeapSnapshot::Delete"); |
7570 if (isolate->heap_profiler()->GetSnapshotsCount() > 1) { | 7504 if (isolate->heap_profiler()->GetSnapshotsCount() > 1) { |
7571 ToInternal(this)->Delete(); | 7505 ToInternal(this)->Delete(); |
7572 } else { | 7506 } else { |
7573 // If this is the last snapshot, clean up all accessory data as well. | 7507 // If this is the last snapshot, clean up all accessory data as well. |
7574 isolate->heap_profiler()->DeleteAllSnapshots(); | 7508 isolate->heap_profiler()->DeleteAllSnapshots(); |
7575 } | 7509 } |
7576 } | 7510 } |
7577 | 7511 |
7578 | 7512 |
7579 HeapSnapshot::Type HeapSnapshot::GetType() const { | |
7580 i::Isolate* isolate = i::Isolate::Current(); | |
7581 IsDeadCheck(isolate, "v8::HeapSnapshot::GetType"); | |
7582 return kFull; | |
7583 } | |
7584 | |
7585 | |
7586 unsigned HeapSnapshot::GetUid() const { | 7513 unsigned HeapSnapshot::GetUid() const { |
7587 i::Isolate* isolate = i::Isolate::Current(); | 7514 i::Isolate* isolate = i::Isolate::Current(); |
7588 IsDeadCheck(isolate, "v8::HeapSnapshot::GetUid"); | 7515 IsDeadCheck(isolate, "v8::HeapSnapshot::GetUid"); |
7589 return ToInternal(this)->uid(); | 7516 return ToInternal(this)->uid(); |
7590 } | 7517 } |
7591 | 7518 |
7592 | 7519 |
7593 Handle<String> HeapSnapshot::GetTitle() const { | 7520 Handle<String> HeapSnapshot::GetTitle() const { |
7594 i::Isolate* isolate = i::Isolate::Current(); | 7521 i::Isolate* isolate = i::Isolate::Current(); |
7595 IsDeadCheck(isolate, "v8::HeapSnapshot::GetTitle"); | 7522 IsDeadCheck(isolate, "v8::HeapSnapshot::GetTitle"); |
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
7646 "v8::HeapSnapshot::Serialize", | 7573 "v8::HeapSnapshot::Serialize", |
7647 "Unsupported output encoding"); | 7574 "Unsupported output encoding"); |
7648 ApiCheck(stream->GetChunkSize() > 0, | 7575 ApiCheck(stream->GetChunkSize() > 0, |
7649 "v8::HeapSnapshot::Serialize", | 7576 "v8::HeapSnapshot::Serialize", |
7650 "Invalid stream chunk size"); | 7577 "Invalid stream chunk size"); |
7651 i::HeapSnapshotJSONSerializer serializer(ToInternal(this)); | 7578 i::HeapSnapshotJSONSerializer serializer(ToInternal(this)); |
7652 serializer.Serialize(stream); | 7579 serializer.Serialize(stream); |
7653 } | 7580 } |
7654 | 7581 |
7655 | 7582 |
7656 int HeapProfiler::GetSnapshotsCount() { | |
7657 i::Isolate* isolate = i::Isolate::Current(); | |
7658 IsDeadCheck(isolate, "v8::HeapProfiler::GetSnapshotsCount"); | |
7659 return isolate->heap_profiler()->GetSnapshotsCount(); | |
7660 } | |
7661 | |
7662 | |
7663 int HeapProfiler::GetSnapshotCount() { | 7583 int HeapProfiler::GetSnapshotCount() { |
7664 return reinterpret_cast<i::HeapProfiler*>(this)->GetSnapshotsCount(); | 7584 return reinterpret_cast<i::HeapProfiler*>(this)->GetSnapshotsCount(); |
7665 } | 7585 } |
7666 | 7586 |
7667 | 7587 |
7668 const HeapSnapshot* HeapProfiler::GetSnapshot(int index) { | |
7669 i::Isolate* isolate = i::Isolate::Current(); | |
7670 IsDeadCheck(isolate, "v8::HeapProfiler::GetSnapshot"); | |
7671 return reinterpret_cast<const HeapSnapshot*>( | |
7672 isolate->heap_profiler()->GetSnapshot(index)); | |
7673 } | |
7674 | |
7675 | |
7676 const HeapSnapshot* HeapProfiler::GetHeapSnapshot(int index) { | 7588 const HeapSnapshot* HeapProfiler::GetHeapSnapshot(int index) { |
7677 return reinterpret_cast<const HeapSnapshot*>( | 7589 return reinterpret_cast<const HeapSnapshot*>( |
7678 reinterpret_cast<i::HeapProfiler*>(this)->GetSnapshot(index)); | 7590 reinterpret_cast<i::HeapProfiler*>(this)->GetSnapshot(index)); |
7679 } | 7591 } |
7680 | 7592 |
7681 | 7593 |
7682 const HeapSnapshot* HeapProfiler::FindSnapshot(unsigned uid) { | |
7683 i::Isolate* isolate = i::Isolate::Current(); | |
7684 IsDeadCheck(isolate, "v8::HeapProfiler::FindSnapshot"); | |
7685 return reinterpret_cast<const HeapSnapshot*>( | |
7686 isolate->heap_profiler()->FindSnapshot(uid)); | |
7687 } | |
7688 | |
7689 | |
7690 const HeapSnapshot* HeapProfiler::FindHeapSnapshot(unsigned uid) { | 7594 const HeapSnapshot* HeapProfiler::FindHeapSnapshot(unsigned uid) { |
7691 return reinterpret_cast<const HeapSnapshot*>( | 7595 return reinterpret_cast<const HeapSnapshot*>( |
7692 reinterpret_cast<i::HeapProfiler*>(this)->FindSnapshot(uid)); | 7596 reinterpret_cast<i::HeapProfiler*>(this)->FindSnapshot(uid)); |
7693 } | 7597 } |
7694 | 7598 |
7695 | 7599 |
7696 SnapshotObjectId HeapProfiler::GetSnapshotObjectId(Handle<Value> value) { | |
7697 i::Isolate* isolate = i::Isolate::Current(); | |
7698 IsDeadCheck(isolate, "v8::HeapProfiler::GetSnapshotObjectId"); | |
7699 i::Handle<i::Object> obj = Utils::OpenHandle(*value); | |
7700 return isolate->heap_profiler()->GetSnapshotObjectId(obj); | |
7701 } | |
7702 | |
7703 | |
7704 SnapshotObjectId HeapProfiler::GetObjectId(Handle<Value> value) { | 7600 SnapshotObjectId HeapProfiler::GetObjectId(Handle<Value> value) { |
7705 i::Handle<i::Object> obj = Utils::OpenHandle(*value); | 7601 i::Handle<i::Object> obj = Utils::OpenHandle(*value); |
7706 return reinterpret_cast<i::HeapProfiler*>(this)->GetSnapshotObjectId(obj); | 7602 return reinterpret_cast<i::HeapProfiler*>(this)->GetSnapshotObjectId(obj); |
7707 } | 7603 } |
7708 | 7604 |
7709 | 7605 |
7710 const HeapSnapshot* HeapProfiler::TakeSnapshot(Handle<String> title, | |
7711 HeapSnapshot::Type type, | |
7712 ActivityControl* control, | |
7713 ObjectNameResolver* resolver) { | |
7714 i::Isolate* isolate = i::Isolate::Current(); | |
7715 IsDeadCheck(isolate, "v8::HeapProfiler::TakeSnapshot"); | |
7716 return reinterpret_cast<const HeapSnapshot*>( | |
7717 isolate->heap_profiler()->TakeSnapshot( | |
7718 *Utils::OpenHandle(*title), control, resolver)); | |
7719 } | |
7720 | |
7721 | |
7722 const HeapSnapshot* HeapProfiler::TakeHeapSnapshot( | 7606 const HeapSnapshot* HeapProfiler::TakeHeapSnapshot( |
7723 Handle<String> title, | 7607 Handle<String> title, |
7724 ActivityControl* control, | 7608 ActivityControl* control, |
7725 ObjectNameResolver* resolver) { | 7609 ObjectNameResolver* resolver) { |
7726 return reinterpret_cast<const HeapSnapshot*>( | 7610 return reinterpret_cast<const HeapSnapshot*>( |
7727 reinterpret_cast<i::HeapProfiler*>(this)->TakeSnapshot( | 7611 reinterpret_cast<i::HeapProfiler*>(this)->TakeSnapshot( |
7728 *Utils::OpenHandle(*title), control, resolver)); | 7612 *Utils::OpenHandle(*title), control, resolver)); |
7729 } | 7613 } |
7730 | 7614 |
7731 | 7615 |
7732 void HeapProfiler::StartHeapObjectsTracking() { | |
7733 i::Isolate* isolate = i::Isolate::Current(); | |
7734 IsDeadCheck(isolate, "v8::HeapProfiler::StartHeapObjectsTracking"); | |
7735 isolate->heap_profiler()->StartHeapObjectsTracking(); | |
7736 } | |
7737 | |
7738 | |
7739 void HeapProfiler::StartTrackingHeapObjects() { | 7616 void HeapProfiler::StartTrackingHeapObjects() { |
7740 reinterpret_cast<i::HeapProfiler*>(this)->StartHeapObjectsTracking(); | 7617 reinterpret_cast<i::HeapProfiler*>(this)->StartHeapObjectsTracking(); |
7741 } | 7618 } |
7742 | 7619 |
7743 | 7620 |
7744 void HeapProfiler::StopHeapObjectsTracking() { | |
7745 i::Isolate* isolate = i::Isolate::Current(); | |
7746 IsDeadCheck(isolate, "v8::HeapProfiler::StopHeapObjectsTracking"); | |
7747 isolate->heap_profiler()->StopHeapObjectsTracking(); | |
7748 } | |
7749 | |
7750 | |
7751 void HeapProfiler::StopTrackingHeapObjects() { | 7621 void HeapProfiler::StopTrackingHeapObjects() { |
7752 reinterpret_cast<i::HeapProfiler*>(this)->StopHeapObjectsTracking(); | 7622 reinterpret_cast<i::HeapProfiler*>(this)->StopHeapObjectsTracking(); |
7753 } | 7623 } |
7754 | 7624 |
7755 | 7625 |
7756 SnapshotObjectId HeapProfiler::PushHeapObjectsStats(OutputStream* stream) { | |
7757 i::Isolate* isolate = i::Isolate::Current(); | |
7758 IsDeadCheck(isolate, "v8::HeapProfiler::PushHeapObjectsStats"); | |
7759 return isolate->heap_profiler()->PushHeapObjectsStats(stream); | |
7760 } | |
7761 | |
7762 | |
7763 SnapshotObjectId HeapProfiler::GetHeapStats(OutputStream* stream) { | 7626 SnapshotObjectId HeapProfiler::GetHeapStats(OutputStream* stream) { |
7764 return reinterpret_cast<i::HeapProfiler*>(this)->PushHeapObjectsStats(stream); | 7627 return reinterpret_cast<i::HeapProfiler*>(this)->PushHeapObjectsStats(stream); |
7765 } | 7628 } |
7766 | 7629 |
7767 | 7630 |
7768 void HeapProfiler::DeleteAllSnapshots() { | |
7769 i::Isolate* isolate = i::Isolate::Current(); | |
7770 IsDeadCheck(isolate, "v8::HeapProfiler::DeleteAllSnapshots"); | |
7771 isolate->heap_profiler()->DeleteAllSnapshots(); | |
7772 } | |
7773 | |
7774 | |
7775 void HeapProfiler::DeleteAllHeapSnapshots() { | 7631 void HeapProfiler::DeleteAllHeapSnapshots() { |
7776 reinterpret_cast<i::HeapProfiler*>(this)->DeleteAllSnapshots(); | 7632 reinterpret_cast<i::HeapProfiler*>(this)->DeleteAllSnapshots(); |
7777 } | 7633 } |
7778 | 7634 |
7779 | 7635 |
7780 void HeapProfiler::DefineWrapperClass(uint16_t class_id, | |
7781 WrapperInfoCallback callback) { | |
7782 i::Isolate::Current()->heap_profiler()->DefineWrapperClass(class_id, | |
7783 callback); | |
7784 } | |
7785 | |
7786 | |
7787 void HeapProfiler::SetWrapperClassInfoProvider(uint16_t class_id, | 7636 void HeapProfiler::SetWrapperClassInfoProvider(uint16_t class_id, |
7788 WrapperInfoCallback callback) { | 7637 WrapperInfoCallback callback) { |
7789 reinterpret_cast<i::HeapProfiler*>(this)->DefineWrapperClass(class_id, | 7638 reinterpret_cast<i::HeapProfiler*>(this)->DefineWrapperClass(class_id, |
7790 callback); | 7639 callback); |
7791 } | 7640 } |
7792 | 7641 |
7793 | 7642 |
7794 int HeapProfiler::GetPersistentHandleCount() { | |
7795 i::Isolate* isolate = i::Isolate::Current(); | |
7796 return isolate->global_handles()->NumberOfGlobalHandles(); | |
7797 } | |
7798 | |
7799 | |
7800 size_t HeapProfiler::GetMemorySizeUsedByProfiler() { | |
7801 return i::Isolate::Current()->heap_profiler()->GetMemorySizeUsedByProfiler(); | |
7802 } | |
7803 | |
7804 | |
7805 size_t HeapProfiler::GetProfilerMemorySize() { | 7643 size_t HeapProfiler::GetProfilerMemorySize() { |
7806 return reinterpret_cast<i::HeapProfiler*>(this)-> | 7644 return reinterpret_cast<i::HeapProfiler*>(this)-> |
7807 GetMemorySizeUsedByProfiler(); | 7645 GetMemorySizeUsedByProfiler(); |
7808 } | 7646 } |
7809 | 7647 |
7810 | 7648 |
7811 void HeapProfiler::SetRetainedObjectInfo(UniqueId id, | 7649 void HeapProfiler::SetRetainedObjectInfo(UniqueId id, |
7812 RetainedObjectInfo* info) { | 7650 RetainedObjectInfo* info) { |
7813 reinterpret_cast<i::HeapProfiler*>(this)->SetRetainedObjectInfo(id, info); | 7651 reinterpret_cast<i::HeapProfiler*>(this)->SetRetainedObjectInfo(id, info); |
7814 } | 7652 } |
(...skipping 256 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
8071 Isolate* isolate = reinterpret_cast<Isolate*>(info.GetIsolate()); | 7909 Isolate* isolate = reinterpret_cast<Isolate*>(info.GetIsolate()); |
8072 Address callback_address = | 7910 Address callback_address = |
8073 reinterpret_cast<Address>(reinterpret_cast<intptr_t>(callback)); | 7911 reinterpret_cast<Address>(reinterpret_cast<intptr_t>(callback)); |
8074 VMState<EXTERNAL> state(isolate); | 7912 VMState<EXTERNAL> state(isolate); |
8075 ExternalCallbackScope call_scope(isolate, callback_address); | 7913 ExternalCallbackScope call_scope(isolate, callback_address); |
8076 return callback(info); | 7914 return callback(info); |
8077 } | 7915 } |
8078 | 7916 |
8079 | 7917 |
8080 } } // namespace v8::internal | 7918 } } // namespace v8::internal |
OLD | NEW |