Finish cross-process JIT work, and clean up previous work.
authorNate Begeman <natebegeman@mac.com>
Sat, 7 Mar 2009 06:41:19 +0000 (06:41 +0000)
committerNate Begeman <natebegeman@mac.com>
Sat, 7 Mar 2009 06:41:19 +0000 (06:41 +0000)
commitb9c6c9bfe410bbea357503872ce662d6838026ce
tree1c53eb906b35a3dd5047a53df76312700f4e7990
parent3112581441cd22ac955b1af2d08effe3bab975da
Finish cross-process JIT work, and clean up previous work.

1. When the JIT is asked to remove a function, updating it's
   mapping to 0, we invalidate any function stubs used only
   by that function.  Now, also invalidate the JIT's mapping
   from the GV the stub pointed to, to the address of the GV.

2. When dlsym stubs for cross-process JIT are enabled, do not
   abort just because a named function cannot be found in the
   JIT's process.

3. Fix various assumptions about when it is ok to use the lazy
   resolver when non-lazy JITing is enabled.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@66324 91177308-0d34-0410-b5e6-96231b3b80d8
lib/ExecutionEngine/JIT/JIT.cpp
lib/ExecutionEngine/JIT/JITEmitter.cpp