diff options
author | Lang Hames <lhames@gmail.com> | 2017-09-05 03:34:09 +0000 |
---|---|---|
committer | Lang Hames <lhames@gmail.com> | 2017-09-05 03:34:09 +0000 |
commit | 617fc356378fd266643b73b2dc77812fedadc790 (patch) | |
tree | 117654cf5259a454b091561b236963eeae05b00c /clang/lib/CodeGen/CodeGenModule.cpp | |
parent | f9c9455d3f83ca0a50f0726bf26676e96273e9ee (diff) | |
download | bcm5719-llvm-617fc356378fd266643b73b2dc77812fedadc790.tar.gz bcm5719-llvm-617fc356378fd266643b73b2dc77812fedadc790.zip |
[ORC] Add a pair of ORC layers that forward object-layer operations via RPC.
This patch introduces RemoteObjectClientLayer and RemoteObjectServerLayer,
which can be used to forward ORC object-layer operations from a JIT stack in
the client to a JIT stack (consisting only of object-layers) in the server.
This is a new way to support remote-JITing in LLVM. The previous approach
(supported by OrcRemoteTargetClient and OrcRemoteTargetServer) used a
remote-mapping memory manager that sat "beneath" the JIT stack and sent
fully-relocated binary blobs to the server. The main advantage of the new
approach is that relocatable objects can be cached on the server and re-used
(if the code that they represent hasn't changed), whereas fully-relocated blobs
can not (since the addresses they have been permanently bound to will change
from run to run).
llvm-svn: 312511
Diffstat (limited to 'clang/lib/CodeGen/CodeGenModule.cpp')
0 files changed, 0 insertions, 0 deletions