summaryrefslogtreecommitdiff
path: root/lib/unwarminder (follow)
Commit message (Collapse)AuthorAge
* unwinder: in get__sp(), use the more correct "msr cpsr_c, ..." formAmaury Pouly2016-12-12
| | | | Change-Id: I9cfdca80536fc9fb6e8983a81219ccdf5c0b3c42
* ARM unwinder for thumb: Fix broken MOV opcodeThomas Jarosch2015-01-12
| | | | | | | | | | | | | | | | | The origin of the register value was never moved in the desired register state due to a typo ('rhs' vs. 'rhd'). While looking at the code, I noticed the action taken for the register value is another copy'n'paste error from the ADD opcode above -> it added to the register value instead of MOVing the current value. Patch submitted upstream. cppcheck reported: [lib/unwarminder/unwarm_thumb.c:473]: (warning) Redundant assignment of 'state.regData[rhd].o' to itself. Change-Id: I78cdbf37a191007a3bddbaa350b906dbce2fe671
* Fix redThomas Jarosch2015-01-12
| | | | Change-Id: Ia7565dac0f6b9703a5dfff723167620deb218bc3
* ARM unwinder for thumb: Fix broken SUB opcodeThomas Jarosch2015-01-12
| | | | | | | Detected while looking through the code. Patch submitted upstream. Change-Id: I7ebe7b5f5947cf3df1b054d545dba92829f21b99
* ARM unwinder: Add missing 'register' variable in debug outputThomas Jarosch2015-01-12
| | | | | | | Also fix a wrong format specifier for an unsigned variable. Detected by cppcheck, patch submitted upstream. Change-Id: I9b84d91eeb242ed77b53ecc16252c5b35190bb9f
* ARM unwinder: Add missing va_end() call.Thomas Jarosch2015-01-12
| | | | | | Detected by cppcheck, patch submitted upstream. Change-Id: Ieeec9d2e7e2c22d64c94936958f5a4ff02d3548b
* Add newlines at the end of the fileThomas Jarosch2014-12-17
| | | | | | Quiet maemo's gcc 4.2.1 compiler warning. Change-Id: I35dfb2c0cb269b05edd62adf71fe0308a4b9ba5b
* Remove unused return value variable in lib/unwarminder/backtrace.cMichael Sevakis2014-08-25
| | | | | | Stop the Android warning about it Change-Id: I2f01220004f128befaa5757786b8de174566cbb5
* Fix return address when data_abort_handler skips faulting instruction.Boris Gjenero2013-05-23
| | | | | | | | | When writing a value to PC, execution continues at that location, so subtracting 4 returns to the next instruction. Previously, two instructions after the faulting instruction were being skipped, causing safe_read functions to return true even if a data abort happened. Change-Id: I3fd02d54646323ea2050d0504e38f6d22f09c749
* unwarminder: make SP and PC visible on smaller screensMarcin Bukat2012-09-05
| | | | Change-Id: I78c0e6edb1ad097154885b9fa93d74616047cbc1
* unwarminder: fix data_abort_handler (wrong address to UIE)Amaury Pouly2012-06-07
| | | | Change-Id: I060735363f2e408c42a8e11ac1f31dc96e3cb2d6
* Use shorter lines to show an ARM backtrace (so address fit on the clip zip ↵Bertrik Sikken2012-05-28
| | | | | | screen) Change-Id: Ib36c09a44230fbaaa119f756367f98bdc7756983
* arm: implement safe reads by intercepting the data abort handler.Amaury Pouly2012-04-06
| | | | | | | | | | | Implement functions to read from a memory location and indicate failure in case this is not possible. Since we do not have a MMU, intercept the data abort handler and simply return when the abort comes from the safe read routines. Change-Id: I08f2e59898dcac893319a8150d4cf626f3adabbd Reviewed-on: http://gerrit.rockbox.org/207 Reviewed-by: Marcin Bukat <marcin.bukat@gmail.com>
* arm: fix get_sp (missing return)Amaury Pouly2012-04-04
| | | | | | | | | __get_sp is missing a return! I don't know how it ever worked. Use "bx lr" since it works in all cases (armp and thumb). Change-Id: I26011db333a8a5f96276be83e18da7507c501c38 Reviewed-on: http://gerrit.rockbox.org/206 Reviewed-by: Marcin Bukat <marcin.bukat@gmail.com>
* build system: unify/simplify library handling a bit.Thomas Martitz2012-03-26
| | | | | | | libs in $ROOT/lib now add to $(CORE_LIBS) and $(EXTRA_LIBS) and are automatically linked by the core and codecs/plugins respectively. Change-Id: Iff482c792a8c8142718f6a16a450c6e2f1497c9a
* Fix sanity check in UnwStartThumb() using the wrong registerThomas Jarosch2012-03-02
| | | | | | | | | | | cppcheck reported: [lib/unwarminder/unwarm_thumb.c:399] -> [lib/unwarminder/unwarm_thumb.c:399]: (style) Same expression on both sides of '&&'. Patch will also be sent to the upstream project. Change-Id: I57033f290135f4dc09ac7e9b07c31461bc5b471a Reviewed-on: http://gerrit.rockbox.org/157 Reviewed-by: Thomas Jarosch <tomj@simonv.com>
* Arm stack unwinderMarcin Bukat2012-02-22
Simplified stack unwinder for ARM. This is port of http://www.mcternan.me.uk/ArmStackUnwinding/ backtrace() is called from UIE() on native targets and from panicf() on both native and ARM RaaA. Change-Id: I8e4b3c02490dd60b30aa372fe842d193b8929ce0