Lines Matching refs:Handle

36   static void DLClose(void *Handle);
37 static void *DLSym(void *Handle, const char *Symbol);
42 HandleList::iterator Find(void *Handle) { return find(Handles, Handle); } in Find() argument
44 bool Contains(void *Handle) { in Contains() argument
45 return Handle == Process || Find(Handle) != Handles.end(); in Contains()
48 bool AddLibrary(void *Handle, bool IsProcess = false, bool CanClose = true) { in AddLibrary() argument
50 assert((Handle == this ? IsProcess : !IsProcess) && "Bad Handle."); in AddLibrary()
54 if (Find(Handle) != Handles.end()) { in AddLibrary()
56 DLClose(Handle); in AddLibrary()
59 Handles.push_back(Handle); in AddLibrary()
65 if (Process == Handle) in AddLibrary()
69 Process = Handle; in AddLibrary()
76 for (void *Handle : Handles) { in LibLookup() local
77 if (void *Ptr = DLSym(Handle, Symbol)) in LibLookup()
81 for (void *Handle : llvm::reverse(Handles)) { in LibLookup() local
82 if (void *Ptr = DLSym(Handle, Symbol)) in LibLookup()
152 void *Handle = HandleSet::DLOpen(FileName, Err); in getPermanentLibrary() local
153 if (Handle != &Invalid) { in getPermanentLibrary()
155 HS.AddLibrary(Handle, /*IsProcess*/ FileName == nullptr); in getPermanentLibrary()
158 return DynamicLibrary(Handle); in getPermanentLibrary()
161 DynamicLibrary DynamicLibrary::addPermanentLibrary(void *Handle, in addPermanentLibrary() argument
165 if (!OpenedHandles->AddLibrary(Handle, /*IsProcess*/false, /*CanClose*/false)) in addPermanentLibrary()
168 return DynamicLibrary(Handle); in addPermanentLibrary()