https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83438
--- Comment #3 from rguenther at suse dot de <rguenther at suse dot de> --- On December 18, 2017 7:31:45 PM GMT+01:00, law at redhat dot com <gcc-bugzi...@gcc.gnu.org> wrote: >https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83438 > >Jeffrey A. Law <law at redhat dot com> changed: > > What |Removed |Added >---------------------------------------------------------------------------- > CC| |law at redhat dot com > >--- Comment #2 from Jeffrey A. Law <law at redhat dot com> --- >There was a correctness fix that went in about a week later: It still fails as of today. >Author: law <law@138bc75d-0d04-0410-961f-82ee72b054a4> >Date: Tue Dec 12 22:46:46 2017 +0000 > > PR tree-optimization/83298 > PR tree-optimization/83362 > PR tree-optimization/83383 > * gimple-ssa-evrp-analyze.h (class evrp_range_analyzer): Make > push_value_range a public interface. Add new argument to > record_ranges_from_stmt. > * gimple-ssa-evrp-analyze.c > (evrp_range_analyzer::record_ranges_from_stmt): Add new argument. > Update comments. Handle recording temporary equivalences. > * tree-ssa-dom.c (dom_opt_opt_walker::before_dom_children): Add > new argument to call to >evrp_range_analyzer::record_ranges_from_stmt. > * gimple-ssa-evrp.c (evrp_dom_walker::before_dom_children): >Likewise. > * tree-ssa-threadedge.c: Include alloc-pool.h, vr-values.h and > gimple-ssa-evrp-analyze.h. > (record_temporary_equivalences_from_phis): Add new argument. When > the PHI arg is an SSA_NAME, set the result's range to the range > of the PHI arg. > (record_temporary_equivalences_from_stmts_at_dest): Record ranges > from statements too. > (thread_through_normal_block): Accept new argument, >evrp_range_analyzer. > Pass it down to children as needed. > (thread_outgoing_edges): Likewise. > (thread_across_edge): Likewise. Push/pop range state as needed. > * tree-ssa-threadedge.h (thread_outgoing_edges): Update prototype. > > PR tree-optimization/83298 > PR tree-optimization/83362 > PR tree-optimization/83383 > * gcc.c-torture/execute/pr83298.c: New test. > * gcc.c-torture/execute/pr83362.c New test. > * gcc.c-torture/execute/pr83383.c New test. > > git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@255593 >138bc75d-0d04-0410-961f-82ee72b054a4