From: Daniel Berlin Date: Mon, 13 Nov 2006 02:18:07 +0000 (+0000) Subject: re PR java/29587 (jc1: out of memory allocating 4072 bytes after a total of 708630224... X-Git-Tag: releases/gcc-4.3.0~8505 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=163b8581869310a93a40d44711095674ba76ca77;p=thirdparty%2Fgcc.git re PR java/29587 (jc1: out of memory allocating 4072 bytes after a total of 708630224 bytes) 2006-11-12 Daniel Berlin Fix PR tree-optimization/29587 * tree-ssa-structalias.c (process_constraint): Don't mark address taken due only to escaped vars constraint. From-SVN: r118742 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index bf326de9eea9..ce01cd2c684f 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2006-11-12 Daniel Berlin + + Fix PR tree-optimization/29587 + * tree-ssa-structalias.c (process_constraint): Don't + mark address taken due only to escaped vars constraint. + 2006-11-12 Michael Matz Roger Sayle diff --git a/gcc/tree-ssa-structalias.c b/gcc/tree-ssa-structalias.c index c7ee8aabaecd..42099ddedd4a 100644 --- a/gcc/tree-ssa-structalias.c +++ b/gcc/tree-ssa-structalias.c @@ -2327,8 +2327,11 @@ process_constraint (constraint_t t) varinfo_t vi; gcc_assert (rhs.offset == 0); - for (vi = get_varinfo (rhs.var); vi != NULL; vi = vi->next) - vi->address_taken = true; + /* No need to mark address taken simply because of escaped vars + constraints. */ + if (lhs.var != escaped_vars_id) + for (vi = get_varinfo (rhs.var); vi != NULL; vi = vi->next) + vi->address_taken = true; VEC_safe_push (constraint_t, heap, constraints, t); }