bug-binutils
[Top][All Lists]
Advanced

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

[Bug binutils/9774] New: objdump -d loops infinitely


From: raj dot khem at gmail dot com
Subject: [Bug binutils/9774] New: objdump -d loops infinitely
Date: 21 Jan 2009 19:26:58 -0000

With the attached testcase on mips64-elf toolchain when disassambling a o32
application which crosses addresses from 0x7fffffff to 0x80000000 objdump goes
haywire and keep on disassmbling symbol at 0x8000000.

Debugging it a bit I figured that the symbol values which are unsigned long long
are read in as signed long long at bfd_elf32_swap_symbol_in() function because
sign_extend_vma is set for mips in bfd. All the address calculations in objdump
are done unsigned for addresses and when it encounters a symbol with value
0x80000000 bfd sign extends it before putting this value into the asymbol
structure and it becomes 0xffffffff80000000 which is a large unsigned number and
all adress comparsions which involve the sybmol value start to fail.

-- 
           Summary: objdump -d loops infinitely
           Product: binutils
           Version: 2.17
            Status: NEW
          Severity: normal
          Priority: P2
         Component: binutils
        AssignedTo: unassigned at sources dot redhat dot com
        ReportedBy: raj dot khem at gmail dot com
                CC: bug-binutils at gnu dot org
 GCC build triplet: i386-redhat-linux
  GCC host triplet: i386-redhat-linux
GCC target triplet: mips64-elf


http://sourceware.org/bugzilla/show_bug.cgi?id=9774

------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.




reply via email to

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