aboutsummaryrefslogtreecommitdiff
path: root/gcc/function.c
diff options
context:
space:
mode:
authorRichard Kenner <kenner@gcc.gnu.org>1995-12-15 08:09:24 -0500
committerRichard Kenner <kenner@gcc.gnu.org>1995-12-15 08:09:24 -0500
commitbc0ebdf9ee04dc9af3f893e0380852b54ac94164 (patch)
tree0c608aebfe350011f73e8ba5694f616b54921155 /gcc/function.c
parent1d269b0cdc000f4b68dc195e4c60afabf680cd81 (diff)
downloadgcc-bc0ebdf9ee04dc9af3f893e0380852b54ac94164.zip
gcc-bc0ebdf9ee04dc9af3f893e0380852b54ac94164.tar.gz
gcc-bc0ebdf9ee04dc9af3f893e0380852b54ac94164.tar.bz2
(init_temp_slots): New function.
(init_function_start): Code moved to new function and called here. From-SVN: r10733
Diffstat (limited to 'gcc/function.c')
-rw-r--r--gcc/function.c17
1 files changed, 13 insertions, 4 deletions
diff --git a/gcc/function.c b/gcc/function.c
index 3433e19..6fd2bb7 100644
--- a/gcc/function.c
+++ b/gcc/function.c
@@ -1207,6 +1207,17 @@ pop_temp_slots ()
temp_slot_level--;
}
+
+/* Initialize temporary slots. */
+
+void
+init_temp_slots ()
+{
+ /* We have not allocated any temporaries yet. */
+ temp_slots = 0;
+ temp_slot_level = 0;
+ target_temp_slot_level = 0;
+}
/* Retroactively move an auto variable from a register to a stack slot.
This is done when an address-reference to the variable is seen. */
@@ -4826,10 +4837,8 @@ init_function_start (subr, filename, line)
/* No RTL_EXPRs in this function yet. */
rtl_expr_chain = 0;
- /* We have not allocated any temporaries yet. */
- temp_slots = 0;
- temp_slot_level = 0;
- target_temp_slot_level = 0;
+ /* Set up to allocate temporaries. */
+ init_temp_slots ();
/* Within function body, compute a type's size as soon it is laid out. */
immediate_size_expand++;