[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 05/15] bsd-user/elfload.c: Don't use ldl() or ld
From: |
Alex Bennée |
Subject: |
Re: [Qemu-devel] [PATCH 05/15] bsd-user/elfload.c: Don't use ldl() or ldq_raw() |
Date: |
Thu, 15 Jan 2015 15:57:01 +0000 |
Peter Maydell <address@hidden> writes:
> Use get_user_u64() and get_user_ual() instead of the ldl() and
> ldq_raw() functions.
>
> [Note that this change is not compile tested as it is actually
> in dead code -- none of the bsd-user configurations are PPC.]
>
> Signed-off-by: Peter Maydell <address@hidden>
Reviewed-by: Alex Bennée <address@hidden>
> ---
> bsd-user/elfload.c | 11 +++++++----
> 1 file changed, 7 insertions(+), 4 deletions(-)
>
> diff --git a/bsd-user/elfload.c b/bsd-user/elfload.c
> index 93fd9e4..2bf57eb 100644
> --- a/bsd-user/elfload.c
> +++ b/bsd-user/elfload.c
> @@ -351,8 +351,10 @@ static inline void init_thread(struct target_pt_regs
> *_regs, struct image_info *
>
> _regs->gpr[1] = infop->start_stack;
> #if defined(TARGET_PPC64) && !defined(TARGET_ABI32)
> - entry = ldq_raw(infop->entry) + infop->load_addr;
> - toc = ldq_raw(infop->entry + 8) + infop->load_addr;
> + get_user_u64(entry, infop->entry);
> + entry += infop->load_addr;
> + get_user_u64(toc, infop->entry + 8);
> + toc += infop->load_addr;
> _regs->gpr[2] = toc;
> infop->entry = entry;
> #endif
> @@ -365,8 +367,9 @@ static inline void init_thread(struct target_pt_regs
> *_regs, struct image_info *
> get_user_ual(_regs->gpr[3], pos);
> pos += sizeof(abi_ulong);
> _regs->gpr[4] = pos;
> - for (tmp = 1; tmp != 0; pos += sizeof(abi_ulong))
> - tmp = ldl(pos);
> + for (tmp = 1; tmp != 0; pos += sizeof(abi_ulong)) {
> + get_user_ual(tmp, pos);
> + }
> _regs->gpr[5] = pos;
> }
--
Alex Bennée
- Re: [Qemu-devel] [PATCH 06/15] linux-user/vm86.c: Use cpu_ldl_data &c rather than plain ldl &c, (continued)
- [Qemu-devel] [PATCH 10/15] cpu_ldst.h: Remove unused very short ld*/st* defines, Peter Maydell, 2015/01/15
- [Qemu-devel] [PATCH 01/15] cpu_ldst.h: Remove unused ldul_ macros, Peter Maydell, 2015/01/15
- [Qemu-devel] [PATCH 14/15] cpu_ldst_template.h: Drop unused cpu_ldfq/stfq/ldfl/stfl accessors, Peter Maydell, 2015/01/15
- [Qemu-devel] [PATCH 08/15] target-mips: Don't use _raw load/store accessors, Peter Maydell, 2015/01/15
- [Qemu-devel] [PATCH 09/15] cpu_ldst.h: Drop unused ld/st*_kernel defines, Peter Maydell, 2015/01/15
- [Qemu-devel] [PATCH 15/15] cpu_ldst.h, cpu-all.h, bswap.h: Update documentation on ld/st accessors, Peter Maydell, 2015/01/15
- [Qemu-devel] [PATCH 07/15] linux-user/main.c (m68k): Use get_user_u16 rather than lduw in cpu_loop, Peter Maydell, 2015/01/15
- [Qemu-devel] [PATCH 05/15] bsd-user/elfload.c: Don't use ldl() or ldq_raw(), Peter Maydell, 2015/01/15
- Re: [Qemu-devel] [PATCH 05/15] bsd-user/elfload.c: Don't use ldl() or ldq_raw(),
Alex Bennée <=
- [Qemu-devel] [PATCH 02/15] monitor.c: Use ld*_p() instead of ld*_raw(), Peter Maydell, 2015/01/15
- [Qemu-devel] [PATCH 04/15] linux-user/elfload.c: Don't use _raw accessor functions, Peter Maydell, 2015/01/15
- Re: [Qemu-devel] [PATCH 00/15] Clean up cpu-ldst ld/st memory accessors, Lluís Vilanova, 2015/01/15
- Re: [Qemu-devel] [PATCH 00/15] Clean up cpu-ldst ld/st memory accessors, Richard Henderson, 2015/01/16