qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH] target-microblaze: Use setcond for pcmp*


From: Edgar E. Iglesias
Subject: Re: [Qemu-devel] [PATCH] target-microblaze: Use setcond for pcmp*
Date: Thu, 3 Sep 2015 13:09:10 +0200
User-agent: Mutt/1.5.21 (2010-09-15)

On Wed, Sep 02, 2015 at 02:46:01PM -0700, Richard Henderson wrote:
> Signed-off-by: Richard Henderson <address@hidden>

Reviewed-by: Edgar E. Iglesias <address@hidden>
Tested-by: Edgar E. Iglesias <address@hidden>

I've added this to my MB queue, thanks.

Cheers,
Edgar


> ---
> This was originally posted back in February.  I failed to keep
> any reply, if any, that may have been given.  There's no change
> to the code after updating to mainline.
> 
> 
> r~
> ---
>  target-microblaze/translate.c | 23 ++++-------------------
>  1 file changed, 4 insertions(+), 19 deletions(-)
> 
> diff --git a/target-microblaze/translate.c b/target-microblaze/translate.c
> index 47ac180..d4d9a8a 100644
> --- a/target-microblaze/translate.c
> +++ b/target-microblaze/translate.c
> @@ -313,7 +313,6 @@ static void dec_sub(DisasContext *dc)
>  static void dec_pattern(DisasContext *dc)
>  {
>      unsigned int mode;
> -    TCGLabel *l1;
>  
>      if ((dc->tb_flags & MSR_EE_FLAG)
>            && (dc->cpu->env.pvr.regs[2] & PVR2_ILL_OPCODE_EXC_MASK)
> @@ -333,29 +332,15 @@ static void dec_pattern(DisasContext *dc)
>          case 2:
>              LOG_DIS("pcmpeq r%d r%d r%d\n", dc->rd, dc->ra, dc->rb);
>              if (dc->rd) {
> -                TCGv t0 = tcg_temp_local_new();
> -                l1 = gen_new_label();
> -                tcg_gen_movi_tl(t0, 1);
> -                tcg_gen_brcond_tl(TCG_COND_EQ,
> -                                  cpu_R[dc->ra], cpu_R[dc->rb], l1);
> -                tcg_gen_movi_tl(t0, 0);
> -                gen_set_label(l1);
> -                tcg_gen_mov_tl(cpu_R[dc->rd], t0);
> -                tcg_temp_free(t0);
> +                tcg_gen_setcond_tl(TCG_COND_EQ, cpu_R[dc->rd],
> +                                   cpu_R[dc->ra], cpu_R[dc->rb]);
>              }
>              break;
>          case 3:
>              LOG_DIS("pcmpne r%d r%d r%d\n", dc->rd, dc->ra, dc->rb);
> -            l1 = gen_new_label();
>              if (dc->rd) {
> -                TCGv t0 = tcg_temp_local_new();
> -                tcg_gen_movi_tl(t0, 1);
> -                tcg_gen_brcond_tl(TCG_COND_NE,
> -                                  cpu_R[dc->ra], cpu_R[dc->rb], l1);
> -                tcg_gen_movi_tl(t0, 0);
> -                gen_set_label(l1);
> -                tcg_gen_mov_tl(cpu_R[dc->rd], t0);
> -                tcg_temp_free(t0);
> +                tcg_gen_setcond_tl(TCG_COND_NE, cpu_R[dc->rd],
> +                                   cpu_R[dc->ra], cpu_R[dc->rb]);
>              }
>              break;
>          default:
> -- 
> 2.4.3
> 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]