[MIPS] Set DT_DEBUG dyntab entry if it is writable

This is primarily for MIPS exutables that do not have a
DT_MIPS_RLD_MAP entry.

Change-Id: I4c221d92debcfed961eeee2515123f3fb21ec8e6
Signed-off-by: Chris Dearman <chris@mips.com>
diff --git a/linker/linker_phdr.cpp b/linker/linker_phdr.cpp
index 1990366..94260fa 100644
--- a/linker/linker_phdr.cpp
+++ b/linker/linker_phdr.cpp
@@ -542,6 +542,7 @@
  * Output:
  *   dynamic       -> address of table in memory (NULL on failure).
  *   dynamic_count -> number of items in table (0 on failure).
+ *   dynamic_flags -> protection flags for section (unset on failure)
  * Return:
  *   void
  */
@@ -550,7 +551,8 @@
                                int               phdr_count,
                                Elf32_Addr        load_bias,
                                Elf32_Addr**      dynamic,
-                               size_t*           dynamic_count)
+                               size_t*           dynamic_count,
+                               Elf32_Word*       dynamic_flags)
 {
     const Elf32_Phdr* phdr = phdr_table;
     const Elf32_Phdr* phdr_limit = phdr + phdr_count;
@@ -564,6 +566,9 @@
         if (dynamic_count) {
             *dynamic_count = (unsigned)(phdr->p_memsz / 8);
         }
+        if (dynamic_flags) {
+            *dynamic_flags = phdr->p_flags;
+        }
         return;
     }
     *dynamic = NULL;