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.sandif...@arm.com>
            Alan Hayward  <alan.hayw...@arm.com>
            David Sherwood  <david.sherw...@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

Reply via email to