Restore ARM signal handler compilation on glibc < 2.5 (Blue Swirl).
[qemu] / cpu-exec.c
index ea0e5b1..4751d52 100644 (file)
@@ -1320,7 +1320,11 @@ int cpu_signal_handler(int host_signum, void *pinfo,
     unsigned long pc;
     int is_write;
 
+#if (__GLIBC__ < 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ =< 3))
+    pc = uc->uc_mcontext.gregs[R15];
+#else
     pc = uc->uc_mcontext.arm_pc;
+#endif
     /* XXX: compute is_write */
     is_write = 0;
     return handle_cpu_signal(pc, (unsigned long)info->si_addr,