From: Aleksandar Rikalo <arik...@wavecomp.com> nanoMIPs core files require value EF_NANOMIPS_ABI_P32 to be passed to the e_flags part of the core's elf header.
Signed-off-by: Aleksandar Markovic <amarko...@wavecomp.com> Signed-off-by: Stefan Markovic <smarko...@wavecomp.com> --- linux-user/elfload.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/linux-user/elfload.c b/linux-user/elfload.c index 8638612..366ef3b 100644 --- a/linux-user/elfload.c +++ b/linux-user/elfload.c @@ -1291,6 +1291,10 @@ static inline void init_thread(struct target_pt_regs *regs, #define ELF_CLASS ELFCLASS64 #endif +#ifdef TARGET_ABI_MIPSP32 +#define ELF_FLAGS EF_NANOMIPS_ABI_P32 +#endif + static inline void init_thread(struct target_pt_regs *regs, struct image_info *infop) { @@ -1400,6 +1404,10 @@ static void elf_core_copy_regs(target_elf_gregset_t *regs, #define ELF_HWCAP 0 #endif +#ifndef ELF_FLAGS +#define ELF_FLAGS 0 +#endif + #ifndef STACK_GROWS_DOWN #define STACK_GROWS_DOWN 1 #endif @@ -3432,7 +3440,7 @@ static int elf_core_dump(int signr, const CPUArchState *env) * Construct valid coredump ELF header. We also * add one more segment for notes. */ - fill_elf_header(&elf, segs + 1, ELF_MACHINE, 0); + fill_elf_header(&elf, segs + 1, ELF_MACHINE, ELF_FLAGS); if (dump_write(fd, &elf, sizeof (elf)) != 0) goto out; -- 2.7.4