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

            Bug ID: 16433
           Summary: objdump -l reports wrong line numbers
           Product: binutils
           Version: 2.22
            Status: NEW
          Severity: normal
          Priority: P2
         Component: binutils
          Assignee: unassigned at sourceware dot org
          Reporter: andi-bz at firstfloor dot org

objdump --version
GNU objdump (GNU Binutils; openSUSE 12.2) 2.22

Simple file:

     1    
     2    volatile a = 10000, b = 100000, c;
     3    
     4    __attribute__((noinline)) f2()
     5    {
     6        c = a / b;
     7    }


Dumping the compiled simple file with objdump -Sl I get

00000000004004ec <f2>:
f2():
/home/ak/hle/tsrc/tcall.c:5

volatile a = 10000, b = 100000, c;

__attribute__((noinline)) f2()
{
  4004ec:       55                      push   %rbp
  4004ed:       48 89 e5                mov    %rsp,%rbp
tcall.c:6
        c = a / b;
  4004f0:       8b 05 22 0b 20 00       mov    0x200b22(%rip),%eax        #
601018 <a>
  4004f6:       8b 15 20 0b 20 00       mov    0x200b20(%rip),%edx        #  
60101c <b>
  4004fc:       89 55 fc                mov    %edx,-0x4(%rbp)


The problem is the tcall.c:5. The first empty line it shows is actually line 1,
not 5. Line 5 is the first executable statement. But when showing context it
should adjust the line nr to the context offset.

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

_______________________________________________
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils

Reply via email to