llvm-project/llvm/tools
Lang Hames 78b083dbb7 [ORC] Add finalization & deallocation actions, SimpleExecutorMemoryManager class
Finalization and deallocation actions are a key part of the upcoming
JITLinkMemoryManager redesign: They generalize the existing finalization and
deallocate concepts (basically "copy-and-mprotect", and "munmap") to include
support for arbitrary registration and deregistration of parts of JIT linked
code. This allows us to register and deregister eh-frames, TLV sections,
language metadata, etc. using regular memory management calls with no additional
IPC/RPC overhead, which should both improve JIT performance and simplify
interactions between ORC and the ORC runtime.

The SimpleExecutorMemoryManager class provides executor-side support for memory
management operations, including finalization and deallocation actions.

This support is being added in advance of the rest of the memory manager
redesign as it will simplify the introduction of an EPC based
RuntimeDyld::MemoryManager (since eh-frame registration/deregistration will be
expressible as actions). The new RuntimeDyld::MemoryManager will in turn allow
us to remove older remote allocators that are blocking the rest of the memory
manager changes.
2021-09-17 09:55:45 +10:00
..
bugpoint [clangd, llvm] Remove redundant calls to c_str() (NFC) 2021-09-02 09:07:13 -07:00
bugpoint-passes Add missed rename of getFnAttributes() -> getFnAttrs() 2021-08-13 11:29:20 -07:00
dsymutil [OptTable] Rename PrintHelp to printHelp 2021-06-24 14:47:03 -07:00
gold [LTO] Add SelectionKind to IRSymtab and use it in ld.lld/LLVMgold 2021-07-20 13:22:00 -07:00
llc [llc] Initialize context for parsing options 2021-08-28 22:37:26 +02:00
lli [llvm] Replace LLVM_ATTRIBUTE_NORETURN with C++11 [[noreturn]] 2021-07-28 09:31:14 -07:00
llvm-ar [llvm-ar][nfc] Reword help message to be less ambiguous on what p and t do. 2021-08-31 17:48:04 -04:00
llvm-as [OpaquePtr] Introduce option to force all pointers to be opaque pointers 2021-06-24 13:32:31 -07:00
llvm-as-fuzzer
llvm-bcanalyzer Use ManagedStatic and lazy initialization of cl::opt in libSupport to make it free of global initializer 2021-07-16 07:38:16 +00:00
llvm-c-test [DebugInfo] Enhance DIImportedEntity to accept children entities 2021-09-16 10:41:55 +05:30
llvm-cat [tools] Use llvm::append_range (NFC) 2021-01-05 21:15:56 -08:00
llvm-cfi-verify [llvm][tools] Hide unrelated llvm-cfi-verify options 2021-07-16 10:43:52 +02:00
llvm-config
llvm-cov [llvm-cov] Add error for invalid -path-equivalence format 2021-09-10 18:34:37 -07:00
llvm-cvtres [OptTable] Refine how `printHelp` treats empty help texts 2021-08-19 09:30:15 +00:00
llvm-cxxdump [llvm] Replace LLVM_ATTRIBUTE_NORETURN with C++11 [[noreturn]] 2021-07-28 09:31:14 -07:00
llvm-cxxfilt [llvm-cxxfilt] Switch command line parsing from llvm::cl to OptTable 2021-07-09 10:10:45 -07:00
llvm-cxxmap [llvm][tools] Hide more unrelated tool options 2021-07-20 13:27:33 +02:00
llvm-diff [llvm-diff] correct variable typo 2021-08-12 11:29:48 -07:00
llvm-dis [llvm][tools] Hide more unrelated tool options 2021-07-20 13:27:33 +02:00
llvm-dwarfdump [DWARF] Don't process .debug_info relocations for DWO Context 2021-08-02 10:41:47 -07:00
llvm-dwp [DWP] Refactoring llvm-dwp in to a library part 2 2021-07-22 14:23:29 -07:00
llvm-exegesis [Exegesis] Native clusterization: sub-partition by sched class id 2021-09-07 17:54:37 +03:00
llvm-extract llvmbuildectomy - replace llvm-build by plain cmake 2020-11-13 10:35:24 +01:00
llvm-go
llvm-gsymutil [clangd, llvm] Remove redundant calls to c_str() (NFC) 2021-09-02 09:07:13 -07:00
llvm-ifs [ifs] Add option to hide undefined symbols 2021-08-27 11:15:56 -07:00
llvm-isel-fuzzer
llvm-itanium-demangle-fuzzer
llvm-jitlink [ORC] Add finalization & deallocation actions, SimpleExecutorMemoryManager class 2021-09-17 09:55:45 +10:00
llvm-jitlistener [MCJIT] Profile the code generated by MCJIT engine using Intel VTune profiler 2020-11-16 19:28:14 +11:00
llvm-libtool-darwin Use ManagedStatic and lazy initialization of cl::opt in libSupport to make it free of global initializer 2021-07-16 07:38:16 +00:00
llvm-link [llvm][tools] Hide more unrelated LLVM tool options 2021-07-21 09:14:04 +02:00
llvm-lipo [llvm] Replace LLVM_ATTRIBUTE_NORETURN with C++11 [[noreturn]] 2021-07-28 09:31:14 -07:00
llvm-lto [clangd, llvm] Remove redundant calls to c_str() (NFC) 2021-09-02 09:07:13 -07:00
llvm-lto2 [LTO] Add SelectionKind to IRSymtab and use it in ld.lld/LLVMgold 2021-07-20 13:22:00 -07:00
llvm-mc [MC] Add MCSubtargetInfo to MCAlignFragment 2021-09-07 15:46:19 +01:00
llvm-mc-assemble-fuzzer [llvm-mc-assemble-fuzzer] Initialize MCTargetOptions. 2021-07-22 14:36:37 +08:00
llvm-mc-disassemble-fuzzer
llvm-mca [MCA][NFC] Removed unused method, and fixed a coverity issue. 2021-08-27 12:49:49 +01:00
llvm-microsoft-demangle-fuzzer
llvm-ml [MC] Add MCSubtargetInfo to MCAlignFragment 2021-09-07 15:46:19 +01:00
llvm-modextract [llvm][tools] Hide more unrelated LLVM tool options 2021-07-21 09:14:04 +02:00
llvm-mt Make WindowsManifestMerger::merge() take a MemoryBufferRef 2021-08-24 16:39:20 -04:00
llvm-nm [Object] Move llvm-nm's symbol version utility to ELFObjectFile::readDynsymVersions 2021-08-17 09:06:39 -07:00
llvm-objcopy [llvm-objcopy][COFF] Fix test for debug dir presence 2021-09-10 09:57:18 +01:00
llvm-objdump [llvm-objdump] Fix 'llvm-objdump -dr' for executables with relocations 2021-09-07 11:24:24 -07:00
llvm-opt-fuzzer [NewPM] Hide pass manager debug logging behind -debug-pass-manager-verbose 2021-05-07 21:51:47 -07:00
llvm-opt-report [SystemZ][z/OS][Windows] Add new OF_TextWithCRLF flag and use this flag instead of OF_Text 2021-04-06 07:23:31 -04:00
llvm-pdbutil [Support] Convert BinaryStream class zoo to 64-bit offsets 2021-09-16 19:14:52 -04:00
llvm-profdata [llvm-profdata] Fix assertion from invalid iterator 2021-09-01 14:42:00 -07:00
llvm-profgen [llvm-profgen] Use context-sensitive byte size cost for preinliner decisions by default 2021-09-16 10:36:12 -07:00
llvm-rc [llvm-rc] Allow specifying language with a leading 0x prefix 2021-08-05 10:19:55 +03:00
llvm-readobj [llvm-readobj] [COFF] Resolve relocations pointing at section symbols for arm64 too 2021-09-14 11:04:46 +03:00
llvm-reduce [llvm-reduce] Check if module data strings are empty before attempting to reduce 2021-08-24 10:23:00 -07:00
llvm-rtdyld [RuntimeDyld] Guard UsedTLSStorage to x86 ELF only 2021-09-07 01:20:38 +00:00
llvm-rust-demangle-fuzzer Fix implicit dependency on <string> header. NFCI. 2021-06-11 10:24:14 +01:00
llvm-shlib [llvm-shlib] Fix the i686 MSVC triple check for listing symbols to export in LLVM-C.dll 2021-09-11 19:50:03 +03:00
llvm-sim [IRSim] Adding basic implementation of llvm-sim. 2021-06-23 14:38:58 -05:00
llvm-size [llvm-size] Switch command line parsing from llvm::cl to OptTable 2021-07-09 10:26:53 -07:00
llvm-special-case-list-fuzzer
llvm-split [llvm][tools] Hide remaining unrelated llvm- tool options 2021-07-22 09:47:55 +02:00
llvm-stress [APInt] Normalize naming on keep constructors / predicate methods. 2021-09-09 09:50:24 -07:00
llvm-strings [llvm] Replace LLVM_ATTRIBUTE_NORETURN with C++11 [[noreturn]] 2021-07-28 09:31:14 -07:00
llvm-symbolizer [llvm-symbolizer] Remove one-dash long options 2021-07-23 08:35:45 -07:00
llvm-tapi-diff [llvm-tapi-diff] Wrap empty string around StringLiteral NFC 2021-06-23 11:41:03 -07:00
llvm-undname [llvm][tools] Hide remaining unrelated llvm- tool options 2021-07-22 09:47:55 +02:00
llvm-xray llvm-xray {convert,extract}: Add --demangle 2021-08-24 13:35:19 -07:00
llvm-yaml-numeric-parser-fuzzer [llvm] NFC: Cleanup llvm-yaml-numeric-parser-fuzzer 2021-02-15 14:52:53 +01:00
llvm-yaml-parser-fuzzer [llvm] Use llvm::erase_value and llvm::erase_if (NFC) 2021-01-02 09:24:15 -08:00
lto [LTO][Legacy] Add new API to check presence of ctor/dtor functions. 2021-07-28 12:41:56 +00:00
msbuild
obj2yaml [obj2yaml][XCOFF] Dump sections 2021-09-15 05:16:33 +00:00
opt [opt] Remove some legacy PM flags 2021-09-13 15:50:03 -07:00
opt-viewer
remarks-shlib
sancov [MC] Refactor MCObjectFileInfo initialization and allow targets to create MCObjectFileInfo 2021-05-23 14:15:23 -07:00
sanstats [NFC] Reordering parameters in getFile and getFileOrSTDIN 2021-03-25 09:47:49 -04:00
split-file [split-file] Default to --no-leading-lines 2021-08-16 19:23:11 -07:00
verify-uselistorder [UseListOrder] Fix use list order for function operands 2021-09-07 20:59:12 +02:00
vfabi-demangle-fuzzer
xcode-toolchain
yaml2obj
CMakeLists.txt