fpiarm: condok() verfiy before specialop() omap/kw

This commit is contained in:
jpathy 2013-06-14 23:42:30 +05:30
parent 4b79c8f86f
commit 166da952f4
2 changed files with 8 additions and 4 deletions

View file

@ -749,8 +749,10 @@ fpiarm(Ureg *ur)
for(i = 0; specialopc[i].f; i++)
if((op & specialopc[i].mask) == specialopc[i].opc)
break;
if(specialopc[i].f)
specialopc[i].f(ur->pc, op, ur);
if(specialopc[i].f){
if(condok(ur->psr, op>>28))
specialopc[i].f(ur->pc, op, ur);
}
else if(ISVFPOP(cp, o)){
if(condok(ur->psr, op>>28))
vfpemu(ur->pc, op, ur, ufp);

View file

@ -749,8 +749,10 @@ fpiarm(Ureg *ur)
for(i = 0; specialopc[i].f; i++)
if((op & specialopc[i].mask) == specialopc[i].opc)
break;
if(specialopc[i].f)
specialopc[i].f(ur->pc, op, ur);
if(specialopc[i].f){
if(condok(ur->psr, op>>28))
specialopc[i].f(ur->pc, op, ur);
}
else if(ISVFPOP(cp, o)){
if(condok(ur->psr, op>>28))
vfpemu(ur->pc, op, ur, ufp);