https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65851
--- Comment #7 from Richard Biener <rguenth at gcc dot gnu.org> --- Author: rguenth Date: Tue Apr 28 07:26:41 2015 New Revision: 222510 URL: https://gcc.gnu.org/viewcvs?rev=222510&root=gcc&view=rev Log: 2015-04-28 Richard Biener <rguent...@suse.de> PR tree-optimization/65851 * tree-ssa-ccp.c (set_lattice_value): Perform a meet when changing CONSTANT to CONSTANT non-copy. Get new_val by reference. (ccp_lattice_meet): Remove stray argument. Use operand_equal_p rather than simple_cst_equal as the latter doesn't handle COMPLEX_CST. (ccp_visit_phi_node): Adjust. (evaluate_stmt): For simplifications to SSA names return its lattice value if that isn't VARYING. Return immediately when simplified to a constant. (visit_assignment): Adjust. (ccp_visit_stmt): Likewise. * g++.dg/torture/pr65851.C: New testcase. Added: trunk/gcc/testsuite/g++.dg/torture/pr65851.C Modified: trunk/gcc/ChangeLog trunk/gcc/testsuite/ChangeLog trunk/gcc/tree-ssa-ccp.c