2011-03-09 Michael Snyder <msnyder@vmware.com>
authorMichael Snyder <msnyder@vmware.com>
Thu, 10 Mar 2011 00:52:09 +0000 (00:52 +0000)
committerMichael Snyder <msnyder@vmware.com>
Thu, 10 Mar 2011 00:52:09 +0000 (00:52 +0000)
* dwarf2dbg.c (out_file_list): Free malloced 'dir'.
(out_debug_info): Free malloced 'dirname' and 'comp_dir'.
(emit_fixed_inc_line_addr): Assign instead of conditional
in assert.

gas/ChangeLog
gas/dwarf2dbg.c

index cb5cfa67b0e0979938aa1128769bc1e48d24947e..bd8600d0ecd37f93b50e9787ae4162d544cd6b99 100644 (file)
@@ -1,3 +1,10 @@
+2011-03-09  Michael Snyder  <msnyder@vmware.com>
+
+       * dwarf2dbg.c (out_file_list): Free malloced 'dir'.
+       (out_debug_info): Free malloced 'dirname' and 'comp_dir'.
+       (emit_fixed_inc_line_addr): Assign instead of conditional
+       in assert.
+
 2011-03-05  H.J. Lu  <hongjiu.lu@intel.com>
 
        * config/obj-elf.c (elf_frob_symbol): Mention symbol name in
index 587920f7d3be840a62d64de35dd694f44ab5b2ef..92fc5705ef1b643a31dc7cd4cd279fc9fa1571e3 100644 (file)
@@ -1080,7 +1080,7 @@ emit_fixed_inc_line_addr (int line_delta, addressT addr_delta, fragS *frag,
       symbolS *to_sym;
       expressionS exp;
 
-      gas_assert (pexp->X_op = O_subtract);
+      gas_assert (pexp->X_op == O_subtract);
       to_sym = pexp->X_add_symbol;
 
       *p++ = DW_LNS_extended_op;
@@ -1328,6 +1328,7 @@ out_file_list (void)
       size = strlen (dir) + 1;
       cp = frag_more (size);
       memcpy (cp, dir, size);
+      xfree ((char *) dir);
     }
   /* Terminate it.  */
   out_byte ('\0');
@@ -1684,6 +1685,7 @@ out_debug_info (segT info_seg, segT abbrev_seg, segT line_seg, segT ranges_seg)
       memcpy (p, dirname, len);
       INSERT_DIR_SEPARATOR (p, len);
 #endif
+      xfree ((char *) dirname);
     }
   len = strlen (files[1].filename) + 1;
   p = frag_more (len);
@@ -1694,6 +1696,7 @@ out_debug_info (segT info_seg, segT abbrev_seg, segT line_seg, segT ranges_seg)
   len = strlen (comp_dir) + 1;
   p = frag_more (len);
   memcpy (p, comp_dir, len);
+  xfree ((char *) comp_dir);
 
   /* DW_AT_producer */
   sprintf (producer, "GNU AS %s", VERSION);