From: Wojtek Kaniewski <wojte...@toxygen.net>

D5 is expected to be set to data address on m68k without MMU. See
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/arch/m68k/include/asm/flat.h
for reference.

Signed-off-by: Wojtek Kaniewski <wojte...@toxygen.net>
---
 linux-user/elfload.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/linux-user/elfload.c b/linux-user/elfload.c
index ea214105ff..b151ebcba2 100644
--- a/linux-user/elfload.c
+++ b/linux-user/elfload.c
@@ -1756,6 +1756,7 @@ static uint32_t get_elf_hwcap(void)
 static inline void init_thread(struct target_pt_regs *regs,
                                struct image_info *infop)
 {
+    regs->d5 = infop->start_data;   /* For uClinux PIC binaries. */
     regs->usp = infop->start_stack;
     regs->sr = 0;
     regs->pc = infop->entry;
-- 
2.45.3

Reply via email to