Skip to content

Commit

Permalink
i#2974 trace support for AArch64, part 14: Adding comments on
Browse files Browse the repository at this point in the history
optimisation

Issues: #1569, #2974
  • Loading branch information
Vincent-lau committed Sep 1, 2021
1 parent 88c535d commit ed826fd
Show file tree
Hide file tree
Showing 3 changed files with 7 additions and 0 deletions.
4 changes: 4 additions & 0 deletions core/arch/arch_exports.h
Original file line number Diff line number Diff line change
Expand Up @@ -2196,6 +2196,10 @@ int
append_trace_speculate_last_ibl(dcontext_t *dcontext, instrlist_t *trace,
app_pc speculate_next_tag, bool record_translation);


/* XXX i#5062 In the long term we should have this only called in mangle_trace()
* and it should be removed from here.
*/
#ifdef AARCH64
int
fixup_indirect_trace_exit(dcontext_t *dcontext, instrlist_t *trace);
Expand Down
1 change: 1 addition & 0 deletions core/arch/interp.c
Original file line number Diff line number Diff line change
Expand Up @@ -5420,6 +5420,7 @@ recreate_fragment_ilist(dcontext_t *dcontext, byte *pc,
instrlist_destroy(dcontext, bb);
}

/* XXX i#5062 In the future this call should be placed inside mangle_trace() */
IF_AARCH64(fixup_indirect_trace_exit(dcontext, ilist));

/* PR 214962: re-apply client changes, this time storing translation
Expand Down
2 changes: 2 additions & 0 deletions core/monitor.c
Original file line number Diff line number Diff line change
Expand Up @@ -1205,6 +1205,8 @@ end_and_emit_trace(dcontext_t *dcontext, fragment_t *cur_f)
target = opnd_get_pc(instr_get_target(last));
md->emitted_size -= local_exit_stub_size(dcontext, target, md->trace_flags);
}

/* XXX i#5062 In the future this call should be placed inside mangle_trace() */
IF_AARCH64(md->emitted_size += fixup_indirect_trace_exit(dcontext, trace));

if (DYNAMO_OPTION(speculate_last_exit)
Expand Down

0 comments on commit ed826fd

Please sign in to comment.