https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91903

--- Comment #7 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Will Schmidt <wills...@gcc.gnu.org>:

https://gcc.gnu.org/g:91a95ad2ae0e0f2fa953fafe55ff2ec32c8277d5

commit r11-6984-g91a95ad2ae0e0f2fa953fafe55ff2ec32c8277d5
Author: Will Schmidt <will_schm...@vnet.ibm.com>
Date:   Fri Oct 23 17:28:17 2020 -0500

    [PATCH, rs6000] improve vec_ctf invalid parameter handling.

    Hi,
      Per PR91903, GCC ICEs when we attempt to pass a variable
    (or out of range value) into the vec_ctf() builtin.  Per
    investigation, the parameter checking exists for this
    builtin with the int types, but was missing for
    the long long types. This problem also occurs for the
    vec_cts() builtin, which is also fixed by this patch.

    This patch adds the missing CODE_FOR_* entries to the
    rs6000_expand_binup_builtin to cover that scenario.
    This patch also updates some existing tests to remove
    calls to vec_ctf() and vec_cts() that contain negative
    values.

    PR target/91903

    2020-01-29  Will Schmidt  <will_schm...@vnet.ibm.com>

    gcc/ChangeLog:
            * config/rs6000/rs6000-call.c (rs6000_expand_binup_builtin): Add
            clauses for CODE_FOR_vsx_xvcvuxddp_scale and
            CODE_FOR_vsx_xvcvsxddp_scale to the parameter checking code.

    gcc/testsuite/ChangeLog:
            * gcc.target/powerpc/pr91903.c: New test.
            * gcc.target/powerpc/builtins-1.fold.h: Update.
            * gcc.target/powerpc/builtins-2.c: Update.

Reply via email to