On 28/06/2023 08:11, Richard Henderson wrote:

Changes from v2:
   * Patch 4 relaxes the checking on NPC:
     (1) save_npc has just asserted that if the low 2 bits are non-zero,
         then we have exactly one of our 3 special cases.
     (2) The difference between DYNAMIC_PC_LOOKUP and DYNAMIC_PC within
         NPC are not relevant to chaining, only those two values within PC.
     Therefore simplify the test in sparc_tr_tb_stop.


r~


Richard Henderson (8):
   target/sparc: Use tcg_gen_lookup_and_goto_ptr in gen_goto_tb
   target/sparc: Fix npc comparison in sparc_tr_insn_start
   target/sparc: Drop inline markers from translate.c
   target/sparc: Introduce DYNAMIC_PC_LOOKUP
   target/sparc: Use DYNAMIC_PC_LOOKUP for conditional branches
   target/sparc: Use DYNAMIC_PC_LOOKUP for JMPL
   target/sparc: Use DYNAMIC_PC_LOOKUP for v9 RETURN
   target/sparc: Use tcg_gen_lookup_and_goto_ptr for v9 WRASI

  target/sparc/translate.c | 402 ++++++++++++++++++++++-----------------
  1 file changed, 225 insertions(+), 177 deletions(-)

This fixes the issue seen with the real PROM and a run of my OpenBIOS boot tests shows all is still well, so I'll get this queued to qemu-sparc and send a PR shortly.


ATB,

Mark.


Reply via email to