2003-08-24 Jason Eckhardt <jle@rice.edu>

* elf32-i860.c (elf32_i860_relocate_pc16): Subtract 4 and
	shift by 2 before storing the relocated value.
This commit is contained in:
Jason Eckhardt 2003-08-24 18:16:46 +00:00
parent 2de139ba84
commit f680ea79cc
2 changed files with 7 additions and 1 deletions

View file

@ -1,3 +1,8 @@
2003-08-24 Jason Eckhardt <jle@rice.edu>
* elf32-i860.c (elf32_i860_relocate_pc16): Subtract 4 and
shift by 2 before storing the relocated value.
2003-08-23 Jason Eckhardt <jle@rice.edu> 2003-08-23 Jason Eckhardt <jle@rice.edu>
* coff-i860.c (coff_i860_reloc_nyi): New function. * coff-i860.c (coff_i860_reloc_nyi): New function.

View file

@ -712,7 +712,8 @@ elf32_i860_relocate_pc16 (bfd *input_bfd,
/* Relocate. */ /* Relocate. */
value += rello->r_addend; value += rello->r_addend;
/* Separate the fields and insert. */ /* Adjust the value by 4, then separate the fields and insert. */
value = (value - 4) >> howto->rightshift;
value = (((value & 0xf800) << 5) | (value & 0x7ff)) & howto->dst_mask; value = (((value & 0xf800) << 5) | (value & 0x7ff)) & howto->dst_mask;
insn = (insn & ~howto->dst_mask) | value; insn = (insn & ~howto->dst_mask) | value;