* elf32-i386.c (elf_i386_nacl_pic_plt0_entry): Initialize up
authorRoland McGrath <roland@gnu.org>
Wed, 14 Mar 2012 19:32:11 +0000 (19:32 +0000)
committerRoland McGrath <roland@gnu.org>
Wed, 14 Mar 2012 19:32:11 +0000 (19:32 +0000)
to the full size, padding out with nop instructions.

bfd/ChangeLog
bfd/elf32-i386.c

index eacf84e4fec124d03fbc74f9b0cdd11f8859d5c6..634fba932e35d3efcca013fd9892ed4d69a58fad 100644 (file)
@@ -1,3 +1,8 @@
+2012-03-14  Roland McGrath  <mcgrathr@google.com>
+
+       * elf32-i386.c (elf_i386_nacl_pic_plt0_entry): Initialize up
+       to the full size, padding out with nop instructions.
+
 2012-03-12  Alan Modra  <amodra@gmail.com>
 
        * elf-m10300.c (_bfd_mn10300_elf_adjust_dynamic_symbol): Don't warn
index 3014a0a83aa4dd96fa3410791935035b6c38bdfe..4ae21664f6a11786f8f245a31348a4467becd4a6 100644 (file)
@@ -2702,7 +2702,7 @@ elf_i386_size_dynamic_sections (bfd *output_bfd, struct bfd_link_info *info)
      it's not incremented, so in order to compute the space reserved
      for them, it suffices to multiply the reloc count by the jump
      slot size.
-     
+
      PR ld/13302: We start next_irelative_index at the end of .rela.plt
      so that R_386_IRELATIVE entries come last.  */
   if (htab->elf.srelplt)
@@ -5109,7 +5109,10 @@ elf_i386_nacl_pic_plt0_entry[sizeof (elf_i386_nacl_plt0_entry)] =
     0x8b, 0x4b, 0x08,          /* mov 0x8(%ebx), %ecx */
     0x83, 0xe1, 0xe0,          /* and $NACLMASK, %ecx */
     0xff, 0xe1,                        /* jmp *%ecx */
-    0x90                        /* nop */
+
+    /* This is expected to be the same size as elf_i386_nacl_plt0_entry,
+       so pad to that size with nop instructions.  */
+    0x90, 0x90, 0x90, 0x90, 0x90, 0x90
   };
 
 static const bfd_byte elf_i386_nacl_pic_plt_entry[NACL_PLT_ENTRY_SIZE] =