Re: Single stepping in mips

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, 4 Jun 2003, Ralf Baechle wrote:

> > But the need is to raise an exception after instr1 (at addr1) is executed.
> > One solution is using a break at instr2 (at addr2).
> > But suppose instr1 is a jmp then there is no point
> > in keeping a break at addr2.
> > (inorder to raise an exception after instr1 is executed).
> 
> You understood correctly.  Now jumps and even more so the conditional
> branches are sort of the ugly part of the whole thing.  The easiest
> method is probably inserting a branch at the jump's destination address
> or in case of a branch at the branch target and the instruction following
> it's delay slot.  So that's a lot of inserting and removing of
> breakpoints ...

 In a more finegrained but also more complicated example, you probably
want to insert a breakpoint in the delay slot first and at the second step
evaluate the branch's condition and put a breakpoint at the next
instruction to be executed.  I'm not sure if the current version of gdb
does the first step, but it inserts a single breakpoint in the second one
only.  For branch likely instructions adjust the two steps as necessary. 

-- 
+  Maciej W. Rozycki, Technical University of Gdansk, Poland   +
+--------------------------------------------------------------+
+        e-mail: macro@ds2.pg.gda.pl, PGP key available        +



[Index of Archives]     [Linux MIPS Home]     [LKML Archive]     [Linux ARM Kernel]     [Linux ARM]     [Linux]     [Git]     [Yosemite News]     [Linux SCSI]     [Linux Hams]

  Powered by Linux