summaryrefslogtreecommitdiffstats
path: root/linux-user
diff options
context:
space:
mode:
authorStefan Markovic2018-10-23 09:19:10 +0200
committerAleksandar Markovic2018-10-29 15:50:31 +0100
commitc94cb6c94605346b8b15158a2f1b12782c0c41c5 (patch)
treeae859d10e3d8d736903bf09ccd63d1107ee61a39 /linux-user
parentlinux-user: Extract MIPS abiflags from ELF file (diff)
downloadqemu-c94cb6c94605346b8b15158a2f1b12782c0c41c5.tar.gz
qemu-c94cb6c94605346b8b15158a2f1b12782c0c41c5.tar.xz
qemu-c94cb6c94605346b8b15158a2f1b12782c0c41c5.zip
linux-user: Read and set FP ABI value from MIPS abiflags
Set fp_abi and interp_fp_abi values to current fp_abi value read from MIPS.abiflags. Reviewed-by: Aleksandar Markovic <amarkovic@wavecomp.com> Signed-off-by: Stefan Markovic <smarkovic@wavecomp.com>
Diffstat (limited to 'linux-user')
-rw-r--r--linux-user/elfload.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/linux-user/elfload.c b/linux-user/elfload.c
index 5881233d22..5bccd2e243 100644
--- a/linux-user/elfload.c
+++ b/linux-user/elfload.c
@@ -2396,6 +2396,7 @@ static void load_elf_image(const char *image_name, int image_fd,
}
}
bswap_mips_abiflags(&abiflags);
+ info->fp_abi = abiflags.fp_abi;
#endif
}
}
@@ -2708,6 +2709,9 @@ int load_elf_binary(struct linux_binprm *bprm, struct image_info *info)
target_mmap(0, qemu_host_page_size, PROT_READ | PROT_EXEC,
MAP_FIXED | MAP_PRIVATE | MAP_ANONYMOUS, -1, 0);
}
+#ifdef TARGET_MIPS
+ info->interp_fp_abi = interp_info.fp_abi;
+#endif
}
bprm->p = create_elf_tables(bprm->p, bprm->argc, bprm->envc, &elf_ex,