[Bug tree-optimization/39120] [4.2/4.3/4.4 Regression] Missed escape constraints for call results

rguenth at gcc dot gnu dot org gcc-bugzilla@gcc.gnu.org
Fri Mar 27 22:37:00 GMT 2009



------- Comment #7 from rguenth at gcc dot gnu dot org  2009-03-27 22:36 -------
Subject: Bug 39120

Author: rguenth
Date: Fri Mar 27 22:36:33 2009
New Revision: 145137

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=145137
Log:
2009-03-27  Richard Guenther  <rguenther@suse.de>

        PR tree-optimization/39120
        * tree-ssa-structalias.c (handle_rhs_call): Fill out return
        constraints.
        (handle_lhs_call): Process return constraints.  Add escape
        constraints if necessary.
        (handle_const_call): Fill out return constraints.  Make nested
        case more precise.  Avoid consttmp if possible.
        (handle_pure_call): Fill out return constraints.  Avoid
        callused if possible.
        (find_func_aliases): Simplify call handling.

        * gcc.c-torture/execute/pr39120.c: New testcase.

2009-03-27  Richard Guenther  <rguenther@suse.de>

        PR tree-optimization/39120
        * tree-ssa-structalias.c (do_sd_constraint): Do not use CALLUSED
        as a representative.
        (solve_graph): Do propagate CALLUSED.
        (handle_pure_call): Use a scalar constraint from CALLUSED for
        the return value.
        (find_what_p_points_to): CALLUSED shall not appear in poins-to
        solutions.

        * gcc.dg/torture/pta-callused-1.c: New testcase.

Added:
    trunk/gcc/testsuite/gcc.c-torture/execute/pr39120.c
    trunk/gcc/testsuite/gcc.dg/torture/pta-callused-1.c
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/testsuite/ChangeLog
    trunk/gcc/tree-ssa-structalias.c


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39120



More information about the Gcc-bugs mailing list