diff options
Diffstat (limited to 'bfd')
-rw-r--r-- | bfd/ChangeLog | 6 | ||||
-rw-r--r-- | bfd/elf32-cris.c | 11 |
2 files changed, 12 insertions, 5 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index c1a6f0d..78b1a95 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,9 @@ +2011-12-01 Hans-Peter Nilsson <hp@axis.com> + + * elf32-cris.c (cris_elf_check_relocs) <plt accounting for + R_CRIS_8, R_CRIS_16, and R_CRIS_32>: Move early break for + non-SEC_ALLOC sections before GOT and PLT accounting. + 2011-11-29 Andrew Pinski <apinski@cavium.com> * archures.c (bfd_mach_mips_octeonp): New macro. diff --git a/bfd/elf32-cris.c b/bfd/elf32-cris.c index 033d1c8..563e2c0 100644 --- a/bfd/elf32-cris.c +++ b/bfd/elf32-cris.c @@ -3583,6 +3583,12 @@ cris_elf_check_relocs (bfd *abfd, sec, cris_elf_howto_table[r_type].name); } + + /* We don't need to handle relocs into sections not going into + the "real" output. */ + if ((sec->flags & SEC_ALLOC) == 0) + break; + if (h != NULL) { h->non_got_ref = 1; @@ -3612,11 +3618,6 @@ cris_elf_check_relocs (bfd *abfd, if (! info->shared) break; - /* We don't need to handle relocs into sections not going into - the "real" output. */ - if ((sec->flags & SEC_ALLOC) == 0) - break; - /* We may need to create a reloc section in the dynobj and made room for this reloc. */ if (sreloc == NULL) |