Bug 3364

Summary: [tracker] fstep - single step a program printing instructions, and possible file/line information et.al.
Product: frysk Reporter: Andrew Cagney <cagney>
Component: generalAssignee: Unassigned <frysk-bugzilla>
Status: SUSPENDED ---    
Severity: normal CC: qiyaoltc, woodzltc, zhengyzy
Priority: P2    
Version: unspecified   
Target Milestone: ---   
Host: Target:
Build: Last reconfirmed:
Bug Depends on: 3752, 3759, 3760, 3762, 5877, 6591, 3761, 5684    
Bug Blocks: 1601    
Attachments: fstep program

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
suspend trackers