[Bug middle-end/50262] PTA doesn't disambiguate locally allocated heap objects from pointed to by arguments
rguenth at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Fri Nov 15 14:48:00 GMT 2013
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50262
--- Comment #4 from Richard Biener <rguenth at gcc dot gnu.org> ---
Author: rguenth
Date: Fri Nov 15 14:48:22 2013
New Revision: 204845
URL: http://gcc.gnu.org/viewcvs?rev=204845&root=gcc&view=rev
Log:
2013-11-15 Richard Biener <rguenther@suse.de>
PR tree-optimization/50262
* tree-ssa-alias.h (struct pt_solution): Split
vars_contains_global into vars_contains_nonlocal,
vars_contains_escaped and vars_contains_escaped_heap.
* tree-ssa-structalias.c (label_visit): Expand comment.
(handle_lhs_call): Adjust comment.
(set_uids_in_ptset): Set the new flags appropriately.
(pt_solution_set): Adjust.
(pt_solution_set_var): Likewise.
(pt_solution_ior_into): Likewise.
(pt_solution_includes_global): Likewise.
(pt_solutions_intersect_1): Optimize escaped handling.
(compute_points_to_sets): Remove heap variable globalization.
(ipa_escaped_pt): Adjust initializer.
(pass_data_ipa_pta): Do not run TODO_update_ssa.
* gimple-pretty-print.c (pp_points_to_solution): Print split
flags.
* tree-ssa-alias.c (dump_points_to_solution): Likewise.
* gcc.dg/tree-ssa/alias-28.c: New testcase.
* gcc.dg/strlenopt-1.c: Adjust.
* gcc.dg/strlenopt-1f.c: Likewise.
Added:
trunk/gcc/testsuite/gcc.dg/tree-ssa/alias-28.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/gimple-pretty-print.c
trunk/gcc/testsuite/ChangeLog
trunk/gcc/testsuite/gcc.dg/strlenopt-1.c
trunk/gcc/testsuite/gcc.dg/strlenopt-1f.c
trunk/gcc/tree-ssa-alias.c
trunk/gcc/tree-ssa-alias.h
trunk/gcc/tree-ssa-structalias.c
More information about the Gcc-bugs
mailing list