diff options
author | Kai Tietz <kai.tietz@onevision.com> | 2010-03-31 16:32:02 +0000 |
---|---|---|
committer | Kai Tietz <kai.tietz@onevision.com> | 2010-03-31 16:32:02 +0000 |
commit | b706dc83c1a3d333c25aaaeb088960322845b8fd (patch) | |
tree | 03b19ad900fdc43b5fabc2847e1071ceb3c5d3b7 | |
parent | 2ae2a0b7f1515ed92ed1dbd071af7856a6061242 (diff) | |
download | gdb-b706dc83c1a3d333c25aaaeb088960322845b8fd.zip gdb-b706dc83c1a3d333c25aaaeb088960322845b8fd.tar.gz gdb-b706dc83c1a3d333c25aaaeb088960322845b8fd.tar.bz2 |
2010-03-31 Kai Tietz <kai.tietz@onevision.com>
* coff-i386.c (in_reloc_p): Check also for R_SECREL32.
* coff-x86_64.c (in_reloc_p): Check also for R_AMD64_SECREL.
-rw-r--r-- | bfd/ChangeLog | 5 | ||||
-rw-r--r-- | bfd/coff-i386.c | 3 | ||||
-rw-r--r-- | bfd/coff-x86_64.c | 11 |
3 files changed, 13 insertions, 6 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 172726c6..723b665 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,8 @@ +2010-03-31 Kai Tietz <kai.tietz@onevision.com> + + * coff-i386.c (in_reloc_p): Check also for R_SECREL32. + * coff-x86_64.c (in_reloc_p): Check also for R_AMD64_SECREL. + 2010-03-31 Alan Modra <amodra@gmail.com> * elf64-ppc.c (ppc64_elf_relocate_section): Nop out optimized diff --git a/bfd/coff-i386.c b/bfd/coff-i386.c index e7c4e8a..57c47d0 100644 --- a/bfd/coff-i386.c +++ b/bfd/coff-i386.c @@ -195,7 +195,8 @@ static bfd_boolean in_reloc_p (abfd, howto) bfd * abfd ATTRIBUTE_UNUSED; reloc_howto_type *howto; { - return ! howto->pc_relative && howto->type != R_IMAGEBASE; + return ! howto->pc_relative && howto->type != R_IMAGEBASE + && howto->type != R_SECREL32; } #endif /* COFF_WITH_PE */ diff --git a/bfd/coff-x86_64.c b/bfd/coff-x86_64.c index 4d500fe..8083d97 100644 --- a/bfd/coff-x86_64.c +++ b/bfd/coff-x86_64.c @@ -192,7 +192,8 @@ coff_amd64_reloc (bfd *abfd, static bfd_boolean in_reloc_p (bfd *abfd ATTRIBUTE_UNUSED, reloc_howto_type *howto) { - return ! howto->pc_relative && howto->type != R_AMD64_IMAGEBASE; + return ! howto->pc_relative && howto->type != R_AMD64_IMAGEBASE + && howto->type != R_AMD64_SECREL; } #endif /* COFF_WITH_PE */ @@ -555,10 +556,10 @@ coff_amd64_rtype_to_howto (bfd *abfd ATTRIBUTE_UNUSED, #if defined(COFF_WITH_PE) /* Cancel out code in _bfd_coff_generic_relocate_section. */ *addendp = 0; - if (rel->r_type >= R_AMD64_PCRLONG_1 && rel->r_type <= R_AMD64_PCRLONG_5)
- {
- *addendp -= (bfd_vma)(rel->r_type - R_AMD64_PCRLONG);
- rel->r_type = R_AMD64_PCRLONG;
+ if (rel->r_type >= R_AMD64_PCRLONG_1 && rel->r_type <= R_AMD64_PCRLONG_5) + { + *addendp -= (bfd_vma)(rel->r_type - R_AMD64_PCRLONG); + rel->r_type = R_AMD64_PCRLONG; } #endif |