Commit 46766466 by Richard Stallman

(save_machine_status, restore_machine_status): New vars.

(push_function_context, pop_function_context): Use them.

From-SVN: r5721
parent b7560989
...@@ -306,6 +306,12 @@ static tree empty_cleanup_list; ...@@ -306,6 +306,12 @@ static tree empty_cleanup_list;
assign_stack_local uses frame_pointer_rtx when this is nonzero. */ assign_stack_local uses frame_pointer_rtx when this is nonzero. */
static int virtuals_instantiated; static int virtuals_instantiated;
/* These variables hold pointers to functions to
save and restore machine-specific data,
in push_function_context and pop_function_context. */
void (*save_machine_status) ();
void (*restore_machine_status) ();
/* Nonzero if we need to distinguish between the return value of this function /* Nonzero if we need to distinguish between the return value of this function
and the return value of a function called by this function. This helps and the return value of a function called by this function. This helps
integrate.c */ integrate.c */
...@@ -480,6 +486,9 @@ push_function_context () ...@@ -480,6 +486,9 @@ push_function_context ()
save_expr_status (p); save_expr_status (p);
save_stmt_status (p); save_stmt_status (p);
save_varasm_status (p); save_varasm_status (p);
if (save_machine_status)
(*save_machine_status) (p);
} }
/* Restore the last saved context, at the end of a nested function. /* Restore the last saved context, at the end of a nested function.
...@@ -542,6 +551,9 @@ pop_function_context () ...@@ -542,6 +551,9 @@ pop_function_context ()
restore_stmt_status (p); restore_stmt_status (p);
restore_varasm_status (p); restore_varasm_status (p);
if (restore_machine_status)
(*restore_machine_status) (p);
/* Finish doing put_var_into_stack for any of our variables /* Finish doing put_var_into_stack for any of our variables
which became addressable during the nested function. */ which became addressable during the nested function. */
{ {
......
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