* target-reloc.h (relocate_for_relocatable): Fix new_offset
	calculation.
This commit is contained in:
Ian Lance Taylor 2008-05-29 23:51:30 +00:00
parent b15591bb36
commit e09ad04ada
2 changed files with 11 additions and 1 deletions

View file

@ -1,3 +1,9 @@
2008-05-29 Kris Van Hees <kris.van.hees@oracle.com>
PR 6407
* target-reloc.h (relocate_for_relocatable): Fix new_offset
calculation.
2008-05-28 Caleb Howe <cshowe@google.com>
* reduced_debug_output.cc: New file.

View file

@ -542,7 +542,11 @@ relocate_for_relocatable(
// In an executable or dynamic object, generated by
// --emit-relocs, r_offset is an absolute address.
if (!parameters->options().relocatable())
new_offset += view_address;
{
new_offset += view_address;
if (offset_in_output_section != -1)
new_offset -= offset_in_output_section;
}
reloc_write.put_r_offset(new_offset);
reloc_write.put_r_info(elfcpp::elf_r_info<size>(new_symndx, r_type));