qemu-ppc
[Top][All Lists]
Advanced

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

Re: [PATCH 3/6] targetc/ppc: add vmulh{su}w instructions


From: Richard Henderson
Subject: Re: [PATCH 3/6] targetc/ppc: add vmulh{su}w instructions
Date: Thu, 18 Jun 2020 16:29:14 -0700
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.8.0

On 6/12/20 9:20 PM, Lijun Pan wrote:
> +#define VMULH_DO(name, op, element, cast_orig, cast_temp)            \
> +    void helper_vmulh##name(ppc_avr_t *r, ppc_avr_t *a, ppc_avr_t *b)        
> \
> +    {                                                                        
> \
> +     int i;                                                          \
> +                                                                     \
> +     for (i = 0; i < ARRAY_SIZE(r->element); i++) {                  \
> +             r->element[i] = (cast_orig)(((cast_temp)a->element[i] op \
> +                             (cast_temp)b->element[i]) >> 32);       \
> +     }                                                               \
> +    }
> +VMULH_DO(sw, *, s32, int32_t, int64_t)
> +VMULH_DO(uw, *, u32, uint32_t, uint64_t)
> +#undef VMULH_DO

There's no point in calling the macro "VMUL" and then passing in "op" as a
parameter.  Just inline the multiply directly.

Also, fix your indentation.


r~



reply via email to

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