Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(159)

Side by Side Diff: runtime/vm/dart_api_impl.cc

Issue 3001423002: Initial idle GC logic. (Closed)
Patch Set: divide-by-zero Created 3 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | runtime/vm/dart_api_impl_test.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 #include "include/dart_api.h" 5 #include "include/dart_api.h"
6 #include "include/dart_mirrors_api.h" 6 #include "include/dart_mirrors_api.h"
7 #include "include/dart_native_api.h" 7 #include "include/dart_native_api.h"
8 8
9 #include "lib/stacktrace.h" 9 #include "lib/stacktrace.h"
10 #include "platform/assert.h" 10 #include "platform/assert.h"
(...skipping 1405 matching lines...) Expand 10 before | Expand all | Expand 10 after
1416 Dart_Handle error = Api::NewHandle(T, I->sticky_error()); 1416 Dart_Handle error = Api::NewHandle(T, I->sticky_error());
1417 return error; 1417 return error;
1418 } 1418 }
1419 return Dart_Null(); 1419 return Dart_Null();
1420 } 1420 }
1421 1421
1422 DART_EXPORT void Dart_NotifyIdle(int64_t deadline) { 1422 DART_EXPORT void Dart_NotifyIdle(int64_t deadline) {
1423 Thread* T = Thread::Current(); 1423 Thread* T = Thread::Current();
1424 CHECK_ISOLATE(T->isolate()); 1424 CHECK_ISOLATE(T->isolate());
1425 API_TIMELINE_BEGIN_END; 1425 API_TIMELINE_BEGIN_END;
1426 TransitionNativeToVM transition(T);
1427 T->isolate()->heap()->NotifyIdle(deadline);
1426 } 1428 }
1427 1429
1428 DART_EXPORT void Dart_ExitIsolate() { 1430 DART_EXPORT void Dart_ExitIsolate() {
1429 Thread* T = Thread::Current(); 1431 Thread* T = Thread::Current();
1430 CHECK_ISOLATE(T->isolate()); 1432 CHECK_ISOLATE(T->isolate());
1431 // The Thread structure is disassociated from the isolate, we do the 1433 // The Thread structure is disassociated from the isolate, we do the
1432 // safepoint transition explicitly here instead of using the TransitionXXX 1434 // safepoint transition explicitly here instead of using the TransitionXXX
1433 // scope objects as the original transition happened outside this scope in 1435 // scope objects as the original transition happened outside this scope in
1434 // Dart_EnterIsolate/Dart_CreateIsolate. 1436 // Dart_EnterIsolate/Dart_CreateIsolate.
1435 ASSERT(T->execution_state() == Thread::kThreadInNative); 1437 ASSERT(T->execution_state() == Thread::kThreadInNative);
(...skipping 5313 matching lines...) Expand 10 before | Expand all | Expand 10 after
6749 #endif 6751 #endif
6750 } 6752 }
6751 6753
6752 DART_EXPORT void Dart_DumpNativeStackTrace(void* context) { 6754 DART_EXPORT void Dart_DumpNativeStackTrace(void* context) {
6753 #ifndef PRODUCT 6755 #ifndef PRODUCT
6754 Profiler::DumpStackTrace(context); 6756 Profiler::DumpStackTrace(context);
6755 #endif 6757 #endif
6756 } 6758 }
6757 6759
6758 } // namespace dart 6760 } // namespace dart
OLDNEW
« no previous file with comments | « no previous file | runtime/vm/dart_api_impl_test.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698