Lines Matching defs:JD

95   Error setupJITDylib(JITDylib &JD) override;
96 Error teardownJITDylib(JITDylib &JD) override;
159 Error setupJITDylib(JITDylib &JD) {
167 cantFail(JD.define(absoluteSymbols(std::move(PerJDInterposes))));
176 ConstantInt::get(Int64Ty, reinterpret_cast<uintptr_t>(&JD)),
180 ConstantInt::get(Int64Ty, ExecutorAddr::fromPtr(&JD).getValue()));
206 return J.addIRModule(JD, ThreadSafeModule(std::move(M), std::move(Ctx)));
210 auto &JD = RT.getJITDylib();
212 InitSymbols[&JD].add(InitSym, SymbolLookupFlags::WeaklyReferencedSymbol);
221 InitSymbols[&JD].add(KV.first,
223 InitFunctions[&JD].add(KV.first);
225 DeInitFunctions[&JD].add(KV.first);
231 Error initialize(JITDylib &JD) override {
235 if (auto Initializers = getInitializers(JD)) {
251 Error deinitialize(JITDylib &JD) override {
255 if (auto Deinitializers = getDeinitializers(JD)) {
273 void registerInitFunc(JITDylib &JD, SymbolStringPtr InitName) {
275 InitFunctions[&JD].add(InitName);
279 void registerDeInitFunc(JITDylib &JD, SymbolStringPtr DeInitName) {
281 [&]() { DeInitFunctions[&JD].add(DeInitName); });
285 Expected<std::vector<ExecutorAddr>> getInitializers(JITDylib &JD) {
286 if (auto Err = issueInitLookups(JD))
293 if (auto DFSLinkOrderOrErr = JD.getDFSLinkOrder())
311 for (auto &JD : llvm::reverse(DFSLinkOrder))
312 dbgs() << "\"" << JD->getName() << "\" ";
339 Expected<std::vector<ExecutorAddr>> getDeinitializers(JITDylib &JD) {
348 if (auto DFSLinkOrderOrErr = JD.getDFSLinkOrder())
369 for (auto &JD : DFSLinkOrder)
370 dbgs() << "\"" << JD->getName() << "\" ";
386 "Every JD should have at least __lljit_run_atexits");
400 /// Issue lookups for all init symbols required to initialize JD (and any
402 Error issueInitLookups(JITDylib &JD) {
407 if (auto DFSLinkOrderOrErr = JD.getDFSLinkOrder())
431 dbgs() << "Registering cxa atexit function " << (void *)F << " for JD "
440 dbgs() << "Registering atexit function " << (void *)F << " for JD "
449 dbgs() << "Running atexit functions for JD "
497 Error GenericLLVMIRPlatform::setupJITDylib(JITDylib &JD) {
498 return S.setupJITDylib(JD);
501 Error GenericLLVMIRPlatform::teardownJITDylib(JITDylib &JD) {
586 Error initialize(JITDylib &JD) override {
588 << JD.getName() << "\n");
592 Error deinitialize(JITDylib &JD) override {
595 << JD.getName() << "\n");
605 Error ORCPlatformSupport::initialize(orc::JITDylib &JD) {
624 if (InitializedDylib.contains(&JD)) {
628 InitializedDylib.insert(&JD);
636 result, DSOHandles[&JD]);
643 DSOHandles[&JD], JD.getName(),
649 Error ORCPlatformSupport::deinitialize(orc::JITDylib &JD) {
661 WrapperAddr->getAddress(), result, DSOHandles[&JD]);
667 DSOHandles.erase(&JD);
668 InitializedDylib.erase(&JD);
844 LLVM_DEBUG(dbgs() << "Creating default Process JD setup function\n");
846 auto &JD =
852 JD.addGenerator(std::move(*G));
853 return &JD;
870 auto JD = ES->createJITDylib(std::move(Name));
871 if (!JD)
872 return JD.takeError();
874 JD->addToLinkOrder(DefaultLinks);
875 return JD;
886 auto &JD = ES->createBareJITDylib(Path);
887 JD.addGenerator(std::move(*G));
888 return JD;
891 Error LLJIT::linkStaticLibraryInto(JITDylib &JD,
898 JD.addGenerator(std::move(*G));
903 Error LLJIT::linkStaticLibraryInto(JITDylib &JD, const char *Path) {
908 JD.addGenerator(std::move(*G));
923 Error LLJIT::addIRModule(JITDylib &JD, ThreadSafeModule TSM) {
924 return addIRModule(JD.getDefaultResourceTracker(), std::move(TSM));
934 Error LLJIT::addObjectFile(JITDylib &JD, std::unique_ptr<MemoryBuffer> Obj) {
935 return addObjectFile(JD.getDefaultResourceTracker(), std::move(Obj));
938 Expected<ExecutorAddr> LLJIT::lookupLinkerMangled(JITDylib &JD,
941 makeJITDylibSearchOrder(&JD, JITDylibLookupFlags::MatchAllSymbols),
1111 Error operator()(JITDylib &JD, StringRef DLLName) {
1119 JD.addToLinkOrder(*DLLJD);
1251 Error LLLazyJIT::addLazyIRModule(JITDylib &JD, ThreadSafeModule TSM) {
1258 return CODLayer->add(JD, std::move(TSM));