mirror of
https://github.com/beefytech/Beef.git
synced 2025-06-09 03:52:19 +02:00
Reduced _imp symbols for methods that may become unreified
This commit is contained in:
parent
e871bd6ace
commit
f92c3d1424
1 changed files with 2 additions and 12 deletions
|
@ -16212,6 +16212,8 @@ void BfModule::EmitDtorBody()
|
|||
|
||||
BfIRValue BfModule::CreateDllImportGlobalVar(BfMethodInstance* methodInstance, bool define)
|
||||
{
|
||||
BF_ASSERT(methodInstance->mIsReified);
|
||||
|
||||
auto typeInstance = methodInstance->GetOwner();
|
||||
|
||||
bool foundDllImportAttr = false;
|
||||
|
@ -22791,18 +22793,6 @@ void BfModule::DoMethodDeclaration(BfMethodDeclaration* methodDeclaration, bool
|
|||
//BF_ASSERT(mCompiler->IsAutocomplete());
|
||||
BfLogSysM("DoMethodDeclaration isTemporaryFunc bailout\n");
|
||||
return; // Bail out early for autocomplete pass
|
||||
}
|
||||
|
||||
if ((methodInstance->GetImportCallKind() != BfImportCallKind_None) && (!mBfIRBuilder->mIgnoreWrites) && (!methodInstance->mIRFunction))
|
||||
{
|
||||
BfLogSysM("DllImportGlobalVar DoMethodDeclaration processing %p\n", methodInstance);
|
||||
// If this is in an extension then we did create the global variable already in the original obj
|
||||
bool doDefine = mExtensionCount == 0;
|
||||
BfIRValue dllImportGlobalVar = CreateDllImportGlobalVar(methodInstance, doDefine);
|
||||
func = mBfIRBuilder->GetFakeVal();
|
||||
methodInstance->mIRFunction = func;
|
||||
BF_ASSERT(dllImportGlobalVar);
|
||||
mFuncReferences[mCurMethodInstance] = dllImportGlobalVar;
|
||||
}
|
||||
|
||||
//TODO: We used to have this (this != mContext->mExternalFuncModule) check, but it caused us to keep around
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue