Tue May 12 14:08:59 1992 Steve Chamberlain (sac@thepub.cygnus.com)
authorSteve Chamberlain <sac@cygnus>
Tue, 12 May 1992 21:42:36 +0000 (21:42 +0000)
committerSteve Chamberlain <sac@cygnus>
Tue, 12 May 1992 21:42:36 +0000 (21:42 +0000)
* coff-a29k.c (perform_reloc): fix bug in jmp/call evaluation
* coff-h8300.c (reloc_processing): all relocs are relative to
section start.
* opncls.c: don't use fdopen on DOS systems

short patches from Glenn Kasten (glenn@ready.com)
* target.c: enabled oasys support
* oasys.c:  Insert . when UNDERSCORE_HACK is enabled,
fix problem where a relocation which crossed a modification byte
boundary did not work. Fix problem where a relocation near the end
of a data record did not work.

bfd/ChangeLog
bfd/coff-a29k.c

index a358395..852e7af 100644 (file)
@@ -1,3 +1,26 @@
+Tue May 12 14:08:59 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
+
+       * coff-a29k.c (perform_reloc): fix bug in jmp/call evaluation
+       * coff-h8300.c (reloc_processing): all relocs are relative to
+       section start.
+       * opncls.c: don't use fdopen on DOS systems
+
+       short patches from Glenn Kasten (glenn@ready.com)
+       * target.c: enabled oasys support
+       * oasys.c:  Insert . when UNDERSCORE_HACK is enabled, 
+       fix problem where a relocation which crossed a modification byte
+       boundary did not work. Fix problem where a relocation near the end
+       of a data record did not work.
+       
+
+Tue May  5 18:11:25 1992  Steve Chamberlain  (sac@thepub.cygnus.com)
+
+       * archive.c (bfd_slurp_coff_armap): old versions of BFD wrote
+       archvie header string counts the endian way, this heuristic sees
+       how big an archive string to read by trying it one way and if the
+       string table is unreasonably big, trying it the other. *FIXME*.
+       * opncls.c (bfd_fdopenr): can't do fdopens on VMS
+
 Tue May  5 14:18:24 1992  Per Bothner  (bothner@rtl.cygnus.com)
 
        * bfd-in.h:  Increase version number to 1.97, for consistency
index 8f7674d..0d5e0ff 100644 (file)
@@ -126,7 +126,6 @@ DEFUN(a29k_reloc,(abfd, reloc_entry, symbol_in, data, input_section, output_bfd)
     {                          /* Absolute jmp/call */
       insn |= (1<<24);         /* Make it absolute */
       /* FIXME: Should we change r_type to R_IABS */
-      signed_value /= 2;
     } 
     else 
     {
@@ -137,9 +136,8 @@ DEFUN(a29k_reloc,(abfd, reloc_entry, symbol_in, data, input_section, output_bfd)
        input_section->output_offset;
       if (signed_value>0x1ffff || signed_value<-0x20000) 
        return(bfd_reloc_outofrange);
-
-      signed_value /= 2;
     }
+    signed_value >>= 2;
     insn = INSERT_HWORD(insn, signed_value);
     bfd_put_32(abfd, insn ,hit_data); 
     break;