qemu-devel
[Top][All Lists]
Advanced

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

Re: SV: [Qemu-devel] ARM CPSR and conditional instructions


From: Paul Brook
Subject: Re: SV: [Qemu-devel] ARM CPSR and conditional instructions
Date: Thu, 23 Nov 2006 15:28:59 +0000
User-agent: KMail/1.9.5

> However, we have seen that the condition bits in CPSR differers compared to
> one other arm instruction set simulator, running the same binary. This
> indicate for us that there might be something wrong i QEMU (translate.c
> op.c for ARM). However, it is not proven yet.

The only restriction it that you can't set the N and Z bits simultaneously. 
This never occurs under normal circumstances, only if you directly modify the 
CPSR value.

> However, our understanding for the situation would improve if the strategy
> for simulating the conditional execution of ARM instructions is understood.
>
> Is a conditional ARM instruction treated as a branch-point, an end marker
> for a TB? If not, jumps qemu within a TB?
> Is it possible to describe the strategy with a reasonable effort? I would
> be very greatfull.

A TB is terminated at a branch, and at some instructions that modify system 
state (eg. moves to system registers, and the svc and bkpt instructions). 
Conditional instructions do not terminate the TB unless they are conditional  
branches.

Paul




reply via email to

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