Commit afcb125165 for qemu.org

commit afcb125165eb3168ea95424a7355ea7e66256790
Author: Helge Deller <deller@gmx.de>
Date:   Sun Mar 29 20:46:52 2026 +0200

    target/hppa: Fix TOC handler for 64-bit CPUs

    When the TOC handler is triggered, e.g. by using the "NMI" command
    in the QEMU monitor, make sure to call the full 64-bit TOC handler
    address in SeaBIOS-hppa firmware.
    This fixes the TOC handler on 64-bit CPUs (and 64-bit SeaBIOS).

    Signed-off-by: Helge Deller <deller@gmx.de>

diff --git a/target/hppa/int_helper.c b/target/hppa/int_helper.c
index d5a20cd549..3e87b9a001 100644
--- a/target/hppa/int_helper.c
+++ b/target/hppa/int_helper.c
@@ -203,7 +203,12 @@ void hppa_cpu_do_interrupt(CPUState *cs)

     /* step 7 */
     if (i == EXCP_TOC) {
-        env->iaoq_f = hppa_form_gva(env, 0, FIRMWARE_START);
+        hwaddr pdc_toc_addr = FIRMWARE_START;
+
+        /* for 64-bit include the high bits of PDC */
+        pdc_toc_addr |= ((uint64_t) FIRMWARE_HIGH) << 32;
+        env->iaoq_f = hppa_form_gva(env, 0, pdc_toc_addr);
+
         /* help SeaBIOS and provide iaoq_b and iasq_back in shadow regs */
         env->gr[24] = env->cr_back[0];
         env->gr[25] = env->cr_back[1];