Revamp the elftls_dl.dtv_resize test
Split the test out into a separate executable to reduce the number of
ELF modules in the DTV, so that the test can more easily observe the
behavior of loading a module that requires doubling the DTV size. We
want to see the DTV expand from 5 entries (8 words w/header) to
13 entries (16 words w/header).
Make the test work with an initial number of ELF TLS modules between
2 and 4.
Bug: http://b/175635923
Test: bionic-unit-tests
Change-Id: I1e91b4462987a5c80e13838669c359053f5a62f6
diff --git a/tests/libs/Android.bp b/tests/libs/Android.bp
index 06ee132..f640552 100644
--- a/tests/libs/Android.bp
+++ b/tests/libs/Android.bp
@@ -123,6 +123,39 @@
],
}
+cc_test_library {
+ name: "libtest_elftls_dynamic_filler_4",
+ defaults: ["bionic_testlib_defaults"],
+ srcs: ["elftls_dynamic_filler.cpp"],
+ cflags: [
+ "-DTLS_FILLER=400",
+ ],
+}
+
+cc_test_library {
+ name: "libtest_elftls_dynamic_filler_5",
+ defaults: ["bionic_testlib_defaults"],
+ srcs: ["elftls_dynamic_filler.cpp"],
+ cflags: [
+ "-DTLS_FILLER=500",
+ ],
+}
+
+cc_test {
+ name: "elftls_dtv_resize_helper",
+ defaults: [
+ "bionic_testlib_defaults",
+ "bionic_targets_only",
+ ],
+ srcs: ["elftls_dtv_resize_helper.cpp"],
+ include_dirs: [
+ "bionic/libc",
+ ],
+ static_libs: [
+ "libbase",
+ ],
+}
+
// -----------------------------------------------------------------------------
// Library to test gnu-styled hash
// -----------------------------------------------------------------------------