From 65a428db25019da409ab3ee919a3bb9d7c9257e6 Mon Sep 17 00:00:00 2001 From: Jan Hubicka Date: Thu, 5 Feb 2015 04:57:32 +0100 Subject: [PATCH] re PR ipa/61548 (FAIL: gcc.dg/tls/alias-1.c) PR ipa/61548 * varpool.c (varpool_node::remove): Fix order of variables. From-SVN: r220432 --- gcc/ChangeLog | 5 +++++ gcc/varpool.c | 3 ++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index fa6a7e826ec..6c19064957d 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2015-02-04 Jan Hubicka + + PR ipa/61548 + * varpool.c (varpool_node::remove): Fix order of variables. + 2015-02-04 Jan Hubicka PR ipa/64686 diff --git a/gcc/varpool.c b/gcc/varpool.c index 3bd6eb41b7a..49a921331da 100644 --- a/gcc/varpool.c +++ b/gcc/varpool.c @@ -195,7 +195,6 @@ void varpool_node::remove (void) { symtab->call_varpool_removal_hooks (this); - unregister (); /* When streaming we can have multiple nodes associated with decl. */ if (symtab->state == LTO_STREAMING) @@ -205,6 +204,8 @@ varpool_node::remove (void) else if (DECL_INITIAL (decl) && DECL_INITIAL (decl) != error_mark_node && !ctor_useable_for_folding_p ()) remove_initializer (); + + unregister (); ggc_free (this); } -- 2.30.2