[Bug rtl-optimization/83424] [6/7 Regression] wrong code with -O -fno-tree-ccp -fno-tree-coalesce-vars

segher at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Tue Jan 16 16:31:00 GMT 2018


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

--- Comment #6 from Segher Boessenkool <segher at gcc dot gnu.org> ---
Author: segher
Date: Tue Jan 16 16:30:43 2018
New Revision: 256752

URL: https://gcc.gnu.org/viewcvs?rev=256752&root=gcc&view=rev
Log:
rtlanal: dead_or_set_regno_p should handle CLOBBER (PR83424)

In PR83424 combine's move_deaths puts a REG_DEAD note in the wrong place
because dead_or_set_regno_p does not account for CLOBBER insns.  This
fixes it.


        PR rtl-optimization/83424
        * rtlanal.c (dead_or_set_regno_p): Handle CLOBBER just like SET.

gcc/testsuite/
        PR rtl-optimization/83424
        * gcc.dg/pr83424.c: New testsuite.

Added:
    branches/gcc-6-branch/gcc/testsuite/gcc.dg/pr83424.c
Modified:
    branches/gcc-6-branch/gcc/ChangeLog
    branches/gcc-6-branch/gcc/rtlanal.c
    branches/gcc-6-branch/gcc/testsuite/ChangeLog


More information about the Gcc-bugs mailing list