aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Transforms/Utils/Local.cpp
diff options
context:
space:
mode:
authorEmre Kultursay <emrekultursay@google.com>2021-09-27 12:56:53 +0200
committerPavel Labath <pavel@labath.sk>2021-09-27 13:27:27 +0200
commitd5629b5d4d41ce71703105362f58dfcdbb6cc175 (patch)
treeaa6200204c3b4c540c09db8245d733dbd957fb76 /llvm/lib/Transforms/Utils/Local.cpp
parent7424deb7433180ecb1c4722259f151c5c252be64 (diff)
downloadllvm-d5629b5d4d41ce71703105362f58dfcdbb6cc175.zip
llvm-d5629b5d4d41ce71703105362f58dfcdbb6cc175.tar.gz
llvm-d5629b5d4d41ce71703105362f58dfcdbb6cc175.tar.bz2
Fix rendezvous for rebase_exec=true case
When rebase_exec=true in DidAttach(), all modules are loaded before the rendezvous breakpoint is set, which means the LoadInterpreterModule() method is not called and m_interpreter_module is not initialized. This causes the very first rendezvous breakpoint hit with m_initial_modules_added=false to accidentally unload the module_sp that corresponds to the dynamic loader. This bug (introduced in D92187) was causing the rendezvous mechanism to not work in Android 28. The mechanism works fine on older/newer versions of Android. Test: Verified rendezvous on Android 28 and 29 Test: Added dlopen test Reviewed By: labath Differential Revision: https://reviews.llvm.org/D109797
Diffstat (limited to 'llvm/lib/Transforms/Utils/Local.cpp')
0 files changed, 0 insertions, 0 deletions