This is an archive of the discontinued LLVM Phabricator instance.

Add single stepping logic for linux arm
ClosedPublic

Authored by tberghammer on Apr 10 2015, 9:13 AM.

Details

Summary

Add single stepping logic for linux arm

Linux arm don't support hardware stepping (neither mismatch
breakpoints). This patch implement signle stepping with doing a software
emulation of the next instruction and then setting a temporary
breakpoint at the address where the thread will stop next.

Diff Detail

Repository
rL LLVM

Event Timeline

tberghammer retitled this revision from to Add single stepping logic for linux arm.
tberghammer updated this object.
tberghammer edited the test plan for this revision. (Show Details)
tberghammer added reviewers: clayborg, omjavaid, ovyalov.
tberghammer added a subscriber: Unknown Object (MLST).
clayborg accepted this revision.Apr 10 2015, 10:58 AM
clayborg edited edge metadata.

Looks good. It would be great to get this into a common place so other plug-ins could re-use this code in the future. Make sure you take into account the Thumb IT issues I described in http://reviews.llvm.org/D8975 and also have a test where you single step through a Thumb IT instruction to make sure you behave correctly for all cases.

This revision is now accepted and ready to land.Apr 10 2015, 10:58 AM
This revision was automatically updated to reflect the committed changes.