Improve backtrace by using ARM exception tables
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Linaro GDB |
Fix Released
|
Medium
|
Ulrich Weigand |
Bug Description
In the absence of debug information (DWARF CFI), GDB falls back to prologue parsing to unwind the stack. However, if symbol information is missing as well (which is the case on Ubuntu unless debuginfo packages are installed), prologue parsing may not work since GDB is unable to even determine where the function starts.
On other platforms, GDB will use *exception* unwind data (from .eh_frame) to still be able to unwind in some cases. However, ARM does not use the DWARF-formatted .eh_frame, but instead uses sections .ARM.exidx and .ARM.extbl in a format specified by the ARM ABI.
In some cases, it would be possible for GDB to extract unwind information from those tables as well, but it currently does not do so.
Related branches
Changed in gdb-linaro: | |
status: | New → Confirmed |
status: | Confirmed → In Progress |
importance: | Undecided → Medium |
assignee: | nobody → Ulrich Weigand (uweigand) |
tags: | added: testsuite |
tags: | removed: testsuite |
Changed in gdb-linaro: | |
milestone: | none → 7.2-2011.02-0 |
Changed in gdb-linaro: | |
status: | Fix Committed → Fix Released |
Fix checked in to Linaro GDB 7.2 for 2011.02 release.