On 06/09/2019 09:01, Chris Johns wrote:
On 6/9/19 4:20 pm, Sebastian Huber wrote:
Hello,

I tried the rtems-addr2line on ARM and SPARC. On SPARC it seems to work fine,
however, on ARM I get this:

rtems-addr2line -e build/arm-rtems5-xilinx_zynq_a9_qemu-everything/media01.exe
0x0000135a
/home/EB/sebastian_h/git-rtems-5/c/src/lib/libbsp/arm/xilinx-zynq/../../../../../../bsps/arm/shared/irq/irq-gic.c:264


addr2line -e build/arm-rtems5-xilinx_zynq_a9_qemu-everything/media01.exe 
0000135a
/scratch/git-rtems-libbsd/build/arm-rtems5-xilinx_zynq_a9_qemu-everything/../../testsuite/include/rtems/bsd/test/default-network-init.h:179


The GNU tool is right. It is also considerably faster.
I would hope it is faster and exact. It has had many years of work on it,
written in C and not a means to test a C++ framework so we can grow an
ecosystem. I have stated its purpose before. I am perplexed by the intent of
this statement.

If you want to compare performance I suggest you try the elftools one? There is
one. It is not built because GNU provides one and good one.

Also be-careful as the exec call is not as fast as Linux on all the hosts we
support.

That the GNU tool is faster was just an observation.

Do we have a working library solution to get from an address to the source line/function? I don't have time to debug the DWARF support code at the moment.

I have a working solution using "addr2line" and rld::process::execute().

I know you don't like to use boost, but it has also a process support library:

https://www.boost.org/doc/libs/1_71_0/doc/html/process.html

--
Sebastian Huber, embedded brains GmbH

Address : Dornierstr. 4, D-82178 Puchheim, Germany
Phone   : +49 89 189 47 41-16
Fax     : +49 89 189 47 41-09
E-Mail  : sebastian.hu...@embedded-brains.de
PGP     : Public key available on request.

Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.
_______________________________________________
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel

Reply via email to