LLVM
15.0.0git
|
Namespaces | |
detail | |
Functions | |
size_t | numDeallocActions (const AllocActions &AAs) |
Returns the number of deallocaton actions in the given AllocActions array. More... | |
Expected< std::vector< WrapperFunctionCall > > | runFinalizeActions (AllocActions &AAs) |
Run finalize actions. More... | |
Error | runDeallocActions (ArrayRef< WrapperFunctionCall > DAs) |
Run deallocation actions. More... | |
template<typename RetT , typename ClassT , typename... ArgTs> | |
MethodWrapperHandler< RetT, ClassT, ArgTs... > | makeMethodWrapperHandler (RetT(ClassT::*Method)(ArgTs...)) |
Create a MethodWrapperHandler object from the given method pointer. More... | |
using llvm::orc::shared::AllocActions = typedef std::vector<AllocActionCallPair> |
A vector of allocation actions to be run for this allocation.
Finalize allocations will be run in order at finalize time. Dealloc actions will be run in reverse order at deallocation time.
Definition at line 44 of file AllocationActions.h.
using llvm::orc::shared::SPSAllocActionCallPair = typedef SPSTuple<SPSWrapperFunctionCall, SPSWrapperFunctionCall> |
Definition at line 74 of file AllocationActions.h.
using llvm::orc::shared::SPSELFJITDylibDeinitializers = typedef SPSEmpty |
Definition at line 305 of file ELFNixPlatform.h.
using llvm::orc::shared::SPSELFJITDylibDeinitializerSequence = typedef SPSSequence<SPSELFJITDylibDeinitializers> |
Definition at line 308 of file ELFNixPlatform.h.
using llvm::orc::shared::SPSELFNixJITDylibInitializers = typedef SPSTuple<SPSString, SPSExecutorAddr, SPSNamedExecutorAddrRangeSequenceMap> |
Definition at line 277 of file ELFNixPlatform.h.
using llvm::orc::shared::SPSELFNixJITDylibInitializerSequence = typedef SPSSequence<SPSELFNixJITDylibInitializers> |
Definition at line 280 of file ELFNixPlatform.h.
using llvm::orc::shared::SPSELFPerObjectSectionsToRegister = typedef SPSTuple<SPSExecutorAddrRange, SPSExecutorAddrRange> |
Definition at line 248 of file ELFNixPlatform.h.
using llvm::orc::shared::SPSExecutorAddrRange = typedef SPSTuple<SPSExecutorAddr, SPSExecutorAddr> |
Definition at line 207 of file ExecutorAddress.h.
Definition at line 229 of file ExecutorAddress.h.
using llvm::orc::shared::SPSFinalizeRequest = typedef SPSTuple<SPSSequence<SPSSegFinalizeRequest>, SPSSequence<SPSAllocActionCallPair> > |
Definition at line 132 of file TargetProcessControlTypes.h.
using llvm::orc::shared::SPSLoadDylibSignature = typedef SPSExpected<SPSExecutorAddr>(SPSExecutorAddr, SPSString, uint64_t) |
Definition at line 225 of file SimpleRemoteEPCUtils.h.
using llvm::orc::shared::SPSLookupSymbolsSignature = typedef SPSExpected<SPSSequence<SPSSequence<SPSExecutorAddr> >>( SPSExecutorAddr, SPSSequence<SPSRemoteSymbolLookup>) |
Definition at line 229 of file SimpleRemoteEPCUtils.h.
using llvm::orc::shared::SPSMachOJITDylibDepInfo = typedef SPSTuple<bool, SPSSequence<SPSExecutorAddr> > |
Definition at line 29 of file MachOPlatform.cpp.
using llvm::orc::shared::SPSMachOJITDylibDepInfoMap = typedef SPSSequence<SPSTuple<SPSExecutorAddr, SPSMachOJITDylibDepInfo> > |
Definition at line 31 of file MachOPlatform.cpp.
using llvm::orc::shared::SPSMap = typedef SPSSequence<SPSTuple<SPSTagT1, SPSTagT2> > |
SPS tag type for maps.
SPS maps are just sequences of (Key, Value) tuples.
Definition at line 213 of file SimplePackedSerialization.h.
using llvm::orc::shared::SPSMemoryAccessBufferWrite = typedef SPSTuple<SPSExecutorAddr, SPSSequence<char> > |
Definition at line 142 of file TargetProcessControlTypes.h.
Definition at line 138 of file TargetProcessControlTypes.h.
Definition at line 139 of file TargetProcessControlTypes.h.
Definition at line 140 of file TargetProcessControlTypes.h.
using llvm::orc::shared::SPSMemoryAccessUInt8Write = typedef SPSMemoryAccessUIntWrite<uint8_t> |
Definition at line 137 of file TargetProcessControlTypes.h.
using llvm::orc::shared::SPSMemoryAccessUIntWrite = typedef SPSTuple<SPSExecutorAddr, T> |
Definition at line 135 of file TargetProcessControlTypes.h.
using llvm::orc::shared::SPSNamedExecutorAddrRangeSequence = typedef SPSSequence<SPSTuple<SPSString, SPSExecutorAddrRange> > |
Definition at line 236 of file MachOPlatform.h.
using llvm::orc::shared::SPSNamedExecutorAddrRangeSequenceMap = typedef SPSSequence<SPSTuple<SPSString, SPSExecutorAddrRangeSequence> > |
Definition at line 274 of file ELFNixPlatform.h.
using llvm::orc::shared::SPSRemoteSymbolLookup = typedef SPSTuple<uint64_t, SPSRemoteSymbolLookupSet> |
Definition at line 159 of file SimpleRemoteEPCUtils.h.
using llvm::orc::shared::SPSRemoteSymbolLookupSet = typedef SPSSequence<SPSRemoteSymbolLookupSetElement> |
Definition at line 157 of file SimpleRemoteEPCUtils.h.
using llvm::orc::shared::SPSRemoteSymbolLookupSetElement = typedef SPSTuple<SPSString, bool> |
Definition at line 155 of file SimpleRemoteEPCUtils.h.
using llvm::orc::shared::SPSSegFinalizeRequest = typedef SPSTuple<SPSMemoryProtectionFlags, SPSExecutorAddr, uint64_t, SPSSequence<char> > |
Definition at line 129 of file TargetProcessControlTypes.h.
using llvm::orc::shared::SPSSimpleRemoteEPCExecutorInfo = typedef SPSTuple<SPSString, uint64_t, SPSSequence<SPSTuple<SPSString, SPSExecutorAddr> >> |
Tuple containing target triple, page size, and bootstrap symbols.
Definition at line 164 of file SimpleRemoteEPCUtils.h.
using llvm::orc::shared::SPSString = typedef SPSSequence<char> |
SPS tag type for strings, which are equivalent to sequences of chars.
Definition at line 207 of file SimplePackedSerialization.h.
using llvm::orc::shared::SPSWrapperFunctionCall = typedef SPSTuple<SPSExecutorAddr, SPSSequence<char> > |
Definition at line 707 of file WrapperFunctionUtils.h.
MethodWrapperHandler<RetT, ClassT, ArgTs...> llvm::orc::shared::makeMethodWrapperHandler | ( | RetT(ClassT::*)(ArgTs...) | Method | ) |
Create a MethodWrapperHandler object from the given method pointer.
Definition at line 617 of file WrapperFunctionUtils.h.
|
inline |
Returns the number of deallocaton actions in the given AllocActions array.
This can be useful if clients want to pre-allocate room for deallocation actions with the rest of their memory.
Definition at line 50 of file AllocationActions.h.
References llvm::count_if(), and P.
Referenced by runFinalizeActions().
Error llvm::orc::shared::runDeallocActions | ( | ArrayRef< WrapperFunctionCall > | DAs | ) |
Run deallocation actions.
Dealloc actions will be run in reverse order (from last element of DAs to first).
Definition at line 33 of file AllocationActions.cpp.
Expected< std::vector< WrapperFunctionCall > > llvm::orc::shared::runFinalizeActions | ( | AllocActions & | AAs | ) |
Run finalize actions.
If any finalize action fails then the corresponding dealloc actions will be run in reverse order (not including the deallocation action for the failed finalize action), and the error for the failing action will be returned.
If all finalize actions succeed then a vector of deallocation actions will be returned. The dealloc actions should be run by calling runDeallocationActions. If this function succeeds then the AA argument will be cleared before the function returns.
Definition at line 16 of file AllocationActions.cpp.
References numDeallocActions().
Referenced by llvm::orc::InProcessMemoryMapper::initialize().