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

Unified Diff: runtime/vm/code_generator.cc

Issue 2133823002: Improve hot reload test mode (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: rmacnak review Created 4 years, 5 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « runtime/bin/main.cc ('k') | runtime/vm/flow_graph_compiler.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: runtime/vm/code_generator.cc
diff --git a/runtime/vm/code_generator.cc b/runtime/vm/code_generator.cc
index e35452829c113b6eec8bf7a8206b9702f3c5dced..439fbf7f97e713b1e0b70ea37eb5b6d27b872f5c 100644
--- a/runtime/vm/code_generator.cc
+++ b/runtime/vm/code_generator.cc
@@ -1242,9 +1242,11 @@ DEFINE_RUNTIME_ENTRY(StackOverflow, 0) {
bool do_deopt = false;
bool do_stacktrace = false;
bool do_reload = false;
+ const intptr_t isolate_reload_every =
+ isolate->reload_every_n_stack_overflow_checks();
if ((FLAG_deoptimize_every > 0) ||
(FLAG_stacktrace_every > 0) ||
- (FLAG_reload_every > 0)) {
+ (isolate_reload_every > 0)) {
// TODO(turnidge): To make --deoptimize_every and
// --stacktrace-every faster we could move this increment/test to
// the generated code.
@@ -1257,14 +1259,14 @@ DEFINE_RUNTIME_ENTRY(StackOverflow, 0) {
(count % FLAG_stacktrace_every) == 0) {
do_stacktrace = true;
}
- if ((FLAG_reload_every > 0) &&
- (count % FLAG_reload_every) == 0) {
+ if ((isolate_reload_every > 0) &&
+ (count % isolate_reload_every) == 0) {
do_reload = isolate->CanReload();
}
}
if ((FLAG_deoptimize_filter != NULL) ||
(FLAG_stacktrace_filter != NULL) ||
- FLAG_reload_every_optimized) {
+ FLAG_reload_every_optimized) {
DartFrameIterator iterator;
StackFrame* frame = iterator.NextFrame();
ASSERT(frame != NULL);
@@ -1297,9 +1299,9 @@ DEFINE_RUNTIME_ENTRY(StackOverflow, 0) {
DeoptimizeFunctionsOnStack();
}
if (do_reload) {
- if (FLAG_reload_every_back_off) {
- FLAG_reload_every *= 2;
- }
+ // Maybe adjust the rate of future reloads.
+ isolate->MaybeIncreaseReloadEveryNStackOverflowChecks();
+ // Issue a reload.
NOT_IN_PRODUCT(isolate->ReloadSources();)
}
if (FLAG_support_debugger && do_stacktrace) {
« no previous file with comments | « runtime/bin/main.cc ('k') | runtime/vm/flow_graph_compiler.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698