https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71866
--- Comment #2 from Richard Biener <rguenth at gcc dot gnu.org> --- Author: rguenth Date: Thu Jul 14 12:15:38 2016 New Revision: 238334 URL: https://gcc.gnu.org/viewcvs?rev=238334&root=gcc&view=rev Log: 2016-07-14 Richard Biener <rguent...@suse.de> PR tree-optimization/71866 * tree-ssa-pre.c (get_constant_for_value_id): Remove. (do_hoist_insertion): Avoid endless recursion when we didn't insert anything because we managed to simplify things down to a constant or SSA name. (fully_constant_expression): Re-write in terms of ... * tree-ssa-sccvn.h (vn_nary_simplify): ... this. Declare. * tree-ssa-sccvn.c (vn_nary_simplify): New wrapper around vn_nary_build_or_lookup_1. (vn_nary_build_or_lookup_1): Added flag and renamed from ... (vn_nary_build_or_lookup): ... this which now wraps it. * gcc.dg/torture/pr71866.c: New testcase. Added: trunk/gcc/testsuite/gcc.dg/torture/pr71866.c Modified: trunk/gcc/ChangeLog trunk/gcc/testsuite/ChangeLog trunk/gcc/tree-ssa-pre.c trunk/gcc/tree-ssa-sccvn.c trunk/gcc/tree-ssa-sccvn.h