Properly skip IFUNC relocations in debug sections
authorH.J. Lu <hjl.tools@gmail.com>
Wed, 12 Aug 2015 02:04:38 +0000 (19:04 -0700)
committerH.J. Lu <hjl.tools@gmail.com>
Wed, 12 Aug 2015 02:04:38 +0000 (19:04 -0700)
Use "continue" instead of "break" to skip IFUNC relocations in debug
sections.

* elf32-i386.c (elf_i386_relocate_section): Properly skip IFUNC
relocations in debug sections.
* elf64-x86-64.c (elf_x86_64_relocate_section): Likewise.

bfd/ChangeLog
bfd/elf32-i386.c
bfd/elf64-x86-64.c

index 1e02625a0f39881d20ab4e8982823cf206ed3968..2f850e7d0d5a8f38bdb2822024bb2e334d85f5fe 100644 (file)
@@ -1,3 +1,9 @@
+2015-08-11  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * elf32-i386.c (elf_i386_relocate_section): Properly skip IFUNC
+       relocations in debug sections.
+       * elf64-x86-64.c (elf_x86_64_relocate_section): Likewise.
+
 2015-08-11  Jiong Wang  <jiong.wang@arm.com>
 
        * elfnn-aarch64.c (elfNN_aarch64_relocate_section): Improve warning
index fb874215aeca6d4cd8fae2a1a08a22ab38aedf40..98902ac61864fe31096772e207fa51c379dbc528 100644 (file)
@@ -3509,7 +3509,7 @@ elf_i386_relocate_section (bfd *output_bfd,
                 sections because such sections are not SEC_ALLOC and
                 thus ld.so will not process them.  */
              if ((input_section->flags & SEC_DEBUGGING) != 0)
-               break;
+               continue;
              abort ();
            }
          else if (h->plt.offset == (bfd_vma) -1)
index 4b8303292ab23f3aa2b4146027ca609e8321a4f8..b3c85221afc06ddd4e042b0c3386f87c245b8f94 100644 (file)
@@ -3792,7 +3792,7 @@ elf_x86_64_relocate_section (bfd *output_bfd,
                 sections because such sections are not SEC_ALLOC and
                 thus ld.so will not process them.  */
              if ((input_section->flags & SEC_DEBUGGING) != 0)
-               break;
+               continue;
              abort ();
            }
          else if (h->plt.offset == (bfd_vma) -1)