|
|
@ -163,11 +163,9 @@ namespace nasa
|
|
|
|
}
|
|
|
|
}
|
|
|
|
__except (EXCEPTION_EXECUTE_HANDLER)
|
|
|
|
__except (EXCEPTION_EXECUTE_HANDLER)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
|
|
|
|
// loop until the TLB has flushed...
|
|
|
|
while (true)
|
|
|
|
while (true)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
while (!SwitchToThread())
|
|
|
|
|
|
|
|
continue;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
__try
|
|
|
|
__try
|
|
|
|
{
|
|
|
|
{
|
|
|
|
*(std::uint8_t*)new_addr.value = *(std::uint8_t*)new_addr.value;
|
|
|
|
*(std::uint8_t*)new_addr.value = *(std::uint8_t*)new_addr.value;
|
|
|
@ -175,6 +173,9 @@ namespace nasa
|
|
|
|
}
|
|
|
|
}
|
|
|
|
__except(EXCEPTION_EXECUTE_HANDLER)
|
|
|
|
__except(EXCEPTION_EXECUTE_HANDLER)
|
|
|
|
{}
|
|
|
|
{}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
while (!SwitchToThread())
|
|
|
|
|
|
|
|
continue;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
return {};
|
|
|
|
return {};
|
|
|
|