From 5c79b11db972441a103aa6e573b8444a54dcf334 Mon Sep 17 00:00:00 2001 From: Roland McGrath Date: Mon, 26 Aug 2013 19:27:24 +0000 Subject: bfd/ * elf-nacl.c (nacl_modify_segment_map): Fix logic reordering the elf_segment_map list. If an executable segment is page-aligned but does not end with a full page, then append a fake section into the segment map entry that pads out the page. (nacl_final_write_processing): New function. Write the code fill laid out in nacl_modify_segment_map. * elf-nacl.h: Declare it. * elf32-arm.c (elf32_arm_nacl_final_write_processing): New function. (elf_backend_final_write_processing): Define it for NaCl backend. * elf32-i386.c (elf_backend_final_write_processing): Likewise. * elf64-x86-64.c (elf_backend_final_write_processing): Likewise. * elf-nacl.c (segment_eligible_for_headers): Rename MAXPAGESIZE parameter to MINPAGESIZE. (nacl_modify_segment_map): Use minpagesize instead of maxpagesize. * elf32-arm.c (ELF_MINPAGESIZE, ELF_COMMONPAGESIZE): Set to 0x10000 for NaCl targets. ld/testsuite/ * ld-x86-64/ilp32-4-nacl.d: Loosen .shstrtab line regexp to match any file offset. * ld-x86-64/tlsbin-nacl.rd: Update expected code segment PT_LOAD. * ld-x86-64/tlsbindesc-nacl.rd: Likewise. * ld-scripts/rgn-at3.d: XFAIL for *-*-nacl* targets. * ld-scripts/rgn-over8-ok.d: Likewise. --- bfd/ChangeLog | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'bfd/ChangeLog') diff --git a/bfd/ChangeLog b/bfd/ChangeLog index cc4d7fdc73..ebae60d7c8 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,23 @@ +2013-08-26 Roland McGrath + + * elf-nacl.c (nacl_modify_segment_map): Fix logic reordering the + elf_segment_map list. If an executable segment is page-aligned + but does not end with a full page, then append a fake section into + the segment map entry that pads out the page. + (nacl_final_write_processing): New function. Write the code fill + laid out in nacl_modify_segment_map. + * elf-nacl.h: Declare it. + * elf32-arm.c (elf32_arm_nacl_final_write_processing): New function. + (elf_backend_final_write_processing): Define it for NaCl backend. + * elf32-i386.c (elf_backend_final_write_processing): Likewise. + * elf64-x86-64.c (elf_backend_final_write_processing): Likewise. + + * elf-nacl.c (segment_eligible_for_headers): Rename MAXPAGESIZE + parameter to MINPAGESIZE. + (nacl_modify_segment_map): Use minpagesize instead of maxpagesize. + + * elf32-arm.c (ELF_MINPAGESIZE, ELF_COMMONPAGESIZE): #undef for NaCl. + 2013-08-24 Maciej W. Rozycki * elf32-tilepro.c (tilepro_elf_finish_dynamic_sections): Don't -- cgit v1.2.1