------- Additional Comments From cvs-commit at gcc dot gnu dot org 2005-02-01 20:30 ------- Subject: Bug 19633
CVSROOT: /cvs/gcc Module name: gcc Changes by: [EMAIL PROTECTED] 2005-02-01 20:30:08 Modified files: gcc : ChangeLog tree-flow.h tree-ssa-alias.c gcc/testsuite : ChangeLog gcc/testsuite/gcc.dg: pr19633.c Added files: gcc/testsuite/gcc.dg: pr19633-1.c Log message: PR tree-optimization/19633 * tree-flow.h (struct ptr_info_def): Add field 'pt_null'. * tree-ssa-alias.c (init_alias_info): Initialize. (merge_pointed_to_info): Set. (add_pointed_to_expr): Set pt_null if EXPR is a NULL pointer. (dump_points_to_info_for): Show value of pt_null. (struct count_ptr_d): Declare. (find_ptr_dereference): Remove. (ptr_is_dereferenced_by): Remove. (count_ptr_derefs): New local function. (count_uses_and_derefs): New local function. (compute_points_to_and_addr_escape): Call it. If the number of dereferences is greater than zero, mark the pointer as dereferenced. If there are fewer dereferences than uses of the pointer, the pointer's value escapes. testsuite/ChangeLog PR tree-optimization/19633 * testsuite/gcc.dg/pr19633-1.c: New test. * testsuite/gcc.dg/pr19633.c: Tweak to make pointer point to NULL or a symbol. Patches: http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gcc&r1=2.7365&r2=2.7366 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/tree-flow.h.diff?cvsroot=gcc&r1=2.78&r2=2.79 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/tree-ssa-alias.c.diff?cvsroot=gcc&r1=2.67&r2=2.68 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/ChangeLog.diff?cvsroot=gcc&r1=1.4973&r2=1.4974 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/gcc.dg/pr19633-1.c.diff?cvsroot=gcc&r1=NONE&r2=1.1 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/gcc.dg/pr19633.c.diff?cvsroot=gcc&r1=1.1&r2=1.2 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19633