llvm-project/llvm/tools
Lang Hames 9e68b734d6 [ORC] Refactor OrcRemoteTarget code to expose its RPC API, reduce
code duplication in the client, and improve error propagation.

This patch moves the OrcRemoteTarget rpc::Function declarations from
OrcRemoteTargetRPCAPI into their own namespaces under llvm::orc::remote so that
they can be used in new contexts (in particular, a remote-object-file adapter
layer that I will commit shortly).

Code duplication in OrcRemoteTargetClient (especially in loops processing the
code, rw-data and ro-data allocations) is removed by moving the loop bodies
into their own functions.

Error propagation is (slightly) improved by adding an ErrorReporter functor to
the OrcRemoteTargetClient -- Errors that can't be returned (because they occur
in destructors, or behind stable APIs that don't provide error returns) can be
sent to the ErrorReporter instead. Some methods in the Client API are also
changed to make better use of the Expected class: returning Expected<T>s rather
than returning Errors and taking T&s to store the results.

llvm-svn: 312500
2017-09-04 20:54:46 +00:00
..
bugpoint Fix check-llvm on kernel 4.9+ with asan or msan 2017-09-01 01:47:34 +00:00
bugpoint-passes [CMake] bugpoint-passes depends on intrinsics_gen 2016-11-19 02:20:59 +00:00
dsymutil [dsymutil] Don't mark forward declarations as canonical. 2017-08-31 20:22:31 +00:00
gold [gold-plugin] Use more StringRef. No functionality change intended. 2017-08-10 19:28:00 +00:00
llc Delete Default and JITDefault code models 2017-08-03 02:16:21 +00:00
lli [ORC] Refactor OrcRemoteTarget code to expose its RPC API, reduce 2017-09-04 20:54:46 +00:00
llvm-ar Simplify writeArchive return type. 2017-08-30 22:11:03 +00:00
llvm-as [CMake] llvm-as depends on intrinsics_gen 2016-11-19 02:15:04 +00:00
llvm-as-fuzzer cmake: Invent add_llvm_fuzzer to set up fuzzer targets 2017-08-31 00:36:33 +00:00
llvm-bcanalyzer Bitcode: Include any strings added to the string table in the module hash. 2017-07-06 17:56:01 +00:00
llvm-c-test fix typos in comments and error messges; NFC 2017-07-13 06:48:39 +00:00
llvm-cat Bitcode: Add a string table to the bitcode format. 2017-04-17 17:51:36 +00:00
llvm-config [GlobalISel] Make GlobalISel a non-optional library. 2017-08-03 21:52:25 +00:00
llvm-cov [llvm-cov] Read in function names for filtering from a text file. 2017-08-31 09:11:31 +00:00
llvm-cvtres Revert "Revert "Revert "Revert "Switch external cvtres.exe for llvm's own resource library."""" 2017-07-08 03:06:10 +00:00
llvm-cxxdump Make the Error class constructor protected 2016-11-11 04:28:40 +00:00
llvm-cxxfilt c++filt: support COFF import thunks 2017-03-22 21:15:19 +00:00
llvm-diff [IR] Redesign the case iterator in SwitchInst to actually be an iterator 2017-04-12 07:27:28 +00:00
llvm-dis [ThinLTO] Fix ThinLTO crash while destroying context 2017-08-15 22:23:44 +00:00
llvm-dwarfdump [llvm-dwarfdump] Brief mode only dumps debug_info by default 2017-08-31 16:44:47 +00:00
llvm-dwp [llvm-dwp] Implement -e option 2017-09-02 08:19:01 +00:00
llvm-extract [llvm-extract] Add option for recursive extraction 2017-04-06 20:51:40 +00:00
llvm-go [llvm-go] parameterize $GOPATH construction 2016-07-27 03:21:51 +00:00
llvm-isel-fuzzer Move some CLI utils out of llvm-isel-fuzzer and into the library 2017-09-02 23:43:04 +00:00
llvm-jitlistener Search for llvm-symbolizer binary in the same directory as argv[0], before 2016-06-09 00:53:21 +00:00
llvm-link Re-apply r302108, "IR: Use pointers instead of GUIDs to represent edges in the module summary. NFCI." 2017-05-04 18:03:25 +00:00
llvm-lto Fix dangling StringRefs found by clang-tidy misc-dangling-handle check. 2017-07-04 15:13:02 +00:00
llvm-lto2 Delete Default and JITDefault code models 2017-08-03 02:16:21 +00:00
llvm-mc Don't pass the code model to MC 2017-08-02 20:32:26 +00:00
llvm-mc-assemble-fuzzer cmake: Invent add_llvm_fuzzer to set up fuzzer targets 2017-08-31 00:36:33 +00:00
llvm-mc-disassemble-fuzzer cmake: Invent add_llvm_fuzzer to set up fuzzer targets 2017-08-31 00:36:33 +00:00
llvm-mcmarkup Search for llvm-symbolizer binary in the same directory as argv[0], before 2016-06-09 00:53:21 +00:00
llvm-modextract Bitcode: Add a string table to the bitcode format. 2017-04-17 17:51:36 +00:00
llvm-mt llvm-mt: Merge manifest namespaces. 2017-08-19 00:37:41 +00:00
llvm-nm [llvm-nm] Fix output formatting of -f sysv for 64bit targets 2017-08-31 21:23:44 +00:00
llvm-objcopy Reland "[llvm] Add symbol table support to llvm-objcopy" 2017-08-29 02:12:03 +00:00
llvm-objdump Untabify. 2017-08-28 06:47:47 +00:00
llvm-opt-report [llvm-opt-report] Fix context-sensitive lines where nothing happened 2017-01-07 20:21:17 +00:00
llvm-pdbutil [llvm-pdbutil] Remove unused variables. 2017-09-02 00:09:43 +00:00
llvm-profdata [ProfileData] Add new option to dump topn hottest functions 2017-07-11 20:30:43 +00:00
llvm-rc [llvm-rc] Fix DIALOG(EX) parsing ability (parser, pt 5/8). 2017-08-29 20:03:18 +00:00
llvm-readobj [WebAssembly] Update relocation names to match spec 2017-09-01 17:32:01 +00:00
llvm-rtdyld Use delegation instead of inheritance. 2017-07-19 22:27:28 +00:00
llvm-shlib [Solaris] enable --whole-archive for shared-library build, disable --version-script for Solaris-ld 2017-07-19 16:07:51 +00:00
llvm-size llvm-size: remove leading dash in '-radix' option 2016-12-23 23:55:08 +00:00
llvm-split [CMake] llvm-split depends on intrinsics_gen 2016-11-18 23:20:38 +00:00
llvm-stress [Analysis] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes. Also affected in files (NFC). 2017-08-31 21:56:16 +00:00
llvm-strings llvm-strings: remove default for -Wcovered-switch-default 2017-01-21 02:52:29 +00:00
llvm-symbolizer DebugInfo: Provide option for explicitly specifying the name of the DWP file 2017-07-30 01:34:08 +00:00
llvm-xray Revert "[XRay][tools] Function call stack based analysis tooling for XRay traces" 2017-09-03 00:40:13 +00:00
lto Spelling mistakes in comments. NFCI. 2017-03-30 12:59:53 +00:00
msbuild Create msbuild only when using MSVC 2017-03-16 20:24:14 +00:00
obj2yaml Use delegation instead of inheritance. 2017-07-19 22:27:28 +00:00
opt [Analysis] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes. Also affected in files (NFC). 2017-08-31 21:56:16 +00:00
opt-viewer [opt-viewer] Listify `dict_items` for Py3 indexing 2017-08-14 04:16:43 +00:00
sancov [sancov] Fix broken links and displaced coloring in coverage-report-server.py 2017-03-20 14:06:04 +00:00
sanstats [sanstats] Print the correct line information. 2017-07-13 00:49:03 +00:00
verify-uselistorder [CMake] verify-uselistorder depends on intrinsics_gen 2016-11-18 23:30:58 +00:00
xcode-toolchain [CMake] Minor fix to regex in r279152 2016-08-18 21:36:36 +00:00
yaml2obj [WebAssembly] Update relocation names to match spec 2017-09-01 17:32:01 +00:00
CMakeLists.txt Fixup r271533, or check-clang didn't find llvm-lto as the target. 2016-06-02 20:39:24 +00:00
LLVMBuild.txt Reland "[LLVM][llvm-objcopy] Added basic plumbing to get things started" 2017-08-01 00:33:58 +00:00