+2007-04-12 Richard Sandiford <richard@codesourcery.com>
+
+ * elfxx-mips.c (mips_elf_calculate_relocation): Set DT_TEXTREL
+ when creating a __GOTT_BASE__ or __GOTT_INDEX__ relocation
+ in a read-only section.
+ (_bfd_mips_elf_check_relocs): Likewise.
+
2007-04-12 Bob Wilson <bob.wilson@acm.org>
* elf32-xtensa.c (xtensa_is_insntable_section): New.
outrel.r_info = ELF32_R_INFO (h->root.dynindx, r_type);
outrel.r_addend = addend;
bfd_elf32_swap_reloca_out (abfd, &outrel, loc);
+
+ /* If we've written this relocation for a readonly section,
+ we need to set DF_TEXTREL again, so that we do not delete the
+ DT_TEXTREL tag. */
+ if (MIPS_ELF_READONLY_SECTION (input_section))
+ info->flags |= DF_TEXTREL;
+
*valuep = 0;
return bfd_reloc_ok;
}
return FALSE;
}
mips_elf_allocate_dynamic_relocations (dynobj, info, 1);
+ if (MIPS_ELF_READONLY_SECTION (sec))
+ /* We tell the dynamic linker that there are
+ relocations against the text segment. */
+ info->flags |= DF_TEXTREL;
}
}
else if (r_type == R_MIPS_CALL_LO16
+2007-04-12 Richard Sandiford <richard@codesourcery.com>
+
+ * ld-mips-elf/vxworks1-lib.td: New test.
+ * ld-mips-elf/mips-elf.exp: Run it.
+
2007-04-05 H.J. Lu <hongjiu.lu@intel.com>
PR ld/4304
{"VxWorks shared library test 1" "-shared -Tvxworks1.ld"
"-mips2" {vxworks1-lib.s}
{{readelf --relocs vxworks1-lib.rd} {objdump -dr vxworks1-lib.dd}
- {readelf --symbols vxworks1-lib.nd}}
+ {readelf --symbols vxworks1-lib.nd} {readelf -d vxworks1-lib.td}}
"libvxworks1.so"}
{"VxWorks executable test 1 (dynamic)" \
"tmpdir/libvxworks1.so -Tvxworks1.ld -q --force-dynamic"
--- /dev/null
+#...
+ 0x0+16 \(TEXTREL\) +0x0
+#pass