Set arch/mach info prior to swapping in sections, so that the swapping
authorTimothy Wall <twall@alum.mit.edu>
Wed, 9 Feb 2000 13:41:44 +0000 (13:41 +0000)
committerTimothy Wall <twall@alum.mit.edu>
Wed, 9 Feb 2000 13:41:44 +0000 (13:41 +0000)
routines have access to the arch/mach info.

bfd/ChangeLog
bfd/coffgen.c

index d9bd497594e3befbe4593bc386a72c1f305f4992..0dc5a82b516543041eb01a8819725c224d156685 100644 (file)
@@ -1,3 +1,9 @@
+2000-02-09  Timothy Wall  <twall@cygnus.com>
+
+       * coffgen.c (coff_real_object_p): Set arch/mach info prior to
+       swapping in sections, so that the swapping routines have access to
+       the arch/mach info.
+
 2000-02-08 Mark Elbrecht <snowball3@bigfoot.com>
        
        * coff-go32.c: Update comment. Update copyright.
index 9884e926707be663cabba87b62b93898cf2c7f47..f2410d919d9a256c773abc5b8fd4fa870d07b53d 100644 (file)
@@ -1,5 +1,5 @@
 /* Support for the generic parts of COFF, for BFD.
-   Copyright 1990, 91, 92, 93, 94, 95, 96, 97, 98, 1999
+   Copyright 1990, 91, 92, 93, 94, 95, 96, 97, 98, 1999, 2000
    Free Software Foundation, Inc.
    Written by Cygnus Support.
 
@@ -211,6 +211,11 @@ coff_real_object_p (abfd, nscns, internal_f, internal_a)
   if (bfd_read ((PTR) external_sections, 1, readsize, abfd) != readsize)
     goto fail;
 
+  /* Set the arch/mach *before* swapping in sections; section header swapping
+     may depend on arch/mach info. */
+  if (bfd_coff_set_arch_mach_hook (abfd, (PTR) internal_f) == false)
+    goto fail;
+
   /* Now copy data as required; construct all asections etc */
   if (nscns != 0)
     {
@@ -228,9 +233,6 @@ coff_real_object_p (abfd, nscns, internal_f, internal_a)
 
   /*  make_abs_section (abfd); */
 
-  if (bfd_coff_set_arch_mach_hook (abfd, (PTR) internal_f) == false)
-    goto fail;
-
   return abfd->xvec;
 
  fail: