[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v2 7/7] tcg-i386: Make use of zero-extended memo
From: |
Aurelien Jarno |
Subject: |
Re: [Qemu-devel] [PATCH v2 7/7] tcg-i386: Make use of zero-extended memory helper routines |
Date: |
Fri, 30 Aug 2013 23:23:47 +0200 |
User-agent: |
Mutt/1.5.21 (2010-09-15) |
On Thu, Aug 29, 2013 at 03:06:01PM -0700, Richard Henderson wrote:
> For 8 and 16-bit unsigned loads, rely on the zero-extension
> from the helper and use a smaller 32-bit move insn.
>
> Signed-off-by: Richard Henderson <address@hidden>
> ---
> tcg/i386/tcg-target.c | 15 ++++++---------
> 1 file changed, 6 insertions(+), 9 deletions(-)
>
> diff --git a/tcg/i386/tcg-target.c b/tcg/i386/tcg-target.c
> index 5aee0fa..e9d6c49 100644
> --- a/tcg/i386/tcg-target.c
> +++ b/tcg/i386/tcg-target.c
> @@ -1520,20 +1520,17 @@ static void tcg_out_qemu_ld_slow_path(TCGContext *s,
> TCGLabelQemuLdst *l)
> case 1 | 4:
> tcg_out_ext16s(s, data_reg, TCG_REG_EAX, P_REXW);
> break;
> - case 0:
> - tcg_out_ext8u(s, data_reg, TCG_REG_EAX);
> - break;
> - case 1:
> - tcg_out_ext16u(s, data_reg, TCG_REG_EAX);
> - break;
> - case 2:
> - tcg_out_mov(s, TCG_TYPE_I32, data_reg, TCG_REG_EAX);
> - break;
> #if TCG_TARGET_REG_BITS == 64
> case 2 | 4:
> tcg_out_ext32s(s, data_reg, TCG_REG_EAX);
> break;
> #endif
> + case 0:
> + case 1:
> + /* Note that the helpers have zero-extended to tcg_target_long. */
> + case 2:
> + tcg_out_mov(s, TCG_TYPE_I32, data_reg, TCG_REG_EAX);
> + break;
> case 3:
> if (TCG_TARGET_REG_BITS == 64) {
> tcg_out_mov(s, TCG_TYPE_I64, data_reg, TCG_REG_RAX);
Reviewed-by: Aurelien Jarno <address@hidden>
--
Aurelien Jarno GPG: 1024D/F1BCDB73
address@hidden http://www.aurel32.net
- Re: [Qemu-devel] [PATCH v2 4/7] target: Include softmmu_exec.h where forgotten, (continued)
[Qemu-devel] [PATCH v2 7/7] tcg-i386: Make use of zero-extended memory helper routines, Richard Henderson, 2013/08/29
- Re: [Qemu-devel] [PATCH v2 7/7] tcg-i386: Make use of zero-extended memory helper routines,
Aurelien Jarno <=