On 5/13/24 09:46, Richard Henderson wrote:
Most of the patches lead up to implementing CF_PCREL.
Along the way there is a grab bag of code updates (TCG_COND_TST*),
bug fixes (space changes during branch-in-branch-delay-slot),
and implementation of features (PSW bits B, X, T, H, L).

Sven reported that PSW L tripped up HP/UX, so possibly there's
something wrong there, but that's right at the end of the patch set.
So I'd like some feedback on the rest leading up to that too.

I do see the PSW_L issue as well (32-bit machine when starting HP-UX 11).
When leaving out patches 42-45 ("target/hppa: Implement PSW_T" and following)
I can boot 32-bit HP-UX 10 and 11.

Will review the patches now individually, but maybe you should
push the patches 1-41 first and we take the PSWT/L patches later?

Helge


Changes for v2:
   - Rebase and update for tcg_cflags_set.


r~


Richard Henderson (45):
   target/hppa: Move cpu_get_tb_cpu_state out of line
   target/hppa: Use hppa_form_gva_psw in hppa_cpu_get_pc
   target/hppa: Move constant destination check into use_goto_tb
   target/hppa: Pass displacement to do_dbranch
   target/hppa: Allow prior nullification in do_ibranch
   target/hppa: Use CF_BP_PAGE instead of cpu_breakpoint_test
   target/hppa: Add install_iaq_entries
   target/hppa: Add install_link
   target/hppa: Delay computation of IAQ_Next
   target/hppa: Skip nullified insns in unconditional dbranch path
   target/hppa: Simplify TB end
   target/hppa: Add IASQ entries to DisasContext
   target/hppa: Add space arguments to install_iaq_entries
   target/hppa: Add space argument to do_ibranch
   target/hppa: Use umax in do_ibranch_priv
   target/hppa: Always make a copy in do_ibranch_priv
   target/hppa: Introduce and use DisasIAQE for branch management
   target/hppa: Use displacements in DisasIAQE
   target/hppa: Rename cond_make_* helpers
   target/hppa: Use TCG_COND_TST* in do_cond
   target/hppa: Use TCG_COND_TST* in do_log_cond
   target/hppa: Use TCG_COND_TST* in do_unit_zero_cond
   target/hppa: Use TCG_COND_TST* in do_unit_addsub
   target/hppa: Use TCG_COND_TST* in trans_bb_imm
   target/hppa: Use registerfields.h for FPSR
   target/hppa: Use TCG_COND_TST* in trans_ftest
   target/hppa: Remove cond_free
   target/hppa: Introduce DisasDelayException
   target/hppa: Use delay_excp for conditional traps
   target/hppa: Use delay_excp for conditional trap on overflow
   linux-user/hppa: Force all code addresses to PRIV_USER
   target/hppa: Store full iaoq_f and page offset of iaoq_b in TB
   target/hppa: Do not mask in copy_iaoq_entry
   target/hppa: Improve hppa_cpu_dump_state
   target/hppa: Split PSW X and B into their own field
   target/hppa: Manage PSW_X and PSW_B in translator
   target/hppa: Implement PSW_B
   target/hppa: Implement PSW_X
   target/hppa: Drop tlb_entry return from hppa_get_physical_address
   target/hppa: Adjust priv for B,GATE at runtime
   target/hppa: Implement CF_PCREL
   target/hppa: Implement PSW_T
   target/hppa: Implement PSW_H, PSW_L
   target/hppa: Log cpu state at interrupt
   target/hppa: Log cpu state on return-from-interrupt

  linux-user/hppa/target_cpu.h |    4 +-
  target/hppa/cpu.h            |   80 +--
  target/hppa/helper.h         |    3 +-
  linux-user/elfload.c         |    4 +-
  linux-user/hppa/cpu_loop.c   |   14 +-
  linux-user/hppa/signal.c     |    6 +-
  target/hppa/cpu.c            |   92 ++-
  target/hppa/fpu_helper.c     |   26 +-
  target/hppa/gdbstub.c        |    6 +
  target/hppa/helper.c         |   66 +-
  target/hppa/int_helper.c     |   33 +-
  target/hppa/mem_helper.c     |   99 +--
  target/hppa/op_helper.c      |   17 +-
  target/hppa/sys_helper.c     |   12 +
  target/hppa/translate.c      | 1232 ++++++++++++++++++----------------
  15 files changed, 947 insertions(+), 747 deletions(-)



Reply via email to