1
0
Fork 0
mirror of https://github.com/beefytech/Beef.git synced 2025-06-09 03:52:19 +02:00

Clear cached ce reflection data during type rebuild

This commit is contained in:
Brian Fiete 2022-07-28 11:25:50 -04:00
parent e071bd0014
commit 51713a1e34
3 changed files with 21 additions and 0 deletions

View file

@ -9759,6 +9759,23 @@ void CeMachine::QueueStaticField(BfFieldInstance* fieldInstance, const StringImp
mCurBuilder->mStaticFieldInstanceMap[mangledFieldName] = fieldInstance;
}
void CeMachine::ClearTypeData(BfTypeInstance* typeInstance)
{
if (mTypeInfoMap.Remove(typeInstance))
{
for (auto& methodGroup : typeInstance->mMethodInstanceGroups)
{
if (methodGroup.mDefault != NULL)
mMethodInstanceSet.Remove(methodGroup.mDefault);
if (methodGroup.mMethodSpecializationMap != NULL)
{
for (auto& kv : *methodGroup.mMethodSpecializationMap)
mMethodInstanceSet.Remove(kv.mValue);
}
}
}
}
void CeMachine::SetAppendAllocInfo(BfModule* module, BfIRValue allocValue, BfIRValue appendSizeValue)
{
delete mAppendAllocInfo;