On 04/20/2016 12:22 AM, tbsaunde+...@tbsaunde.org wrote:
From: Trevor Saunders <tbsaunde+...@tbsaunde.org>

gcc/ChangeLog:

2016-04-19  Trevor Saunders  <tbsaunde+...@tbsaunde.org>

        * var-tracking.c (struct adjust_mem_data): Make side_effects a vector.
        (adjust_mems): Adjust.
        (adjust_insn): Likewise.
        (prepare_call_arguments): Likewise.
---
  gcc/var-tracking.c | 30 +++++++++++-------------------
  1 file changed, 11 insertions(+), 19 deletions(-)

diff --git a/gcc/var-tracking.c b/gcc/var-tracking.c
index 9f09d30..7fc6ed3 100644
--- a/gcc/var-tracking.c
+++ b/gcc/var-tracking.c
@@ -926,7 +926,7 @@ struct adjust_mem_data
    bool store;
    machine_mode mem_mode;
    HOST_WIDE_INT stack_adjust;
-  rtx_expr_list *side_effects;
+  auto_vec<rtx> side_effects;
  };
Is auto_vec what you really want here? AFAICT this object is never destructed, so we're not releasing the memory. Am I missing something here?


Jeff

Reply via email to