Skip to content

Commit

Permalink
[debugger][android] It was not initialising seq_points on MonoCompile…
Browse files Browse the repository at this point in the history
… on Android, so when was compiling dynamic methods, seq_points wasn't created and we got the assert when try to single step. (mono/mono#16691)

Commit migrated from mono/mono@c23a890
  • Loading branch information
thaystg authored Sep 6, 2019
1 parent aa631aa commit 1f1a63d
Show file tree
Hide file tree
Showing 2 changed files with 1 addition and 12 deletions.
6 changes: 1 addition & 5 deletions src/mono/mono/mini/debugger-agent.c
Original file line number Diff line number Diff line change
Expand Up @@ -4967,12 +4967,8 @@ ss_create_init_args (SingleStepReq *ss_req, SingleStepArgs *args)
found_sp = mono_find_prev_seq_point_for_native_offset (frame->de.domain, frame->de.method, frame->de.native_offset, &info, &args->sp);
if (!found_sp)
no_seq_points_found (frame->de.method, frame->de.native_offset);
#if !defined(HOST_ANDROID) && !defined(TARGET_ANDROID)
g_assert (found_sp);
#else
if (found_sp) //it will not find the sp if it is a method of class Android.Runtime.DynamicMethodNameCounter
#endif
method = frame->de.method;
method = frame->de.method;
}
}
}
Expand Down
7 changes: 0 additions & 7 deletions src/mono/mono/mini/mini.c
Original file line number Diff line number Diff line change
Expand Up @@ -3164,13 +3164,6 @@ mini_method_compile (MonoMethod *method, guint32 opts, MonoDomain *domain, JitFl
cfg->use_current_cpu = (flags & JIT_FLAG_USE_CURRENT_CPU) != 0;
cfg->backend = current_backend;

#ifdef HOST_ANDROID
if (cfg->method->wrapper_type != MONO_WRAPPER_NONE) {
/* FIXME: Why is this needed */
cfg->gen_seq_points = FALSE;
cfg->gen_sdb_seq_points = FALSE;
}
#endif
if (cfg->method->wrapper_type == MONO_WRAPPER_ALLOC) {
/* We can't have seq points inside gc critical regions */
cfg->gen_seq_points = FALSE;
Expand Down

0 comments on commit 1f1a63d

Please sign in to comment.