bug-binutils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug binutils/15935] Inconsistent results in addr2line with repeated add


From: amodra at gmail dot com
Subject: [Bug binutils/15935] Inconsistent results in addr2line with repeated addresses
Date: Fri, 06 Sep 2013 10:50:49 +0000

https://sourceware.org/bugzilla/show_bug.cgi?id=15935

Alan Modra <amodra at gmail dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|WAITING                     |RESOLVED
                 CC|                            |amodra at gmail dot com
         Resolution|---                         |INVALID

--- Comment #3 from Alan Modra <amodra at gmail dot com> ---
Your debug info is broken.

readelf -wl will show you a sequence of lines that happens to cover
GridExchange.cxx starting

  Advance PC by 1056 to 0x420
  Advance Line by 488 to 489
  Copy

and finishing with

  Advance PC by 29 to 0xea4
  Advance Line by 4 to 477
  Copy
  Special opcode 98: advance Address by 24 to 0xebc and Line by 1 to 478
  Special opcode 98: advance Address by 24 to 0xed4 and Line by 1 to 479
  Extended opcode 2: set Address to 0x432e70
  Extended opcode 1: End of Sequence

The first "Advance PC" and that "Extended opcode 2" are setting the address
range of this chunk of line info to 0x420 to 0x432e70.  It's fairly clear to me
that the start PC is wrong, but this range happens to cover your address of
interest, 0x40b746.  So addr2line is correct in returning GridExchange.cxx.

The reason addr2line returns a different result the second time you ask for
0x40b746 is simply due to caching your debug info and searching it in a
different order.

-- 
You are receiving this mail because:
You are on the CC list for the bug.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]