mirror of
https://github.com/beefytech/Beef.git
synced 2025-06-08 19:48:20 +02:00
Fixed ce dependency issue with mCeInnerFunctionInfo
This commit is contained in:
parent
41ab77d22d
commit
aabd84368d
2 changed files with 11 additions and 1 deletions
|
@ -508,6 +508,15 @@ CeFunction::~CeFunction()
|
||||||
BfLogSys(mCeMachine->mCompiler->mSystem, "CeFunction::~CeFunction %p\n", this);
|
BfLogSys(mCeMachine->mCompiler->mSystem, "CeFunction::~CeFunction %p\n", this);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
BfTypeInstance* CeFunction::GetOwner()
|
||||||
|
{
|
||||||
|
if (mCeFunctionInfo != NULL)
|
||||||
|
return mCeFunctionInfo->GetOwner();
|
||||||
|
if (mCeInnerFunctionInfo != NULL)
|
||||||
|
return mCeInnerFunctionInfo->mOwner->GetOwner();
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
void CeFunction::Print()
|
void CeFunction::Print()
|
||||||
{
|
{
|
||||||
CeDumpContext dumpCtx;
|
CeDumpContext dumpCtx;
|
||||||
|
@ -1422,7 +1431,7 @@ int CeBuilder::GetCallTableIdx(BeFunction* beFunction, CeOperand* outOperand)
|
||||||
|
|
||||||
if ((ceFunctionInfo != NULL) && (mCeFunction->mCeFunctionInfo != NULL))
|
if ((ceFunctionInfo != NULL) && (mCeFunction->mCeFunctionInfo != NULL))
|
||||||
{
|
{
|
||||||
auto callerType = mCeFunction->mCeFunctionInfo->GetOwner();
|
auto callerType = mCeFunction->GetOwner();
|
||||||
auto calleeType = ceFunctionInfo->GetOwner();
|
auto calleeType = ceFunctionInfo->GetOwner();
|
||||||
|
|
||||||
if ((callerType != NULL) && (calleeType != NULL))
|
if ((callerType != NULL) && (calleeType != NULL))
|
||||||
|
|
|
@ -685,6 +685,7 @@ public:
|
||||||
}
|
}
|
||||||
|
|
||||||
~CeFunction();
|
~CeFunction();
|
||||||
|
BfTypeInstance* GetOwner();
|
||||||
void Print();
|
void Print();
|
||||||
void UnbindBreakpoints();
|
void UnbindBreakpoints();
|
||||||
CeEmitEntry* FindEmitEntry(int loc, int* entryIdx = NULL);
|
CeEmitEntry* FindEmitEntry(int loc, int* entryIdx = NULL);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue