PR ld/13621
bfd/ * linker.c (fix_syms): Force symbols outside any section into bfd_abs_section_ptr. ld/testsuite/ * ld-elf/warn2.d: Expect ABS section for Foo. * ld-elf/zerosize1.d, zerosize1.s: New test.
This commit is contained in:
parent
cec7aa6aca
commit
e1741a1ed1
4 changed files with 19 additions and 1 deletions
|
@ -1,3 +1,9 @@
|
|||
2012-02-13 Richard Henderson <rth@redhat.com>
|
||||
|
||||
PR ld/13621
|
||||
* linker.c (fix_syms): Force symbols outside any section into
|
||||
bfd_abs_section_ptr.
|
||||
|
||||
2012-02-13 Alan Modra <amodra@gmail.com>
|
||||
|
||||
* elf32-m68hc1x.c (elf32_m68hc11_merge_symbol_attribute): New function.
|
||||
|
|
|
@ -3208,6 +3208,12 @@ fix_syms (struct bfd_link_hash_entry *h, void *data)
|
|||
op = op1;
|
||||
}
|
||||
|
||||
/* Refuse to choose a section for which we are out of bounds. */
|
||||
/* ??? This may make most of the above moot. */
|
||||
if (h->u.def.value < op->vma
|
||||
|| h->u.def.value > op->vma + op->size)
|
||||
op = bfd_abs_section_ptr;
|
||||
|
||||
h->u.def.value -= op->vma;
|
||||
h->u.def.section = op;
|
||||
}
|
||||
|
|
|
@ -1,3 +1,9 @@
|
|||
2012-02-13 Richard Henderson <rth@redhat.com>
|
||||
|
||||
PR ld/13621
|
||||
* ld-elf/warn2.d: Expect ABS section for Foo.
|
||||
* ld-elf/zerosize1.d, zerosize1.s: New test.
|
||||
|
||||
2012-02-13 Alan Modra <amodra@gmail.com>
|
||||
|
||||
* ld-m68hc11/m68hc11.exp: Run for m68hc11-*-* and m68hc12-*-*.
|
||||
|
|
|
@ -13,5 +13,5 @@
|
|||
# construct and that the symbol still appears as expected.
|
||||
|
||||
#...
|
||||
+[0-9]+: +[0-9a-f]+ +20 +OBJECT +GLOBAL +DEFAULT +[1-9] Foo
|
||||
+[0-9]+: +[0-9a-f]+ +20 +OBJECT +GLOBAL +DEFAULT +ABS Foo
|
||||
#pass
|
||||
|
|
Loading…
Add table
Reference in a new issue