| 218 | ////////////////////////////////////////////////////////////////////////// |
| 219 | |
| 220 | BfCompiler::HotData::~HotData() |
| 221 | { |
| 222 | for (auto& kv : mMethodMap) |
| 223 | { |
| 224 | auto hotMethod = kv.mValue; |
| 225 | hotMethod->Clear(); |
| 226 | } |
| 227 | for (auto& kv : mThisType) |
| 228 | kv.mValue->Deref(); |
| 229 | for (auto& kv : mAllocation) |
| 230 | kv.mValue->Deref(); |
| 231 | for (auto& kv : mDevirtualizedMethods) |
| 232 | kv.mValue->Deref(); |
| 233 | for (auto& kv : mFuncPtrs) |
| 234 | kv.mValue->Deref(); |
| 235 | for (auto& kv : mVirtualDecls) |
| 236 | kv.mValue->Deref(); |
| 237 | for (auto& kv : mInnerMethods) |
| 238 | kv.mValue->Deref(); |
| 239 | for (auto& kv : mMethodMap) |
| 240 | kv.mValue->Deref(); |
| 241 | } |
| 242 | |
| 243 | template <typename TDict> |
| 244 | static void DeleteUnused(TDict& dict) |