Commit c4bb110a by Richard Henderson Committed by Richard Henderson

* optimize.c (maybe_clone_body): Inc/dec function_depth.

From-SVN: r71210
parent f23fb7f5
...@@ -6,6 +6,10 @@ ...@@ -6,6 +6,10 @@
2003-09-08 Richard Henderson <rth@redhat.com> 2003-09-08 Richard Henderson <rth@redhat.com>
* optimize.c (maybe_clone_body): Inc/dec function_depth.
2003-09-08 Richard Henderson <rth@redhat.com>
* decl.c (finish_function): Clear current_function_decl. * decl.c (finish_function): Clear current_function_decl.
* decl2.c (mark_used): Don't push/pop gc context. * decl2.c (mark_used): Don't push/pop gc context.
* optimize.c (optimize_function): Likewise. * optimize.c (optimize_function): Likewise.
......
...@@ -130,6 +130,11 @@ maybe_clone_body (tree fn) ...@@ -130,6 +130,11 @@ maybe_clone_body (tree fn)
/* Emit the DWARF1 abstract instance. */ /* Emit the DWARF1 abstract instance. */
(*debug_hooks->deferred_inline_function) (fn); (*debug_hooks->deferred_inline_function) (fn);
/* Our caller does not expect collection to happen, which it might if
we decide to compile the function to rtl now. Arrange for a new
gc context to be created if so. */
function_depth++;
/* We know that any clones immediately follow FN in the TYPE_METHODS /* We know that any clones immediately follow FN in the TYPE_METHODS
list. */ list. */
for (clone = TREE_CHAIN (fn); for (clone = TREE_CHAIN (fn);
...@@ -253,6 +258,8 @@ maybe_clone_body (tree fn) ...@@ -253,6 +258,8 @@ maybe_clone_body (tree fn)
pop_from_top_level (); pop_from_top_level ();
} }
function_depth--;
/* We don't need to process the original function any further. */ /* We don't need to process the original function any further. */
return 1; return 1;
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment