* elfcore.h (elf_core_file_p): Set the machine architecture
authorJason Thorpe <thorpej@netbsd.org>
Sun, 27 Jan 2002 23:27:23 +0000 (23:27 +0000)
committerJason Thorpe <thorpej@netbsd.org>
Sun, 27 Jan 2002 23:27:23 +0000 (23:27 +0000)
before processing the program headers.

bfd/ChangeLog
bfd/elfcore.h

index b7a2496..4bcb797 100644 (file)
@@ -1,3 +1,8 @@
+2002-01-27  Jason Thorpe  <thorpej@wasabisystems.com>
+
+       * elfcore.h (elf_core_file_p): Set the machine architecture
+       before processing the program headers.
+
 2002-01-26  Hans-Peter Nilsson  <hp@bitrange.com>
 
        * configure.in <64-bit configuration>: If using gcc, check and
index 2a795a9..5c81812 100644 (file)
@@ -220,13 +220,6 @@ elf_core_file_p (abfd)
       elf_swap_phdr_in (abfd, &x_phdr, i_phdrp + phindex);
     }
 
-  /* Process each program header.  */
-  for (phindex = 0; phindex < i_ehdrp->e_phnum; ++phindex)
-    {
-      if (! bfd_section_from_phdr (abfd, i_phdrp + phindex, (int) phindex))
-       goto fail;
-    }
-
   /* Set the machine architecture.  */
   if (! bfd_default_set_arch_mach (abfd, ebd->arch, 0))
     {
@@ -235,6 +228,13 @@ elf_core_file_p (abfd)
        goto fail;
     }
 
+  /* Process each program header.  */
+  for (phindex = 0; phindex < i_ehdrp->e_phnum; ++phindex)
+    {
+      if (! bfd_section_from_phdr (abfd, i_phdrp + phindex, (int) phindex))
+       goto fail;
+    }
+
   /* Save the entry point from the ELF header.  */
   bfd_get_start_address (abfd) = i_ehdrp->e_entry;