This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug tree-optimization/78305] [6 Regression] Wrong constant folding
- From: "rguenth at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Wed, 23 Nov 2016 14:31:53 +0000
- Subject: [Bug tree-optimization/78305] [6 Regression] Wrong constant folding
- Auto-submitted: auto-generated
- References: <bug-78305-4@http.gcc.gnu.org/bugzilla/>
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78305
--- Comment #8 from Richard Biener <rguenth at gcc dot gnu.org> ---
Author: rguenth
Date: Wed Nov 23 14:31:16 2016
New Revision: 242756
URL: https://gcc.gnu.org/viewcvs?rev=242756&root=gcc&view=rev
Log:
2016-11-23 Richard Biener <rguenther@suse.de>
Backport from mainline
2016-11-23 Richard Biener <rguenther@suse.de>
PR lto/78472
* tree.c (gimple_canonical_types_compatible_p): Ignore zero-sized
fields.
lto/
* lto.c (hash_canonical_type): Ignore zero-sized fields.
* g++.dg/lto/pr78472_0.c: New testcase.
* g++.dg/lto/pr78472_1.C: Likewise.
2016-11-17 Richard Biener <rguenther@suse.de>
PR middle-end/78305
* fold-const.c (negate_expr_p): Fix multiplication case.
* gcc.dg/torture/pr78305.c: New testcase.
2016-11-16 Richard Biener <rguenther@suse.de>
PR middle-end/78333
* gimplify.c (gimplify_function_tree): Do not instrument
GNU extern inline functions.
* gcc.dg/pr78333.c: New testcase.
2016-11-07 Richard Biener <rguenther@suse.de>
PR tree-optimization/78228
* tree-ssa-phiopt.c (abs_replacement): Avoid introducing
undefined behavior.
* gcc.dg/tree-ssa/phi-opt-15.c: New testcase.
2016-11-04 Richard Biener <rguenther@suse.de>
PR middle-end/78185
* loop-invariant.c (find_exits): Record entering inner
loops as possibly exiting to handle infinite sub-loops.
* tree-ssa-loop-im.c: Include tree-ssa-loop-niter.h.
(fill_always_executed_in_1): Honor infinite child loops.
* gcc.dg/pr78185.c: New testcase.
2016-10-06 Richard Biener <rguenther@suse.de>
PR tree-optimization/77855
* tree-ssa-pre.c (prune_clobbered_mems): Queue exprs to remove
instead of removing the current item while iterating over the set
which is not safe.
* gcc.dg/torture/pr77855.c: New testcase.
Added:
branches/gcc-6-branch/gcc/testsuite/g++.dg/lto/pr78472_0.c
branches/gcc-6-branch/gcc/testsuite/g++.dg/lto/pr78472_1.C
branches/gcc-6-branch/gcc/testsuite/gcc.dg/pr78185.c
branches/gcc-6-branch/gcc/testsuite/gcc.dg/pr78333.c
branches/gcc-6-branch/gcc/testsuite/gcc.dg/torture/pr77855.c
branches/gcc-6-branch/gcc/testsuite/gcc.dg/torture/pr78305.c
branches/gcc-6-branch/gcc/testsuite/gcc.dg/tree-ssa/phi-opt-15.c
Modified:
branches/gcc-6-branch/gcc/ChangeLog
branches/gcc-6-branch/gcc/fold-const.c
branches/gcc-6-branch/gcc/gimplify.c
branches/gcc-6-branch/gcc/loop-invariant.c
branches/gcc-6-branch/gcc/lto/ChangeLog
branches/gcc-6-branch/gcc/lto/lto.c
branches/gcc-6-branch/gcc/testsuite/ChangeLog
branches/gcc-6-branch/gcc/tree-ssa-loop-im.c
branches/gcc-6-branch/gcc/tree-ssa-phiopt.c
branches/gcc-6-branch/gcc/tree-ssa-pre.c
branches/gcc-6-branch/gcc/tree.c