re PR rtl-optimization/25739 (Memory leak in bt_load.c(augment_live_range))
authorUttam Pawar <uttamp@us.ibm.com>
Tue, 14 Mar 2006 00:24:54 +0000 (00:24 +0000)
committerRoger Sayle <sayle@gcc.gnu.org>
Tue, 14 Mar 2006 00:24:54 +0000 (00:24 +0000)
2006-03-13  Uttam Pawar  <uttamp@us.ibm.com>

PR rtl-optimization/25739
* bt-load.c (augment_live_range): Free tos pointer.

* gensupport.c (identify_predicable_attribute): Free
p_false pointer.
* gcov.c (create_file_names): Free name pointer.

From-SVN: r112039

gcc/ChangeLog
gcc/bt-load.c
gcc/gcov.c
gcc/gensupport.c

index 8d28b2f835c9c4ad9b1484c8e45ac26d9b8cfcac..fdc7531b53ecf7dcd8dc00ef2bb994a98eb5227e 100644 (file)
@@ -1,3 +1,12 @@
+2006-03-13  Uttam Pawar  <uttamp@us.ibm.com>
+
+       PR rtl-optimization/25739
+       * bt-load.c (augment_live_range): Free tos pointer.
+
+       * gensupport.c (identify_predicable_attribute): Free
+       p_false pointer.
+       * gcov.c (create_file_names): Free name pointer.
+
 2006-03-13  Roger Sayle  <roger@eyesopen.com>
 
        PR middle-end/26557
index 853155526f7dafb257f7230d7bfb2c840918a723..70975e4318d72eea6eb440e466e1989f707206f5 100644 (file)
@@ -1,5 +1,6 @@
 /* Perform branch target register load optimizations.
-   Copyright (C) 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
+   Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006
+   Free Software Foundation, Inc.
 
 This file is part of GCC.
 
@@ -911,6 +912,7 @@ augment_live_range (bitmap live_range, HARD_REG_SET *btrs_live_in_range,
        {
          if (full_range)
            IOR_HARD_REG_SET (*btrs_live_in_range, btrs_live[new_bb->index]);
+         free (tos);
          return;
        }
       *tos++ = new_bb;
index 78f0ad495e7940502c916cf45bd4f6e6354811fa..d8cc9bd0927dd32a08ffe297d131a9a9457338e4 100644 (file)
@@ -658,6 +658,7 @@ create_file_names (const char *file_name)
   strcpy (da_file_name, name);
   strcpy (da_file_name + length, GCOV_DATA_SUFFIX);
 
+  free (name);
   return;
 }
 
index a880b111c0fd7449377e2d76a5019805037ddc0d..16878b8cf09d768c0cd2e9505c8856cc5f4e46e2 100644 (file)
@@ -1,5 +1,5 @@
 /* Support routines for the various generation passes.
-   Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005
+   Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006
    Free Software Foundation, Inc.
 
    This file is part of GCC.
@@ -468,6 +468,8 @@ identify_predicable_attribute (void)
       message_with_line (elem->lineno,
                         "attribute `predicable' is not a boolean");
       errors = 1;
+      if (p_false)
+        free (p_false);
       return;
     }
   p_true[-1] = '\0';
@@ -485,12 +487,16 @@ identify_predicable_attribute (void)
       message_with_line (elem->lineno,
                         "attribute `predicable' cannot be const");
       errors = 1;
+      if (p_false)
+       free (p_false);
       return;
 
     default:
       message_with_line (elem->lineno,
                         "attribute `predicable' must have a constant default");
       errors = 1;
+      if (p_false)
+       free (p_false);
       return;
     }
 
@@ -505,6 +511,9 @@ identify_predicable_attribute (void)
                         value);
       errors = 1;
     }
+
+  if (p_false)
+    free (p_false);
 }
 
 /* Return the number of alternatives in constraint S.  */