Lines Matching defs:Filename
23 getArchiveAndObjectName(StringRef Filename) {
24 StringRef Archive = Filename.substr(0, Filename.rfind('('));
25 StringRef Object = Filename.substr(Archive.size() + 1).drop_back();
29 static bool isArchive(StringRef Filename) { return Filename.ends_with(")"); }
32 getMachOFatMemoryBuffers(StringRef Filename, MemoryBuffer &Mem,
39 Buffers.emplace_back(ObjData, Filename);
49 StringRef Filename,
51 StringRef ArchiveFilename = getArchiveAndObjectName(Filename).first;
94 StringRef Filename, TimestampTy Timestamp,
97 auto ErrOrBuff = (Filename == "-")
99 : VFS->getBufferForFile(Filename, -1, false);
103 if (Opts.Warn && Filename != "-" && Timestamp != sys::TimePoint<>()) {
104 llvm::ErrorOr<vfs::Status> Stat = VFS->status(Filename);
109 WithColor::warning() << Filename
131 FatBinaryName = std::string(Filename);
169 BinaryHolder::ArchiveEntry::getObjectEntry(StringRef Filename,
174 std::tie(ArchiveFilename, ObjectFilename) = getArchiveAndObjectName(Filename);
236 BinaryHolder::getObjectEntry(StringRef Filename, TimestampTy Timestamp) {
238 WithColor::note() << "trying to open '" << Filename << "'\n";
242 if (isArchive(Filename)) {
243 StringRef ArchiveFilename = getArchiveAndObjectName(Filename).first;
247 return ArchiveCache[ArchiveFilename]->getObjectEntry(Filename, Timestamp,
251 auto Err = AE->load(VFS, Filename, Timestamp, Opts);
257 return ArchiveCache[ArchiveFilename]->getObjectEntry(Filename,
266 ObjectRefCounter[Filename]++;
267 if (!ObjectCache.count(Filename)) {
269 auto Err = OE->load(VFS, Filename, Timestamp, Opts);
272 ObjectCache[Filename] = std::move(OE);
275 return *ObjectCache[Filename];
285 void BinaryHolder::eraseObjectEntry(StringRef Filename) {
287 WithColor::note() << "erasing '" << Filename << "' from cache\n";
289 if (isArchive(Filename)) {
290 StringRef ArchiveFilename = getArchiveAndObjectName(Filename).first;
299 ObjectRefCounter[Filename]--;
300 if (ObjectRefCounter[Filename] == 0)
301 ObjectCache.erase(Filename);