Fix vec_cmp comparison mode

Jeff Law law@redhat.com
Tue Nov 15 20:50:00 GMT 2016


On 11/15/2016 09:49 AM, Richard Sandiford wrote:
> vec_cmps assign the result of a vector comparison to a mask.
> The optab was called with the destination having mode mask_mode
> but with the source (the comparison) having mode VOIDmode,
> which led to invalid rtl if the source operand was used directly.
>
> Tested on aarch64-linux-gnu and x86_64-linux-gnu.  OK to install?
>
> Thanks,
> Richard
>
>
> [ This patch is part of the SVE series posted here:
>   https://gcc.gnu.org/ml/gcc/2016-11/msg00030.html ]
>
> gcc/
> 2016-11-15  Richard Sandiford  <richard.sandiford@arm.com>
> 	    Alan Hayward  <alan.hayward@arm.com>
> 	    David Sherwood  <david.sherwood@arm.com>
>
> 	* optabs.c (vector_compare_rtx): Add a cmp_mode parameter
> 	and use it in the final call to gen_rtx_fmt_ee.
> 	(expand_vec_cond_expr): Update accordingly.
> 	(expand_vec_cmp_expr): Likewise.
OK.
jeff



More information about the Gcc-patches mailing list