]> Git Repo - binutils.git/commitdiff
2012-05-03 Tristan Gingold <[email protected]>
authorTristan Gingold <[email protected]>
Thu, 3 May 2012 12:49:22 +0000 (12:49 +0000)
committerTristan Gingold <[email protected]>
Thu, 3 May 2012 12:49:22 +0000 (12:49 +0000)
        * dwarf2.c (decode_line_info): Ignore
        DW_LNE_HP_source_file_correlation.

bfd/ChangeLog
bfd/dwarf2.c

index 45fcf5cd70b8db2788bfef8bb7f30002d0577355..4167a0df573266d7652053fe3edff398543c842b 100644 (file)
@@ -1,3 +1,8 @@
+2012-05-03  Tristan Gingold  <[email protected]>
+
+       * dwarf2.c (decode_line_info): Ignore
+       DW_LNE_HP_source_file_correlation.
+
 2012-05-01  Nick Clifton  <[email protected]>
 
        PR binutils/13121
index 51e27b448cde1a29e8f1633389886c0bb941a824..f7d5d4a1132982a9b16984a9691b2b607d87f251 100644 (file)
@@ -1401,6 +1401,7 @@ decode_line_info (struct comp_unit *unit, struct dwarf2_debug *stash)
   unsigned int i, bytes_read, offset_size;
   char *cur_file, *cur_dir;
   unsigned char op_code, extended_op, adj_opcode;
+  unsigned int exop_len;
   bfd_size_type amt;
 
   if (! read_section (abfd, &stash->debug_sections[debug_line],
@@ -1604,8 +1605,8 @@ decode_line_info (struct comp_unit *unit, struct dwarf2_debug *stash)
          else switch (op_code)
            {
            case DW_LNS_extended_op:
-             /* Ignore length.  */
-             line_ptr += 1;
+              exop_len = read_unsigned_leb128 (abfd, line_ptr, &bytes_read);
+             line_ptr += bytes_read;
              extended_op = read_1_byte (abfd, line_ptr);
              line_ptr += 1;
 
@@ -1658,6 +1659,9 @@ decode_line_info (struct comp_unit *unit, struct dwarf2_debug *stash)
                  (void) read_unsigned_leb128 (abfd, line_ptr, &bytes_read);
                  line_ptr += bytes_read;
                  break;
+                case DW_LNE_HP_source_file_correlation:
+                  line_ptr += exop_len - 1;
+                  break;
                default:
                  (*_bfd_error_handler) (_("Dwarf Error: mangled line number section."));
                  bfd_set_error (bfd_error_bad_value);
This page took 0.03468 seconds and 4 git commands to generate.