On 06/28/2017 06:53 AM, Lluís Vilanova wrote:
Incrementally paves the way towards using the generic instruction translation
loop.
Signed-off-by: Lluís Vilanova <vilan...@ac.upc.edu>
---
target/arm/translate-a64.c | 74 +++++++++++++++++++++++++++-----------------
1 file changed, 46 insertions(+), 28 deletions(-)
diff --git a/target/arm/translate-a64.c b/target/arm/translate-a64.c
index 9c870f6d07..586a01a2de 100644
--- a/target/arm/translate-a64.c
+++ b/target/arm/translate-a64.c
@@ -11244,6 +11244,9 @@ static void
aarch64_trblock_init_disas_context(DisasContextBase *dcbase,
dc->is_ldex = false;
dc->ss_same_el = (arm_debug_target_el(env) == dc->current_el);
+ dc->next_page_start =
+ (dc->base.pc_first & TARGET_PAGE_MASK) + TARGET_PAGE_SIZE;
I think a better solution for a fixed-length ISA is to adjust max_insns.
Perhaps the init_disas_context hook should be able to modify it?
And, while I'm thinking of it -- why is the init_globals hook separate?
There's nothing in between the two hook calls, and the more modern target front
ends won't need it.
r~