DW_LNE_end_sequence indicates that the address points to the byte
authorIan Lance Taylor <iant@google.com>
Fri, 16 Nov 2007 06:47:53 +0000 (06:47 +0000)
committerIan Lance Taylor <iant@google.com>
Fri, 16 Nov 2007 06:47:53 +0000 (06:47 +0000)
*after* the current target sequence.

gold/dwarf_reader.cc

index e3e1963..af69449 100644 (file)
@@ -418,6 +418,10 @@ Sized_dwarf_line_info<size, big_endian>::process_one_opcode(
         switch (extended_op)
           {
           case elfcpp::DW_LNE_end_sequence:
+            // This means that the current byte is the one immediately
+            // after a set of instructions.  Record the current line
+            // for up to one less than the current address.
+            lsm->address -= 1;
             lsm->end_sequence = true;
             *len = oplen;
             return true;