MCPcopy Create free account
hub / github.com/FEX-Emu/FEX / LoadAOTIRCacheEntry

Method LoadAOTIRCacheEntry

FEXCore/Source/Interface/IR/AOTIR.cpp:39–58  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

37}
38
39AOTIRCacheEntry* AOTIRCaptureCache::LoadAOTIRCacheEntry(const fextl::string& filename) {
40 fextl::string base_filename = FHU::Filesystem::GetFilename(filename);
41
42 if (!base_filename.empty()) {
43 auto filename_hash = XXH3_64bits(filename.c_str(), filename.size());
44
45 auto fileid = fextl::fmt::format("{}-{}-{}{}{}", base_filename, filename_hash,
46 (CTX->Config.SMCChecks == FEXCore::Config::CONFIG_SMC_FULL) ? 'S' : 's',
47 CTX->Config.TSOEnabled ? 'T' : 't', CTX->Config.ABILocalFlags ? 'L' : 'l');
48
49 std::unique_lock lk(AOTIRCacheLock);
50
51 auto Inserted = AOTIRCache.insert({fileid, AOTIRCacheEntry {.FileId = fileid, .Filename = filename}});
52 auto Entry = &(Inserted.first->second);
53
54 return Entry;
55 }
56
57 return nullptr;
58}
59
60} // namespace FEXCore::IR

Callers 1

TrackMmapMethod · 0.45

Calls 3

GetFilenameFunction · 0.85
formatFunction · 0.85
sizeMethod · 0.45

Tested by

no test coverage detected