From 0dc9ab2beda555432f58e3b17b7c1f1d4a63afd7 Mon Sep 17 00:00:00 2001 From: John David Anglin Date: Fri, 28 May 2004 17:27:27 +0000 Subject: [PATCH] re PR bootstrap/14671 (caller-save.c:491: internal compiler error: Segmentation fault) PR bootstrap/14671 * alias.c (init_alias_analysis): Allocate alias_invariant array with ggc_alloc_cleared instead of xrealloc. (end_alias_analysis): Don't free alias_invariant. From-SVN: r82371 --- gcc/ChangeLog | 7 +++++++ gcc/alias.c | 7 ++----- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 31fcba844268..aa2183f5b98e 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2004-05-28 John David Anglin + + PR bootstrap/14671 + * alias.c (init_alias_analysis): Allocate alias_invariant array with + ggc_alloc_cleared instead of xrealloc. + (end_alias_analysis): Don't free alias_invariant. + 2004-05-27 Richard Henderson Backport from mainline: diff --git a/gcc/alias.c b/gcc/alias.c index e320a6f0efc6..abc98de7557a 100644 --- a/gcc/alias.c +++ b/gcc/alias.c @@ -2786,10 +2786,8 @@ init_alias_analysis () reg_seen = (char *) xmalloc (reg_base_value_size); if (! reload_completed && flag_unroll_loops) { - /* ??? Why are we realloc'ing if we're just going to zero it? */ - alias_invariant = (rtx *)xrealloc (alias_invariant, - reg_base_value_size * sizeof (rtx)); - memset ((char *)alias_invariant, 0, reg_base_value_size * sizeof (rtx)); + alias_invariant = (rtx *) ggc_alloc_cleared (reg_base_value_size + * sizeof (rtx)); alias_invariant_size = reg_base_value_size; } @@ -2985,7 +2983,6 @@ end_alias_analysis () reg_base_value_size = 0; if (alias_invariant) { - free (alias_invariant); alias_invariant = 0; alias_invariant_size = 0; } -- 2.47.2