Hello Sebastian,
On 23 Jun 09:00, Peryt, Sebastian wrote:
> Hi,
> 
> This patch adds three extra RTL meta-templates for scalar round and mask. 
> Additionally fixes errors caused by previous mask and round usage in some of 
> the intrinsics that I found.
Could you pls point which intrinsics did you fixed (or which errors)?
I see only MD changes in your patch.

> 
> 2017-06-23  Sebastian Peryt  <sebastian.pe...@intel.com>
> 
> gcc/
>       * config/i386/subst.md (mask_scalar, round_scalar, 
> round_saeonly_scalar): New templates.
I'd call it meta-templates.
>       (mask_scalar_name, mask_scalar_operand3, round_scalar_name,
>       round_scalar_mask_operand3, round_scalar_mask_op3,
>       round_scalar_constraint, round_scalar_prefix, round_saeonly_scalar_name,
>       round_saeonly_scalar_mask_operand3, round_saeonly_scalar_mask_op3,
>       round_saeonly_scalar_constraint, round_saeonly_scalar_prefix): New 
> subst attribute.
>       * config/i386/sse.md
>       (<sse>_vm<plusminus_insn><mode>3<mask_name><round_name>): Renamed to ...
>       <sse>_vm<plusminus_insn><mode>3<mask_scalar_name><round_scalar_name> 
> ... this.
>       (<sse>_vm<multdiv_mnemonic><mode>3<mask_name><round_name>): Renamed to 
> ...
>       <sse>_vm<multdiv_mnemonic><mode>3<mask_scalar_name><round_scalar_name> 
> ... this.
>       (<sse>_vm<code><mode>3<mask_name><round_saeonly_name>): Renamed to ...
>       <sse>_vm<code><mode>3<mask_scalar_name><round_saeonly_scalar_name> ... 
> this.
>       (v<plusminus_mnemonic><ssescalarmodesuffix>\t{<round_mask_op3>%2, %1, 
> %0<mask_operand3>|%0<mask_operand3>, %1, %<iptr>2<round_mask_op3>}): Changed 
> to ...
>       v<plusminus_mnemonic><ssescalarmodesuffix>\t{<round_scalar_mask_op3>%2, 
> %1, %0<mask_scalar_operand3>|%0<mask_scalar_operand3>, %1, 
> %<iptr>2<round_scalar_mask_op3>} ... this.
>       (v<multdiv_mnemonic><ssescalarmodesuffix>\t{<round_mask_op3>%2, %1, 
> %0<mask_operand3>|%0<mask_operand3>, %1, %<iptr>2<round_mask_op3>}): Changed 
> to ...
>       v<multdiv_mnemonic><ssescalarmodesuffix>\t{<round_scalar_mask_op3>%2, 
> %1, %0<mask_scalar_operand3>|%0<mask_scalar_operand3>, %1, 
> %<iptr>2<round_scalar_mask_op3>} ... this.
>       (v<maxmin_float><ssescalarmodesuffix>\t{<round_saeonly_mask_op3>%2, %1, 
> %0<mask_operand3>|%0<mask_operand3>, %1, %<iptr>2<round_saeonly_mask_op3>}): 
> Changed to ...
>       
> v<maxmin_float><ssescalarmodesuffix>\t{<round_saeonly_scalar_mask_op3>%2, %1, 
> %0<mask_scalar_operand3>|%0<mask_scalar_operand3>, %1, 
> %<iptr>2<round_saeonly_scalar_mask_op3>} ... this.
We need to obey conventions. Pls break long lines here.

--
Thanks, K
> 
> Is it ok for trunk?
> 
> Thanks,
> Sebastian


Reply via email to