Lines Matching full:jd
85 void discard(const JITDylib &JD, const SymbolStringPtr &Sym) override {}
247 return make_error<StringError>("Could not find per jd object file",
267 Error COFFPlatform::setupJITDylib(JITDylib &JD) {
268 if (auto Err = JD.define(std::make_unique<COFFHeaderMaterializationUnit>(
272 if (auto Err = ES.lookup({&JD}, COFFHeaderStartSymbol).takeError())
278 if (auto Err = JD.define(symbolAliases(std::move(CXXAliases))))
290 JD, MemoryBuffer::getMemBuffer(*PerJDObj, false), std::move(*I)))
295 ? VCRuntimeBootstrap->loadStaticVCRuntime(JD)
296 : VCRuntimeBootstrap->loadDynamicVCRuntime(JD);
300 if (auto Err = LoadDynLibrary(JD, Lib))
303 if (auto Err = VCRuntimeBootstrap->initializeStaticVCRuntime(JD))
307 JD.addGenerator(DLLImportDefinitionGenerator::Create(ES, ObjLinkingLayer));
311 Error COFFPlatform::teardownJITDylib(JITDylib &JD) {
313 auto I = JITDylibToHeaderAddr.find(&JD);
325 auto &JD = RT.getJITDylib();
330 RegisteredInitSymbols[&JD].add(InitSym,
466 COFFPlatform::buildJDDepMap(JITDylib &JD) {
470 SmallVector<JITDylib *, 16> Worklist({&JD});
507 JITDylibSP JD,
509 SmallVector<JITDylib *, 16> Worklist({JD.get()});
510 DenseSet<JITDylib *> Visited({JD.get()});
553 [this, SendResult = std::move(SendResult), &JD,
558 pushInitializersLoop(std::move(SendResult), JD, JDDepMap);
565 JITDylibSP JD;
570 JD = I->second;
575 if (JD)
576 dbgs() << "pushing initializers for " << JD->getName() << "\n";
581 if (!JD) {
588 auto JDDepMap = buildJDDepMap(*JD);
594 pushInitializersLoop(std::move(SendResult), JD, *JDDepMap);
601 JITDylib *JD = nullptr;
607 JD = I->second;
610 if (!JD) {
637 LookupKind::DLSym, {{JD, JITDylibLookupFlags::MatchExportedSymbolsOnly}},
665 if (auto Err = runSymbolIfExists(*BState.JD, "__run_after_c_init"))
779 [this, &JD = MR.getTargetJITDylib()](jitlink::LinkGraph &G) {
780 return registerObjectPlatformSections(G, JD);
784 [this, &JD = MR.getTargetJITDylib()](jitlink::LinkGraph &G) {
785 return registerObjectPlatformSectionsInBootstrap(G, JD);
811 auto &JD = MR.getTargetJITDylib();
814 CP.JITDylibToHeaderAddr[&JD] = HeaderAddr;
815 CP.HeaderAddrToJITDylib[HeaderAddr] = &JD;
820 CP.orc_rt_coff_register_jitdylib, JD.getName(), HeaderAddr)),
829 BState.JD = &JD;
830 BState.JDName = JD.getName();
832 CP.JDBootstrapStates.emplace(&JD, BState);
839 jitlink::LinkGraph &G, JITDylib &JD) {
841 auto HeaderAddr = CP.JITDylibToHeaderAddr[&JD];
877 JITDylib &JD) {
879 auto HeaderAddr = CP.JITDylibToHeaderAddr[&JD];
894 auto &BState = CP.JDBootstrapStates[&JD];