Fixed compilation errors when CPU-LEVEL=3
This commit is contained in:
parent
9305305493
commit
153bec9d1a
@ -1,5 +1,5 @@
|
|||||||
/////////////////////////////////////////////////////////////////////////
|
/////////////////////////////////////////////////////////////////////////
|
||||||
// $Id: flag_ctrl.cc,v 1.18 2005-02-03 22:08:34 sshwarts Exp $
|
// $Id: flag_ctrl.cc,v 1.19 2005-02-03 22:24:45 sshwarts Exp $
|
||||||
/////////////////////////////////////////////////////////////////////////
|
/////////////////////////////////////////////////////////////////////////
|
||||||
//
|
//
|
||||||
// Copyright (C) 2002 MandrakeSoft S.A.
|
// Copyright (C) 2002 MandrakeSoft S.A.
|
||||||
@ -68,6 +68,7 @@ void BX_CPU_C::CLI(bxInstruction_c *i)
|
|||||||
#if BX_CPU_LEVEL >= 2
|
#if BX_CPU_LEVEL >= 2
|
||||||
if (protected_mode())
|
if (protected_mode())
|
||||||
{
|
{
|
||||||
|
#if BX_CPU_LEVEL >= 4
|
||||||
if (BX_CPU_THIS_PTR cr4.get_PVI() && (cpl == 3))
|
if (BX_CPU_THIS_PTR cr4.get_PVI() && (cpl == 3))
|
||||||
{
|
{
|
||||||
if (IOPL < 3) {
|
if (IOPL < 3) {
|
||||||
@ -75,7 +76,9 @@ void BX_CPU_C::CLI(bxInstruction_c *i)
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else {
|
else
|
||||||
|
#endif
|
||||||
|
{
|
||||||
if (IOPL < cpl) {
|
if (IOPL < cpl) {
|
||||||
exception(BX_GP_EXCEPTION, 0, 0);
|
exception(BX_GP_EXCEPTION, 0, 0);
|
||||||
return;
|
return;
|
||||||
@ -86,12 +89,13 @@ void BX_CPU_C::CLI(bxInstruction_c *i)
|
|||||||
else if (v8086_mode())
|
else if (v8086_mode())
|
||||||
{
|
{
|
||||||
if (IOPL != 3) {
|
if (IOPL != 3) {
|
||||||
|
#if BX_CPU_LEVEL >= 4
|
||||||
if (BX_CPU_THIS_PTR cr4.get_VME())
|
if (BX_CPU_THIS_PTR cr4.get_VME())
|
||||||
{
|
{
|
||||||
BX_CPU_THIS_PTR clear_VIF();
|
BX_CPU_THIS_PTR clear_VIF();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
exception(BX_GP_EXCEPTION, 0, 0);
|
exception(BX_GP_EXCEPTION, 0, 0);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@ -110,6 +114,7 @@ void BX_CPU_C::STI(bxInstruction_c *i)
|
|||||||
#if BX_CPU_LEVEL >= 2
|
#if BX_CPU_LEVEL >= 2
|
||||||
if (protected_mode())
|
if (protected_mode())
|
||||||
{
|
{
|
||||||
|
#if BX_CPU_LEVEL >= 4
|
||||||
if (BX_CPU_THIS_PTR cr4.get_PVI())
|
if (BX_CPU_THIS_PTR cr4.get_PVI())
|
||||||
{
|
{
|
||||||
if (cpl == 3) {
|
if (cpl == 3) {
|
||||||
@ -126,7 +131,7 @@ void BX_CPU_C::STI(bxInstruction_c *i)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
if (cpl > IOPL) {
|
if (cpl > IOPL) {
|
||||||
exception(BX_GP_EXCEPTION, 0, 0);
|
exception(BX_GP_EXCEPTION, 0, 0);
|
||||||
return;
|
return;
|
||||||
@ -136,12 +141,13 @@ void BX_CPU_C::STI(bxInstruction_c *i)
|
|||||||
else if (v8086_mode())
|
else if (v8086_mode())
|
||||||
{
|
{
|
||||||
if (IOPL != 3) {
|
if (IOPL != 3) {
|
||||||
|
#if BX_CPU_LEVEL >= 4
|
||||||
if (! BX_CPU_THIS_PTR get_VIP () && BX_CPU_THIS_PTR cr4.get_VME())
|
if (! BX_CPU_THIS_PTR get_VIP () && BX_CPU_THIS_PTR cr4.get_VME())
|
||||||
{
|
{
|
||||||
BX_CPU_THIS_PTR assert_VIF();
|
BX_CPU_THIS_PTR assert_VIF();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
exception(BX_GP_EXCEPTION, 0, 0);
|
exception(BX_GP_EXCEPTION, 0, 0);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user