aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--bfd/ChangeLog5
-rw-r--r--bfd/elflink.h4
2 files changed, 7 insertions, 2 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 80ede74..1d81e71 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,8 @@
+2001-10-10 Jakub Jelinek <jakub@redhat.com>
+
+ * elflink.h (elf_link_sort_cmp2): Don't mix PLT and non-PLT
+ relocations against the same symbol in .rel{,a}.dyn section.
+
2001-10-10 Kazu Hirata <kazu@hxi.com>
* aout-encap.c: Fix comment typos.
diff --git a/bfd/elflink.h b/bfd/elflink.h
index 19fcea7..8a3a4ff 100644
--- a/bfd/elflink.h
+++ b/bfd/elflink.h
@@ -4378,8 +4378,8 @@ elf_link_sort_cmp2 (A, B)
return -1;
if (a->offset > b->offset)
return 1;
- copya = a->type == reloc_class_copy;
- copyb = b->type == reloc_class_copy;
+ copya = (a->type == reloc_class_copy) * 2 + (a->type == reloc_class_plt);
+ copyb = (b->type == reloc_class_copy) * 2 + (b->type == reloc_class_plt);
if (copya < copyb)
return -1;
if (copya > copyb)