/freebsd/contrib/llvm-project/llvm/include/llvm/ExecutionEngine/Orc/ |
H A D | OrcABISupport.h | 64 ExecutorAddr ResolverTargetAddr, in writeResolverCode() 65 ExecutorAddr ReentryFnAddr, in writeResolverCode() 66 ExecutorAddr ReentryCtxAddr) { in writeResolverCode() 72 ExecutorAddr TrampolineBlockTargetAddr, in writeTrampolines() 73 ExecutorAddr ResolverAddr, in writeTrampolines() 80 ExecutorAddr StubsBlockTargetAddress, in writeIndirectStubsBlock() 81 ExecutorAddr PointersBlockTargetAddress, in writeIndirectStubsBlock() 105 ExecutorAddr ResolverTargetAddress, 106 ExecutorAddr ReentryFnAddr, 107 ExecutorAddr RentryCtxAddr); [all …]
|
H A D | EPCIndirectionUtils.h | 57 ExecutorAddr ResolverTargetAddr, 58 ExecutorAddr ReentryFnAddr, 59 ExecutorAddr ReentryCtxAddr) const = 0; 62 ExecutorAddr TrampolineBlockTragetAddr, 63 ExecutorAddr ResolverAddr, 67 char *StubsBlockWorkingMem, ExecutorAddr StubsBlockTargetAddress, 68 ExecutorAddr PointersBlockTargetAddress, unsigned NumStubs) const = 0; 106 Expected<ExecutorAddr> writeResolverBlock(ExecutorAddr ReentryFnAddr, 107 ExecutorAddr ReentryCtxAddr); 111 ExecutorAddr getResolverBlockAddress() const { return ResolverBlockAddr; } in getResolverBlockAddress() [all …]
|
H A D | MemoryMapper.h | 39 ExecutorAddr MappingBase; 53 virtual char *prepare(ExecutorAddr Addr, size_t ContentSize) = 0; 55 using OnInitializedFunction = unique_function<void(Expected<ExecutorAddr>)>; 70 virtual void deinitialize(ArrayRef<ExecutorAddr> Allocations, 76 virtual void release(ArrayRef<ExecutorAddr> Reservations, 94 char *prepare(ExecutorAddr Addr, size_t ContentSize) override; 96 void deinitialize(ArrayRef<ExecutorAddr> Allocations, 99 void release(ArrayRef<ExecutorAddr> Reservations, 109 using AllocationMap = DenseMap<ExecutorAddr, Allocation>; 113 std::vector<ExecutorAddr> Allocations; [all …]
|
H A D | LazyReexports.h | 41 unique_function<Error(ExecutorAddr ResolvedAddr)>; 43 LazyCallThroughManager(ExecutionSession &ES, ExecutorAddr ErrorHandlerAddr, 48 Expected<ExecutorAddr> 53 ExecutorAddr TrampolineAddr, 67 ExecutorAddr reportCallThroughError(Error Err); 68 Expected<ReexportsEntry> findReexport(ExecutorAddr TrampolineAddr); 69 Error notifyResolved(ExecutorAddr TrampolineAddr, ExecutorAddr ResolvedAddr); 73 using ReexportsMap = std::map<ExecutorAddr, ReexportsEntry>; 75 using NotifiersMap = std::map<ExecutorAddr, NotifyResolvedFunction>; 79 ExecutorAddr ErrorHandlerAddr; [all …]
|
H A D | IndirectionUtils.h | 66 unique_function<void(ExecutorAddr) const>; 69 ExecutorAddr TrampolineAddr, 76 Expected<ExecutorAddr> getTrampoline() { in getTrampoline() 89 void releaseTrampoline(ExecutorAddr TrampolineAddr) { in releaseTrampoline() 98 std::vector<ExecutorAddr> AvailableTrampolines; 124 std::promise<ExecutorAddr> LandingAddressP; in reenter() 127 TrampolinePool->ResolveLanding(ExecutorAddr::fromPtr(TrampolineId), in reenter() 128 [&](ExecutorAddr LandingAddress) { in reenter() 150 ExecutorAddr::fromPtr(ResolverBlock.base()), in LocalTrampolinePool() 151 ExecutorAddr in LocalTrampolinePool() [all...] |
H A D | COFFPlatform.h | 81 using COFFJITDylibDepInfo = std::vector<ExecutorAddr>; 83 std::vector<std::pair<ExecutorAddr, COFFJITDylibDepInfo>>; 88 using SendSymbolAddressFn = unique_function<void(Expected<ExecutorAddr>)>; 140 ExecutorAddr HeaderAddr; 142 SmallVector<std::pair<std::string, ExecutorAddr>> Initializers; 182 ExecutorAddr JDHeaderAddr); 184 void rt_lookupSymbol(SendSymbolAddressFn SendResult, ExecutorAddr Handle, 202 ExecutorAddr orc_rt_coff_platform_bootstrap; 203 ExecutorAddr orc_rt_coff_platform_shutdown; 204 ExecutorAddr orc_rt_coff_register_object_sections; [all …]
|
H A D | SimpleRemoteEPC.h | 77 Expected<int32_t> runAsMain(ExecutorAddr MainFnAddr, 80 Expected<int32_t> runAsVoidFunction(ExecutorAddr VoidFnAddr) override; 82 Expected<int32_t> runAsIntFunction(ExecutorAddr IntFnAddr, int Arg) override; 84 void callWrapperAsync(ExecutorAddr WrapperFnAddr, 91 handleMessage(SimpleRemoteEPCOpcode OpC, uint64_t SeqNo, ExecutorAddr TagAddr, 107 ExecutorAddr TagAddr, ArrayRef<char> ArgBytes); 109 Error handleSetup(uint64_t SeqNo, ExecutorAddr TagAddr, 113 Error handleResult(uint64_t SeqNo, ExecutorAddr TagAddr, 115 void handleCallWrapper(uint64_t RemoteSeqNo, ExecutorAddr TagAddr, 135 ExecutorAddr RunAsMainAddr; [all …]
|
H A D | EPCGenericJITLinkMemoryManager.h | 31 ExecutorAddr Allocator; 32 ExecutorAddr Reserve; 33 ExecutorAddr Finalize; 34 ExecutorAddr Deallocate; 57 void completeAllocation(ExecutorAddr AllocAddr, jitlink::BasicLayout BL, 73 return SPSArgList<SPSExecutorAddr>::size(ExecutorAddr(FA.getAddress())); in size() 80 OB, ExecutorAddr(FA.getAddress())); in serialize() 85 ExecutorAddr A; in deserialize()
|
H A D | EPCGenericRTDyldMemoryManager.h | 30 ExecutorAddr Instance; 31 ExecutorAddr Reserve; 32 ExecutorAddr Finalize; 33 ExecutorAddr Deallocate; 34 ExecutorAddr RegisterEHFrame; 35 ExecutorAddr DeregisterEHFrame; 88 ExecutorAddr RemoteAddr; 111 ExecutorAddr NextAddr); 119 std::vector<ExecutorAddr> FinalizedAllocs;
|
H A D | ExecutorProcessControl.h | 186 ExecutorAddr JITDispatchFunction; 187 ExecutorAddr JITDispatchContext; 260 const StringMap<ExecutorAddr> &getBootstrapSymbolsMap() const { in getBootstrapSymbolsMap() 268 ArrayRef<std::pair<ExecutorAddr &, StringRef>> Pairs) const { in getBootstrapSymbols() argument 315 virtual Expected<int32_t> runAsMain(ExecutorAddr MainFnAddr, 320 virtual Expected<int32_t> runAsVoidFunction(ExecutorAddr VoidFnAddr) = 0; 324 virtual Expected<int32_t> runAsIntFunction(ExecutorAddr IntFnAddr, 335 virtual void callWrapperAsync(ExecutorAddr WrapperFnAddr, 342 void callWrapperAsync(RunPolicyT &&Runner, ExecutorAddr WrapperFnAddr, in callWrapperAsync() 351 void callWrapperAsync(ExecutorAddr WrapperFnAddr, FnT &&OnComplete, in callWrapperAsync() [all …]
|
H A D | EPCEHFrameRegistrar.h | 41 ExecutorAddr RegisterEHFrameSectionWrapper, in EPCEHFrameRegistrar() 42 ExecutorAddr DeregisterEHFRameSectionWrapper) in EPCEHFrameRegistrar() 51 ExecutorAddr RegisterEHFrameSectionWrapper; 52 ExecutorAddr DeregisterEHFrameSectionWrapper;
|
H A D | MachOPlatform.h | 35 std::vector<ExecutorAddr> DepHeaders; 40 std::vector<std::pair<ExecutorAddr, MachOJITDylibDepInfo>>; 182 std::tuple<ExecutorAddr, ExecutorAddr, MachOExecutorSymbolFlags>>; 190 ExecutorAddr MachOHeaderAddr; 284 DenseMap<JITDylib *, ExecutorAddr> HeaderAddrs; 289 unique_function<void(Expected<ExecutorAddr>)>; 294 using SendSymbolAddressFn = unique_function<void(Expected<ExecutorAddr>)>; 320 ExecutorAddr JDHeaderAddr); 326 void rt_pushSymbols(PushSymbolsInSendResultFn SendResult, ExecutorAddr Handle, 342 ExecutorAddr Addr; [all …]
|
/freebsd/contrib/llvm-project/llvm/include/llvm/ExecutionEngine/Orc/Shared/ |
H A D | ExecutorAddress.h | 31 class ExecutorAddr { 72 ExecutorAddr() = default; 75 explicit constexpr ExecutorAddr(uint64_t Addr) : Addr(Addr) {} in ExecutorAddr() function 80 static ExecutorAddr fromPtr(T *Ptr, UnwrapFn &&Unwrap = UnwrapFn()) { 81 return ExecutorAddr( 111 friend bool operator==(const ExecutorAddr &LHS, const ExecutorAddr &RHS) { 115 friend bool operator!=(const ExecutorAddr &LHS, const ExecutorAddr &RHS) { 119 friend bool operator<(const ExecutorAddr &LHS, const ExecutorAddr &RHS) { 123 friend bool operator<=(const ExecutorAddr &LHS, const ExecutorAddr &RHS) { 127 friend bool operator>(const ExecutorAddr &LHS, const ExecutorAddr &RHS) { [all …]
|
/freebsd/contrib/llvm-project/compiler-rt/lib/orc/ |
H A D | executor_address.h | 30 class ExecutorAddr { 71 ExecutorAddr() = default; 72 explicit ExecutorAddr(uint64_t Addr) : Addr(Addr) {} in ExecutorAddr() function 76 static ExecutorAddr fromPtr(T *Ptr, UnwrapFn &&Unwrap = UnwrapFn()) { 77 return ExecutorAddr( 105 friend bool operator==(const ExecutorAddr &LHS, const ExecutorAddr &RHS) { 109 friend bool operator!=(const ExecutorAddr &LHS, const ExecutorAddr &RHS) { 113 friend bool operator<(const ExecutorAddr &LHS, const ExecutorAddr &RHS) { 117 friend bool operator<=(const ExecutorAddr &LHS, const ExecutorAddr &RHS) { 121 friend bool operator>(const ExecutorAddr &LHS, const ExecutorAddr &RHS) { [all …]
|
H A D | coff_platform.cpp | 36 using COFFJITDylibDepInfo = std::vector<ExecutorAddr>; 38 std::unordered_map<ExecutorAddr, COFFJITDylibDepInfo>; 118 Error registerAtExit(ExecutorAddr HeaderAddr, void (*AtExit)(void)); 121 ExecutorAddr HeaderAddr, 125 ExecutorAddr HeaderAddr, 131 Error registerBlockRange(ExecutorAddr HeaderAddr, ExecutorAddrRange Range); 132 Error deregisterBlockRange(ExecutorAddr HeaderAddr, ExecutorAddrRange Range); 134 Error registerSEHFrames(ExecutorAddr HeaderAddr, 136 Error deregisterSEHFrames(ExecutorAddr HeaderAddr, 148 Expected<ExecutorAddr> lookupSymbolInJITDyli [all...] |
/freebsd/contrib/llvm-project/llvm/lib/ExecutionEngine/Orc/ |
H A D | OrcABISupport.cpp | 20 static bool stubAndPointerRangesOk(ExecutorAddr StubBlockAddr, in stubAndPointerRangesOk() 21 ExecutorAddr PointerBlockAddr, in stubAndPointerRangesOk() 24 ExecutorAddr FirstStub = StubBlockAddr; in stubAndPointerRangesOk() 25 ExecutorAddr LastStub = FirstStub + ((NumStubs - 1) * ORCABI::StubSize); in stubAndPointerRangesOk() 26 ExecutorAddr FirstPointer = PointerBlockAddr; in stubAndPointerRangesOk() 27 ExecutorAddr LastPointer = FirstPointer + ((NumStubs - 1) * ORCABI::StubSize); in stubAndPointerRangesOk() 47 ExecutorAddr ResolverTargetAddress, in writeResolverCode() 48 ExecutorAddr ReentryFnAddr, in writeResolverCode() 49 ExecutorAddr ReentryCtxAddr) { in writeResolverCode() 138 ExecutorAddr TrampolineBlockTargetAddress, in writeTrampolines() [all …]
|
H A D | ExecutorProcessControl.cpp | 44 this->JDI = {ExecutorAddr::fromPtr(jitDispatchViaWrapperFunctionManager), in SelfExecutorProcessControl() 45 ExecutorAddr::fromPtr(this)}; in SelfExecutorProcessControl() 50 ExecutorAddr::fromPtr(&llvm_orc_registerEHFrameSectionWrapper); in SelfExecutorProcessControl() 52 ExecutorAddr::fromPtr(&llvm_orc_deregisterEHFrameSectionWrapper); in SelfExecutorProcessControl() 84 return ExecutorAddr::fromPtr(Dylib.getOSSpecificHandle()); in loadDylib() 109 {ExecutorAddr::fromPtr(Addr), JITSymbolFlags::Exported}); in lookupSymbolsAsync() 117 SelfExecutorProcessControl::runAsMain(ExecutorAddr MainFnAddr, in runAsMain() 124 SelfExecutorProcessControl::runAsVoidFunction(ExecutorAddr VoidFnAddr) { in runAsVoidFunction() 130 SelfExecutorProcessControl::runAsIntFunction(ExecutorAddr IntFnAddr, int Arg) { in runAsIntFunction() 135 void SelfExecutorProcessControl::callWrapperAsync(ExecutorAddr WrapperFnAddr, in callWrapperAsync() [all …]
|
H A D | LazyReexports.cpp | 20 ExecutorAddr ErrorHandlerAddr, in LazyCallThroughManager() 24 Expected<ExecutorAddr> LazyCallThroughManager::getCallThroughTrampoline( in getCallThroughTrampoline() 40 ExecutorAddr LazyCallThroughManager::reportCallThroughError(Error Err) { in reportCallThroughError() 46 LazyCallThroughManager::findReexport(ExecutorAddr TrampolineAddr) { in findReexport() 56 Error LazyCallThroughManager::notifyResolved(ExecutorAddr TrampolineAddr, in notifyResolved() 57 ExecutorAddr ResolvedAddr) { in notifyResolved() 72 ExecutorAddr TrampolineAddr, in resolveTrampolineLandingAddress() 88 ExecutorAddr LandingAddr = (*Result)[SymbolName].getAddress(); in resolveTrampolineLandingAddress() 108 ExecutorAddr ErrorHandlerAddr) { in createLocalLazyCallThroughManager() 191 StubSym = Alias.first](ExecutorAddr ResolvedAddr) -> Error { in materialize()
|
/freebsd/contrib/llvm-project/llvm/lib/ExecutionEngine/Orc/TargetProcess/ |
H A D | OrcRTBootstrap.cpp | 52 [](ExecutorAddr MainAddr, in runAsMainWrapper() 63 [](ExecutorAddr MainAddr) -> int32_t { in runAsVoidFunctionWrapper() 73 [](ExecutorAddr MainAddr, int32_t Arg) -> int32_t { in runAsIntFunctionWrapper() 80 void addTo(StringMap<ExecutorAddr> &M) { in addTo() 81 M[rt::MemoryWriteUInt8sWrapperName] = ExecutorAddr::fromPtr( in addTo() 84 M[rt::MemoryWriteUInt16sWrapperName] = ExecutorAddr::fromPtr( in addTo() 87 M[rt::MemoryWriteUInt32sWrapperName] = ExecutorAddr::fromPtr( in addTo() 90 M[rt::MemoryWriteUInt64sWrapperName] = ExecutorAddr::fromPtr( in addTo() 94 ExecutorAddr::fromPtr(&writeBuffersWrapper); in addTo() 96 ExecutorAddr::fromPtr(&llvm_orc_registerEHFrameSectionWrapper); in addTo() [all …]
|
H A D | SimpleExecutorDylibManager.cpp | 38 auto H = ExecutorAddr::fromPtr(DL.getOSSpecificHandle()); in open() 74 Result.push_back({ExecutorAddr::fromPtr(Addr), JITSymbolFlags::Exported}); in lookup() 94 StringMap<ExecutorAddr> &M) { in addBootstrapSymbols() 95 M[rt::SimpleExecutorDylibManagerInstanceName] = ExecutorAddr::fromPtr(this); in addBootstrapSymbols() 97 ExecutorAddr::fromPtr(&openWrapper); in addBootstrapSymbols() 99 ExecutorAddr::fromPtr(&lookupWrapper); in addBootstrapSymbols()
|
H A D | ExecutorSharedMemoryMapperService.cpp | 52 Expected<std::pair<ExecutorAddr, std::string>> 132 return std::make_pair(ExecutorAddr::fromPtr(Addr), in reserve() 141 Expected<ExecutorAddr> ExecutorSharedMemoryMapperService::initialize( in initialize() 142 ExecutorAddr Reservation, tpctypes::SharedMemoryFinalizeRequest &FR) { in initialize() 145 ExecutorAddr MinAddr(~0ULL); in initialize() 207 const std::vector<ExecutorAddr> &Bases) { in deinitialize() 236 const std::vector<ExecutorAddr> &Bases) { in release() 241 std::vector<ExecutorAddr> AllocAddrs; in release() 303 std::vector<ExecutorAddr> ReservationAddrs; in shutdown() 306 ReservationAddrs.push_back(ExecutorAddr::fromPtr(R.getFirst())); in shutdown() [all …]
|
H A D | SimpleRemoteEPCServer.cpp | 56 StringMap<ExecutorAddr> SimpleRemoteEPCServer::defaultBootstrapSymbols() { in defaultBootstrapSymbols() 57 StringMap<ExecutorAddr> DBS; in defaultBootstrapSymbols() 64 ExecutorAddr TagAddr, in handleMessage() 153 uint64_t SeqNo, ExecutorAddr TagAddr, in sendMessage() 191 StringMap<ExecutorAddr> BootstrapSymbols) { in sendSetupMessage() 209 EI.BootstrapSymbols[ExecutorSessionObjectName] = ExecutorAddr::fromPtr(this); in sendSetupMessage() 210 EI.BootstrapSymbols[DispatchFnName] = ExecutorAddr::fromPtr(jitDispatchEntry); in sendSetupMessage() 212 ExecutorAddr::fromPtr(&llvm_orc_registerEHFrameSectionWrapper); in sendSetupMessage() 214 ExecutorAddr::fromPtr(&llvm_orc_deregisterEHFrameSectionWrapper); in sendSetupMessage() 225 return sendMessage(SimpleRemoteEPCOpcode::Setup, 0, ExecutorAddr(), in handleResult() [all...] |
H A D | SimpleExecutorMemoryManager.cpp | 24 Expected<ExecutorAddr> SimpleExecutorMemoryManager::allocate(uint64_t Size) { in allocate() 33 return ExecutorAddr::fromPtr(MB.base()); in allocate() 37 ExecutorAddr Base(~0ULL); in finalize() 71 ExecutorAddr AllocEnd = Base + ExecutorAddrDiff(AllocSize); in finalize() 119 ExecutorAddr SegEnd = Seg.Addr + ExecutorAddrDiff(Seg.Size); in finalize() 152 const std::vector<ExecutorAddr> &Bases) { in deallocate() 201 StringMap<ExecutorAddr> &M) { in addBootstrapSymbols() 202 M[rt::SimpleExecutorMemoryManagerInstanceName] = ExecutorAddr::fromPtr(this); in addBootstrapSymbols() 204 ExecutorAddr::fromPtr(&reserveWrapper); in addBootstrapSymbols() 206 ExecutorAddr::fromPtr(&finalizeWrapper); in addBootstrapSymbols() [all …]
|
/freebsd/contrib/llvm-project/compiler-rt/lib/orc/tests/unit/ |
H A D | executor_address_test.cpp | 25 ExecutorAddr Default; in TEST() 26 ExecutorAddr Null(0); in TEST() 27 ExecutorAddr NonNull(1); in TEST() 38 ExecutorAddr A1(1), A2(2); in TEST() 49 auto XAddr = ExecutorAddr::fromPtr(&X); in TEST() 60 auto FAddr = ExecutorAddr::fromPtr(F); in TEST() 75 ExecutorAddr EA = in TEST() 76 ExecutorAddr::fromPtr(TaggedPtr, ExecutorAddr::Untag(8, TagOffset)); in TEST() 81 EA.toPtr<void *>(ExecutorAddr::Tag(TagVal, TagOffset)); in TEST() 87 ExecutorAddr A0(0), A1(1), A2(2), A3(3); in TEST() [all …]
|
/freebsd/contrib/llvm-project/llvm/include/llvm/ExecutionEngine/Orc/TargetProcess/ |
H A D | ExecutorSharedMemoryMapperService.h | 32 Expected<std::pair<ExecutorAddr, std::string>> reserve(uint64_t Size); 33 Expected<ExecutorAddr> initialize(ExecutorAddr Reservation, 36 Error deinitialize(const std::vector<ExecutorAddr> &Bases); 37 Error release(const std::vector<ExecutorAddr> &Bases); 40 void addBootstrapSymbols(StringMap<ExecutorAddr> &M) override; 46 using AllocationMap = DenseMap<ExecutorAddr, Allocation>; 50 std::vector<ExecutorAddr> Allocations;
|