Hi,
Sorry for being late. My laptop died on Monday morning and I'm
in the
middle of setting up a new one.
Libunwind on ARM can unwind the stack via:
1) DWARF information (-g)
2) ARM specific unwind tables (-f-unwind-tables)
3) APCS frame parsing (-mapcs-frame)
Thanks. If none of these options are specified, will it still be able to
unwind. I guess this is the case with my main application.
By default libunwind looks at the DWARF info first because it's more
accurate and if that fails libunwind will use the ARM specific
unwind
tables. In case everything fails it falls back on APCS frame
parsing.
Since modern ARM-Linux systems are using the ARM EABI rather
than the
APCS this code won't help there. But from looking at the sources
I could
imagine that the APCS parsing could cause crashes (just a wild
guess).
Could you try running with the environment variable
UNW_ARM_METHOD_DWARF
set to "5" and check if it still crashes?
Sorry, I meant:
UNW_ARM_UNWIND_METHOD=5
I just tried this option and it still crashes :-(. I am yet to try the
option of having "-funwind-tables" with my main app because with this
option, my unit test app worked fine. I will update you all soon on
that. Got tied up with another issue :(