Re: [PATCH 4/4] target/hppa: Implement space register hashing for 64-bit HP-UX

2025-01-29 Thread Richard Henderson
On 1/29/25 07:30, Helge Deller wrote: Subject: [PATCH] target/hppa: Implement space register hashing for 64-bit HP-UX The Linux kernel turns space-register hashing off unconditionally at bootup. That code was provided by HP at the beginning of the PA-RISC Linux porting effort, and I don't know

Re: [PATCH 4/4] target/hppa: Implement space register hashing for 64-bit HP-UX

2025-01-29 Thread Helge Deller
Richard, thanks for your feedback! Can you please review the updated patch below which includes your suggestions. Additionally I've successfully tested it. Thanks in advance, Helge - Subject: [PATCH] target/hppa: Implement space register hashing for 64-bit HP-UX The Linux kernel t

Re: [PATCH 4/4] target/hppa: Implement space register hashing for 64-bit HP-UX

2025-01-28 Thread Richard Henderson
On 1/28/25 20:07, Helge Deller wrote: What I'm not sure about is gva_offset_mask in those hunks and where you said I can't read from env: ... @@ -4635,6 +4641,7 @@ static void hppa_tr_init_disas_context(DisasContextBase *dcbase, CPUState *cs) ctx->tb_flags = ctx->base.tb->flags; ct

Re: [PATCH 4/4] target/hppa: Implement space register hashing for 64-bit HP-UX

2025-01-28 Thread Helge Deller
* Richard Henderson : > On 1/28/25 17:52, Richard Henderson wrote: > > On 1/28/25 14:45, del...@kernel.org wrote: > > > +    if (ctx->is_pa20 && (a->dr == 2)) { > > > +    /* Exit TB to recalculate gva_offset_mask on %dr2 */ > > > +    ctx->base.is_jmp = DISAS_IAQ_N_STALE_EXIT; > > > +    }

Re: [PATCH 4/4] target/hppa: Implement space register hashing for 64-bit HP-UX

2025-01-28 Thread Richard Henderson
On 1/28/25 17:52, Richard Henderson wrote: On 1/28/25 14:45, del...@kernel.org wrote: +    if (ctx->is_pa20 && (a->dr == 2)) { +    /* Exit TB to recalculate gva_offset_mask on %dr2 */ +    ctx->base.is_jmp = DISAS_IAQ_N_STALE_EXIT; +    } Where does this update happen?  I think you've

Re: [PATCH 4/4] target/hppa: Implement space register hashing for 64-bit HP-UX

2025-01-28 Thread Richard Henderson
On 1/28/25 14:45, del...@kernel.org wrote: +if (ctx->is_pa20 && (a->dr == 2)) { +/* Exit TB to recalculate gva_offset_mask on %dr2 */ +ctx->base.is_jmp = DISAS_IAQ_N_STALE_EXIT; +} Where does this update happen? I think you've missed that step. r~

Re: [PATCH 4/4] target/hppa: Implement space register hashing for 64-bit HP-UX

2025-01-28 Thread Richard Henderson
On 1/28/25 14:45, del...@kernel.org wrote: @@ -4635,6 +4640,7 @@ static void hppa_tr_init_disas_context(DisasContextBase *dcbase, CPUState *cs) ctx->tb_flags = ctx->base.tb->flags; ctx->is_pa20 = hppa_is_pa20(cpu_env(cs)); ctx->psw_xb = ctx->tb_flags & (PSW_X | PSW_B); +ctx

[PATCH 4/4] target/hppa: Implement space register hashing for 64-bit HP-UX

2025-01-28 Thread deller
From: Helge Deller The Linux kernel turns space-register hashing off unconditionally at bootup. That code was provided by HP at the beginning of the PA-RISC Linux porting effort, and I don't know why it was decided then why Linux should not use space register hashing. 32-bit HP-UX versions seem