https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77879
--- Comment #8 from Richard Biener <rguenth at gcc dot gnu.org> --- Author: rguenth Date: Wed Nov 2 12:47:10 2016 New Revision: 241788 URL: https://gcc.gnu.org/viewcvs?rev=241788&root=gcc&view=rev Log: 2016-11-02 Richard Biener <rguent...@suse.de> Backport from mainline 2016-11-02 Richard Biener <rguent...@suse.de> PR tree-optimization/78047 * tree-ssa-structalias.c (push_fields_onto_fieldstack): Initialize fake field at offset zero conservatively regarding to may_have_pointers. 2016-10-31 Richard Biener <rguent...@suse.de> PR lto/78129 * lto.c (do_whole_program_analysis): Bail out after errors from WPA analysis. 2016-10-07 Richard Biener <rguent...@suse.de> PR tree-optimization/77879 * tree-ssa-structalias.c (handle_const_call): Properly handle NRV return slots. (handle_pure_call): Likewise. 2016-10-06 Richard Biener <rguent...@suse.de> PR tree-optimization/77839 * tree-ssa-sccvn.c (set_ssa_val_to): Forbid value -> constant value lattice transition. * gcc.dg/torture/pr77839.c: New testcase. 2016-09-27 Richard Biener <rguent...@suse.de> PR tree-optimization/77745 * tree-ssa-pre.c (eliminate_dom_walker::before_dom_children): When removing redundant stores make sure to check compatibility of the TBAA state for downstream accesses. * tree-ssa-sccvn.c (visit_reference_op_store): Likewise for when value-numbering virtual operands for store matches. * g++.dg/torture/pr77745.C: New testcase. 2016-09-21 Richard Biener <rguent...@suse.de> PR tree-optimization/77648 * tree-ssa-structalias.c (process_constraint): Handle all DEREF with complex RHS. (make_transitive_closure_constraints): Adjust comment. (make_any_offset_constraints): New function. (handle_rhs_call): Make sure to first expand a pointer to all subfields before transitively closing it. (handle_const_call): Likewise. Properly expand returned pointers as well. (handle_pure_call): Likewise. * gcc.dg/torture/pr77648-1.c: New testcase. * gcc.dg/torture/pr77648-2.c: Likewise. Added: branches/gcc-6-branch/gcc/testsuite/g++.dg/torture/pr77745.C branches/gcc-6-branch/gcc/testsuite/gcc.dg/torture/pr77648-1.c branches/gcc-6-branch/gcc/testsuite/gcc.dg/torture/pr77648-2.c branches/gcc-6-branch/gcc/testsuite/gcc.dg/torture/pr77839.c Modified: branches/gcc-6-branch/gcc/ChangeLog 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-pre.c branches/gcc-6-branch/gcc/tree-ssa-sccvn.c branches/gcc-6-branch/gcc/tree-ssa-structalias.c