Re: [Qemu-devel] [Bug] MIPS code fails at branch instruction

2007-03-17 Thread Paul Brook
> >> So an emulation has several options: > >> > >> 1. Show undefined behaviour (this is what it does today). > >> 2. Emulate the behaviour of existing CPUs as far as possible. > >> As different CPUs behave different, this must depend on the > >> current CPU. > >> 3. Display an error message. > > >

Re: [Qemu-devel] [Bug] MIPS code fails at branch instruction

2007-03-17 Thread Stefan Weil
Thiemo Seufer wrote > Stefan Weil wrote: >> So an emulation has several options: >> >> 1. Show undefined behaviour (this is what it does today). >> 2. Emulate the behaviour of existing CPUs as far as possible. >> As different CPUs behave different, this must depend on the >> current CPU. >> 3. Disp

Re: [Qemu-devel] [Bug] MIPS code fails at branch instruction

2007-03-17 Thread Thiemo Seufer
Stefan Weil wrote: > So an emulation has several options: > > 1. Show undefined behaviour (this is what it does today). > 2. Emulate the behaviour of existing CPUs as far as possible. >As different CPUs behave different, this must depend on the >current CPU. > 3. Display an error message.

Re: [Qemu-devel] [Bug] MIPS code fails at branch instruction

2007-03-17 Thread Stefan Weil
So an emulation has several options: 1. Show undefined behaviour (this is what it does today). 2. Emulate the behaviour of existing CPUs as far as possible. As different CPUs behave different, this must depend on the current CPU. 3. Display an error message. The current solution (1) is not

Re: [Qemu-devel] [Bug] MIPS code fails at branch instruction

2007-03-16 Thread Thiemo Seufer
Stefan Weil wrote: > Hi, > > QEMU MIPS emulation fails with code using "illegal" commands > in the delay slot of a branch. > > I had an endless loop with QEMU running the firmware of a > MIPS based router. > > MIPS says: branches, jumps, ... instructions should not be > placed in the delay slot

[Qemu-devel] [Bug] MIPS code fails at branch instruction

2007-03-16 Thread Stefan Weil
Hi, QEMU MIPS emulation fails with code using "illegal" commands in the delay slot of a branch. I had an endless loop with QEMU running the firmware of a MIPS based router. MIPS says: branches, jumps, ... instructions should not be placed in the delay slot of a branch or jump. Nevertheless, som