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
10 lines
172 B
Makefile
10 lines
172 B
Makefile
CXX_SOURCES := main.cpp
|
|
USE_LIBDL := 1
|
|
|
|
lib_b:
|
|
$(MAKE) -f $(MAKEFILE_RULES) \
|
|
DYLIB_ONLY=YES DYLIB_CXX_SOURCES=b.cpp DYLIB_NAME=lib_b
|
|
all: lib_b
|
|
|
|
include Makefile.rules
|