summaryrefslogtreecommitdiffstats
path: root/gcc
diff options
context:
space:
mode:
authorhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>2004-09-03 20:37:03 +0000
committerhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>2004-09-03 20:37:03 +0000
commit667fed2f9f77284bffe19107853077b0f87f1c77 (patch)
tree42f712b9d5a72b47fe8d9db229a8fc5deab54258 /gcc
parent4ba3263810a808881ccb9af08b2debc044915c3c (diff)
downloadppe42-gcc-667fed2f9f77284bffe19107853077b0f87f1c77.tar.gz
ppe42-gcc-667fed2f9f77284bffe19107853077b0f87f1c77.zip
* decl.c (finish_function): Clean out pointers we no longer need.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@87055 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc')
-rw-r--r--gcc/cp/ChangeLog4
-rw-r--r--gcc/cp/decl.c12
2 files changed, 16 insertions, 0 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index 4dafed925b7..4e25f69c98d 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,7 @@
+2004-09-03 Jan Hubicka <jh@suse.cz>
+
+ * decl.c (finish_function): Clean out pointers we no longer need.
+
2004-09-03 Jan Beulich <jbeulich@novell.com>
* g++spec.c (MATH_LIBRARY_PROFILE): Default to MATH_LIBRARY rather
diff --git a/gcc/cp/decl.c b/gcc/cp/decl.c
index 55db551001b..1aed934a3e5 100644
--- a/gcc/cp/decl.c
+++ b/gcc/cp/decl.c
@@ -10451,11 +10451,23 @@ finish_function (int flags)
/* Genericize before inlining. */
if (!processing_template_decl)
{
+ struct language_function *f = DECL_SAVED_FUNCTION_DATA (fndecl);
cp_genericize (fndecl);
+ /* Clear out the bits we don't need. */
+ f->x_current_class_ptr = NULL;
+ f->x_current_class_ref = NULL;
+ f->x_eh_spec_block = NULL;
+ f->x_in_charge_parm = NULL;
+ f->x_vtt_parm = NULL;
+ f->x_return_value = NULL;
+ f->bindings = NULL;
/* Handle attribute((warn_unused_result)). Relies on gimple input. */
c_warn_unused_result (&DECL_SAVED_TREE (fndecl));
}
+ /* Clear out the bits we don't need. */
+ local_names = NULL;
+ named_label_uses = NULL;
/* We're leaving the context of this function, so zap cfun. It's still in
DECL_STRUCT_FUNCTION, and we'll restore it in tree_rest_of_compilation. */
OpenPOWER on IntegriCloud