aboutsummaryrefslogtreecommitdiff
path: root/gcc/df-scan.c
diff options
context:
space:
mode:
authorjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>2013-02-27 21:35:06 +0000
committerjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>2013-02-27 21:35:06 +0000
commit73dcdb848e64cc752f9217a630d67153322b8e47 (patch)
tree27492f4f83c2fe3ba4c29aacfee938d3a62a7f68 /gcc/df-scan.c
parente4898110e07844ca18a6f978991e2b8f6b41d848 (diff)
PR middle-end/56461
* df-scan.c (df_insn_delete): Use df_scan_free_mws_vec before pool_free. (df_insn_rescan_debug_internal): Use df_scan_free_mws_vec before overwriting it. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@196321 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/df-scan.c')
-rw-r--r--gcc/df-scan.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/df-scan.c b/gcc/df-scan.c
index 2928776dfcf..931fa2c7e48 100644
--- a/gcc/df-scan.c
+++ b/gcc/df-scan.c
@@ -1153,6 +1153,7 @@ df_insn_delete (basic_block bb, unsigned int uid)
df_ref_chain_delete (insn_info->defs);
df_ref_chain_delete (insn_info->uses);
df_ref_chain_delete (insn_info->eq_uses);
+ df_scan_free_mws_vec (insn_info->mw_hardregs);
}
pool_free (problem_data->insn_pool, insn_info);
DF_INSN_UID_SET (uid, NULL);
@@ -1332,6 +1333,7 @@ df_insn_rescan_debug_internal (rtx insn)
df_ref_chain_delete (insn_info->defs);
df_ref_chain_delete (insn_info->uses);
df_ref_chain_delete (insn_info->eq_uses);
+ df_scan_free_mws_vec (insn_info->mw_hardregs);
insn_info->defs = df_null_ref_rec;
insn_info->uses = df_null_ref_rec;