[Bug target/68805] ICE while var-tracking in simplify_binary_operation_1 with -g and -mvsx-timode

meissner at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Thu Dec 17 01:02:00 GMT 2015


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

--- Comment #3 from Michael Meissner <meissner at gcc dot gnu.org> ---
Author: meissner
Date: Thu Dec 17 01:01:24 2015
New Revision: 231732

URL: https://gcc.gnu.org/viewcvs?rev=231732&root=gcc&view=rev
Log:
[gcc]
2015-12-15  Michael Meissner  <meissner@linux.vnet.ibm.com>

        PR target/68805
        * config/rs6000/rs6000.c (rs6000_gen_le_vsx_permute): Use ROTATE
        instead of VEC_SELECT for TImode.

        * config/rs6000/vsx.md (VSX_LE): Move TImode from VSX_LE to
        VSX_LE_128, so that we use ROTATE to swap the 64-bit words instead
        of using VEC_SELECT.
        (VSX_LE_128): Likewise.
        (define_peephole2): Add peephole to eliminate double xxpermdi when
        copying TImode.

[gcc/testsuite]
2015-12-15  Michael Meissner  <meissner@linux.vnet.ibm.com>

        PR target/68805
        * gcc.target/powerpc/pr68805.c: New test.


Added:
    trunk/gcc/testsuite/gcc.target/powerpc/pr68805.c
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/config/rs6000/rs6000.c
    trunk/gcc/config/rs6000/vsx.md
    trunk/gcc/testsuite/ChangeLog


More information about the Gcc-bugs mailing list