[PATCH] ppc32: fix single-stepping of emulated instructions

On ppc, we emulate instructions that cause alignment exceptions.  If we are
single-stepping an instruction and it causes an alignment exception, we
will currently do the next instruction as well before taking the
single-step exception.  This patch fixes that, so we take the single-step
exception after emulating the instruction.

Signed-off-by: Paul Mackerras <paulus@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
Paul Mackerras 2005-04-16 15:24:17 -07:00 коммит произвёл Linus Torvalds
Родитель e378cc16b0
Коммит 6c26e03b2d
1 изменённых файлов: 1 добавлений и 0 удалений

Просмотреть файл

@ -679,6 +679,7 @@ void AlignmentException(struct pt_regs *regs)
fixed = fix_alignment(regs); fixed = fix_alignment(regs);
if (fixed == 1) { if (fixed == 1) {
regs->nip += 4; /* skip over emulated instruction */ regs->nip += 4; /* skip over emulated instruction */
emulate_single_step(regs);
return; return;
} }
if (fixed == -EFAULT) { if (fixed == -EFAULT) {