libunwind-devel
[Top][All Lists]
Advanced

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

Re: [Libunwind-devel] status of ARM support


From: Sven Neumann
Subject: Re: [Libunwind-devel] status of ARM support
Date: Mon, 02 Aug 2010 13:20:11 +0200

On Thu, 2010-07-22 at 12:12 -0700, Arun Sharma wrote:
> On Thu, Jul 22, 2010 at 12:08 PM, Sven Neumann <address@hidden> wrote:
> > So I'd like to know what the current state of the support for ARM is. Is
> > what I am trying to do supposed to work? Should I be trying a particular
> > branch perhaps?
> 
> I'll let ARM developers comment on this. Some generic debugging tips:
> 
> ./configure --enable-debug
> UNW_DEBUG_LEVEL=xx your-test
> 
> where xx is a bitmask (such as 15).
> 
> I suspect that you'll need to do:
> 
> ./configure --enable-debug-frame
> 
> on ARM - based on the patches that were posted to the list earlier.

I've tried that now, unfortunately without much success. Here's the
output from a simple test application with debug output enabled. As you
can see, dwarf_step() fails and then the code crashes in the alternative
approach using the frame chain:


 >_ULarm_step: (cursor=0xbeb7f700)
                >get_rs_cache: get_rs_cache: acquiring lock
              >_ULarm_dwarf_find_proc_info: looking for IP=0x400406b7
               >callback: checking ./test-trace, base=0x0)
               >callback: checking /usr/lib/libraumfeld-1.0.so.0,
base=0x4000e000)
               >_ULarm_dwarf_find_debug_frame: Trying to
find .debug_frame info->dlpi_name=/usr/lib/libraumfeld-1.0.so.0
    >locate_debug_info: calculated bounds of 4000e000-40052758 for
'/usr/lib/libraumfeld-1.0.so.0'
    >load_debug_frame: opened file '/usr/lib/libraumfeld-1.0.so.0'.
Section header at offset 250444
    >load_debug_frame: loading string table of size 276
               >_ULarm_dwarf_find_debug_frame: loaded .debug_frame
               >_ULarm_dwarf_find_debug_frame: zero-length .debug_frame
               >callback: checking /usr/lib/libgio-2.0.so.0,
base=0x40404000)
               >callback: checking /usr/lib/libz.so.1, base=0x4049c000)
               >callback: checking /usr/lib/libgobject-2.0.so.0,
base=0x404b6000)
               >callback: checking /usr/lib/libgmodule-2.0.so.0,
base=0x404ef000)
               >callback: checking /lib/libdl.so.0, base=0x404fa000)
               >callback: checking /usr/lib/libgthread-2.0.so.0,
base=0x40505000)
               >callback: checking /lib/libpthread.so.0,
base=0x40511000)
               >callback: checking /usr/lib/libglib-2.0.so.0,
base=0x4052b000)
               >callback: checking /usr/lib/libintl.so.8,
base=0x40615000)
               >callback: checking /usr/lib/libiconv.so.2,
base=0x40625000)
               >callback: checking /usr/lib/libunwind-arm.so.7,
base=0x4070a000)
               >callback: checking /usr/lib/libunwind.so.7,
base=0x40740000)
               >callback: checking /lib/libc.so.0, base=0x4077b000)
               >callback: checking /lib/libm.so.0, base=0x40814000)
               >callback: checking /lib/libgcc_s.so.1, base=0x4082e000)
               >callback: checking /lib/ld-uClibc.so.0, base=0x40000000)
              >_ULarm_dwarf_find_proc_info: IP=0x400406b7 not found
                >put_rs_cache: unmasking signals/interrupts and
releasing lock
               >_ULarm_dwarf_step: returning -10
 >_ULarm_step: dwarf_step()=-10
             >_ULarm_step: dwarf_step() failed (ret=0), trying
frame-chain
caught signal 11





reply via email to

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