[Android] Add m_InCallDirect flag
This commit is contained in:
parent
bee1440813
commit
a5fee4f644
|
@ -13,7 +13,8 @@
|
||||||
#if defined(__arm__) || defined(_M_ARM)
|
#if defined(__arm__) || defined(_M_ARM)
|
||||||
#include <Project64-core/N64System/Recompiler/Arm/ArmRegInfo.h>
|
#include <Project64-core/N64System/Recompiler/Arm/ArmRegInfo.h>
|
||||||
|
|
||||||
CArmRegInfo::CArmRegInfo()
|
CArmRegInfo::CArmRegInfo() :
|
||||||
|
m_InCallDirect(false)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -29,6 +30,8 @@ CArmRegInfo::~CArmRegInfo()
|
||||||
CArmRegInfo& CArmRegInfo::operator=(const CArmRegInfo& right)
|
CArmRegInfo& CArmRegInfo::operator=(const CArmRegInfo& right)
|
||||||
{
|
{
|
||||||
CRegBase::operator=(right);
|
CRegBase::operator=(right);
|
||||||
|
|
||||||
|
m_InCallDirect = right.m_InCallDirect;
|
||||||
#ifdef _DEBUG
|
#ifdef _DEBUG
|
||||||
if (*this != right)
|
if (*this != right)
|
||||||
{
|
{
|
||||||
|
@ -40,10 +43,24 @@ CArmRegInfo& CArmRegInfo::operator=(const CArmRegInfo& right)
|
||||||
|
|
||||||
void CArmRegInfo::BeforeCallDirect(void)
|
void CArmRegInfo::BeforeCallDirect(void)
|
||||||
{
|
{
|
||||||
|
if (m_InCallDirect)
|
||||||
|
{
|
||||||
|
CPU_Message("%s: in CallDirect",__FUNCTION__);
|
||||||
|
g_Notify->BreakPoint(__FILE__, __LINE__);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
m_InCallDirect = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
void CArmRegInfo::AfterCallDirect(void)
|
void CArmRegInfo::AfterCallDirect(void)
|
||||||
{
|
{
|
||||||
|
if (!m_InCallDirect)
|
||||||
|
{
|
||||||
|
CPU_Message("%s: Not in CallDirect",__FUNCTION__);
|
||||||
|
g_Notify->BreakPoint(__FILE__, __LINE__);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
m_InCallDirect = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
void CArmRegInfo::WriteBackRegisters()
|
void CArmRegInfo::WriteBackRegisters()
|
||||||
|
|
|
@ -33,5 +33,6 @@ public:
|
||||||
void WriteBackRegisters();
|
void WriteBackRegisters();
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
bool m_InCallDirect;
|
||||||
};
|
};
|
||||||
#endif
|
#endif
|
||||||
|
|
Loading…
Reference in New Issue