https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77579
Andrew Pinski <pinskia at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |ASSIGNED Last reconfirmed| |2017-08-18 Ever confirmed|0 |1 --- Comment #2 from Andrew Pinski <pinskia at gcc dot gnu.org> --- With that patch there are a few regressions: +FAIL: gcc.dg/tree-ssa/pr40921.c scan-tree-dump-times optimized "_* = -y_" 0 +FAIL: gcc.dg/tree-ssa/slsr-10.c scan-tree-dump-times optimized " \\\\* " 1 +FAIL: gcc.dg/tree-ssa/slsr-14.c scan-tree-dump-times optimized " \\\\* " 1 +FAIL: gcc.dg/tree-ssa/slsr-15.c scan-tree-dump-times optimized " \\\\* " 1 +FAIL: gcc.dg/tree-ssa/slsr-19.c scan-tree-dump-times optimized " \\\\* " 2 +FAIL: gcc.dg/tree-ssa/slsr-20.c scan-tree-dump-times optimized " \\\\* s" 1 +FAIL: gcc.dg/tree-ssa/slsr-21.c scan-tree-dump-times optimized " \\\\* stride" 1 +FAIL: gcc.dg/tree-ssa/slsr-22.c scan-tree-dump-times optimized " \\\\* 3" 1 +FAIL: gcc.dg/tree-ssa/slsr-23.c scan-tree-dump-times optimized " \\\\* stride" 1 +FAIL: gcc.dg/tree-ssa/slsr-24.c scan-tree-dump-times optimized " \\\\* " 1 +FAIL: gcc.dg/tree-ssa/slsr-25.c scan-tree-dump-times optimized " \\\\* " 1 +FAIL: gcc.dg/tree-ssa/slsr-26.c scan-tree-dump-times optimized " \\\\* stride" 1 +FAIL: gcc.dg/tree-ssa/slsr-31.c scan-tree-dump-times optimized " \\\\* 2" 1 +FAIL: gcc.dg/tree-ssa/slsr-32.c scan-tree-dump-times optimized " \\\\* s" 1 +FAIL: gcc.dg/tree-ssa/slsr-37.c scan-tree-dump-times optimized " \\\\* s" 1 +FAIL: gcc.dg/tree-ssa/slsr-5.c scan-tree-dump-times optimized " \\\\* " 1 +FAIL: gcc.dg/tree-ssa/slsr-7.c scan-tree-dump-times optimized " \\\\* " 1 +FAIL: gcc.dg/tree-ssa/slsr-9.c scan-tree-dump-times optimized " \\\\* " 1 Though most are not really worse code. slsr-21.c, slsr-22.c, slsr-23.c, slsr-24.c, slsr-25.c, slsr-26.c, slsr-31.c, slsr-32.c, slsr-37.c. Basically if the one of the operand is a constant, we want to optimize this to: add DST, SRC, SRC1 lsl #N . But if it is not constant we don't want to do madd. Let me see if I can do that.