Correct P flag assertion in rfe.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4683 c046a42c-6fe2-441c-8c8c-71466251a162
master
edgar_igl 2008-06-06 11:17:17 +00:00
parent 313281198d
commit bf44333713
1 changed files with 3 additions and 1 deletions

View File

@ -202,6 +202,8 @@ static void cris_ccs_rshift(CPUState *env)
void helper_rfe(void)
{
int rflag = env->pregs[PR_CCS] & R_FLAG;
D(fprintf(logfile, "rfe: erp=%x pid=%x ccs=%x btarget=%x\n",
env->pregs[PR_ERP], env->pregs[PR_PID],
env->pregs[PR_CCS],
@ -210,7 +212,7 @@ void helper_rfe(void)
cris_ccs_rshift(env);
/* RFE sets the P_FLAG only if the R_FLAG is not set. */
if (!(env->pregs[PR_CCS] & R_FLAG))
if (!rflag)
env->pregs[PR_CCS] |= P_FLAG;
}