qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] Single stepping for PPC broken!


From: Marius Groeger
Subject: Re: [Qemu-devel] Single stepping for PPC broken!
Date: Wed, 9 Jan 2008 13:19:34 +0100 (CET)

On Wed, 9 Jan 2008, Marius Groeger wrote:

> I'm having problems with qemu's (-M prep, -cpu 604) handling of the 
> MSR_SE bit. My gdbstub can successfully step along regular code, but 
> qemu chokes when stepping over a branch instruction like "blr". 
> (Needless to say, that same gdbstub works fine on real hardware). I 
> tried older versions of qemu and found that the code base 8 months ago 
> worked fine.

I have now verified with booting a Linux image into qemu-system-ppc - same
problem. When stepi'ing over the following sequence, the system chokes on a
"bl" instruction:

  / # gdb testprg
  GNU gdb 6.3.50.20050810
  Copyright 2004 Free Software Foundation, Inc.
  GDB is free software, covered by the GNU General Public License, and you are
  welcome to change it and/or distribute copies of it under certain conditions.
  Type "show copying" to see the conditions.
  There is absolutely no warranty for GDB.  Type "show warranty" for details.
  This GDB was configured as "powerpc-linux"...Using host libthread_db library
  "/lib/libthread_db.so.1".
  
  (gdb) b main
  Breakpoint 1 at 0x10000520: file testprg.c, line 26.
  (gdb) run
  Starting program: testprg
  Breakpoint 1, main () at testprg.c:26
  26  testprg.c: No such file or directory.
  in testprg.c
  (gdb) disassemble
  Dump of assembler code for function main:
  0x1000050c <main+0>:stwu    r1,-32(r1)
  0x10000510 <main+4>:mflr    r0
  0x10000514 <main+8>:stw     r31,28(r1)
  0x10000518 <main+12>:stw     r0,36(r1)
  0x1000051c <main+16>:mr      r31,r1
  0x10000520 <main+20>:lis     r9,4096
  0x10000524 <main+24>:addi    r3,r9,2376
  0x10000528 <main+28>:crclr   4*cr1+eq
  0x1000052c <main+32>:bl      0x10010ad8 <printf>
  0x10000530 <main+36>:lis     r9,4096
  ...
  (gdb) stepi
  0x10000524   26 in testprg.c
  (gdb) stepi
  0x10000528   26 in testprg.c
  (gdb) stepi
  0x1000052c   26 in testprg.c
  (gdb) stepi
  <<< QEMU HANGS! >>>

> Any ideas? Did perhaps the PPC440 additions add some regression here?

?!

Regards and TIA,
Marius

-- 
Marius Groeger <address@hidden>
SYSGO AG                      Embedded and Real-Time Software
Voice: +49 6136 9948 0                  FAX: +49 6136 9948 10
www.sysgo.com | www.elinos.com | www.osek.de | www.pikeos.com




reply via email to

[Prev in Thread] Current Thread [Next in Thread]