|Summary:||[tracker] fstep - single step a program printing instructions, and possible file/line information et.al.|
|Product:||frysk||Reporter:||Andrew Cagney <cagney>|
|Severity:||normal||CC:||qiyaoltc, woodzltc, zhengyzy|
|Bug Depends on:||3752, 3759, 3760, 3762, 5877, 6591, 3761, 5684|
Description Andrew Cagney 2006-10-13 14:16:09 UTC
fstep <program> <args> ... Runs <program> printing each instruction as it is executed.
Comment 1 Andrew Cagney 2006-10-19 17:14:52 UTC
Once this is basically working, state should change to suspended, and bugs against this made blockers to it.
Comment 2 Mark Wielaard 2006-10-31 13:17:31 UTC
Created attachment 1392 [details] fstep program Attached a simple start of fstep.
Comment 3 Mark Wielaard 2006-12-18 14:06:47 UTC
Initial fstep checked in.
Comment 4 Mark Wielaard 2006-12-18 14:07:53 UTC
The following things can/should be improved: - It is currently build right on top of the Instruction TaskObserver. It might be better to build it on top of the new rt framework. The rt framework can probably also handle stepping over locking sequences like on ppc (lwarx/stwcx). - It only steps the main task. Plumbing is in place to track other Tasks, but nothing is connected to that yet. - Maybe merge it completely with ftrace? - It is partially so slow because it accesses the Task memory for every disassambly. Maybe that can be cached? Although instruction stepping is just slow in general. An alternative could be combining stepping with breakpoints set on "interesting functions". Or only stepping while in the main program map, and not in any of the shared library maps? - It could give the name of the memory map the PC is currently in. - It could even give the source/line-number if available.
Comment 5 Mark Wielaard 2008-04-17 21:49:54 UTC
No longer working on fstep. As pointed out in comment #4 it would be nice to fold this into ftrace.
Comment 6 Andrew Cagney 2008-06-11 20:04:40 UTC