]> gcc.gnu.org Git - gcc.git/commitdiff
function.c (free_after_compilation): Call insn_locators_free.
authorJan Hubicka <jh@suse.cz>
Thu, 11 Sep 2008 12:31:40 +0000 (14:31 +0200)
committerJan Hubicka <hubicka@gcc.gnu.org>
Thu, 11 Sep 2008 12:31:40 +0000 (12:31 +0000)
* function.c (free_after_compilation): Call insn_locators_free.
* cfglayout.c (insn_locators_free): New function.
* rtl.h (insn_locators_free): Declare.

From-SVN: r140279

gcc/ChangeLog
gcc/cfglayout.c
gcc/function.c
gcc/rtl.h

index 12eb46c93922284c009b5d7402497a64553bc38b..6eb9c86066777138b5b941783be61f91bcfa3c30 100644 (file)
@@ -1,3 +1,9 @@
+2008-09-11  Jan Hubicka  <jh@suse.cz>
+
+       * function.c (free_after_compilation): Call insn_locators_free.
+       * cfglayout.c (insn_locators_free): New function.
+       * rtl.h (insn_locators_free): Declare.
+
 2008-09-11  Jan Hubicka  <jh@suse.cz>
 
        * ifcvt.c (check_cond_move_block): Make regs argument pointer to vector pointer.
index e4049d66465419c1df64873ef4b7c6e534900d58..b4ca49f432491b0872363b295614fec6982d0f9b 100644 (file)
@@ -271,6 +271,19 @@ insn_locators_finalize (void)
   curr_rtl_loc = -1;
 }
 
+/* Allocate insn locator datastructure.  */
+void
+insn_locators_free (void)
+{
+  prologue_locator = epilogue_locator = 0;
+
+  VEC_free (int, heap, block_locators_locs);
+  VEC_free (tree,gc, block_locators_blocks);
+  VEC_free (int, heap, locations_locators_locs);
+  VEC_free (location_t, heap, locations_locators_vals);
+}
+
+
 /* Set current location.  */
 void
 set_curr_insn_source_location (location_t location)
index 7cff900201420cb654ede4d13b850a5300de0aee..412e6fa9af0cdcb5c6dacf25a9ac047d8fb60cde 100644 (file)
@@ -286,6 +286,7 @@ free_after_compilation (struct function *f)
   f->cfg = NULL;
 
   regno_reg_rtx = NULL;
+  insn_locators_free ();
 }
 \f
 /* Return size needed for stack frame based on slots so far allocated.
index 5d2e793e2dce2b7f57ff5caf6eeece7b55908ec0..fd855e9c6500c2f6e5c14f126271651ce303c8a0 100644 (file)
--- a/gcc/rtl.h
+++ b/gcc/rtl.h
@@ -2357,6 +2357,7 @@ extern const struct rtl_hooks general_rtl_hooks;
 #define gen_lowpart rtl_hooks.gen_lowpart
 
 extern void insn_locators_alloc (void);
+extern void insn_locators_free (void);
 extern void insn_locators_finalize (void);
 extern void set_curr_insn_source_location (location_t);
 extern void set_curr_insn_block (tree);
This page took 0.1128 seconds and 5 git commands to generate.