Add API to set page size compat mode

Adding APIs in libdl to set linker global which will be used to set the page size compat mode for particular app.

Test: atest bionic-unit-tests
Test: atest CtsBionicTestCases
Bug: 371049373

Change-Id: I20f0fe9ece5db833568edf27ec268edf999f1741
diff --git a/linker/linker_phdr_16kib_compat.cpp b/linker/linker_phdr_16kib_compat.cpp
index a4d8459..bad20ba 100644
--- a/linker/linker_phdr_16kib_compat.cpp
+++ b/linker/linker_phdr_16kib_compat.cpp
@@ -42,10 +42,20 @@
 
 #include <string>
 
+static bool g_enable_16kb_app_compat;
+
 static inline bool segment_contains_prefix(const ElfW(Phdr)* segment, const ElfW(Phdr)* prefix) {
   return segment && prefix && segment->p_vaddr == prefix->p_vaddr;
 }
 
+void set_16kb_appcompat_mode(bool enable_app_compat) {
+  g_enable_16kb_app_compat = enable_app_compat;
+}
+
+bool get_16kb_appcompat_mode() {
+  return g_enable_16kb_app_compat;
+}
+
 /*
  * Returns true if the ELF contains at most 1 RELRO segment; and populates @relro_phdr
  * with the relro phdr or nullptr if none.