diff options
author | Alan Modra <amodra@bigpond.net.au> | 2000-04-27 00:31:17 +0000 |
---|---|---|
committer | Alan Modra <amodra@bigpond.net.au> | 2000-04-27 00:31:17 +0000 |
commit | b55803ce42a86ad8a148ad315bad5b04d7fa0773 (patch) | |
tree | e440b51b80dad1007607bc38a7fc84b630f2eb4c /bfd/elf32-ppc.c | |
parent | d6e623320dac27011ffea7075514a3613ba22ed8 (diff) | |
download | gdb-b55803ce42a86ad8a148ad315bad5b04d7fa0773.tar.gz |
Reference count .plt and .got on x86 for garbage collection code. Fix a
couple of m68k and ppc bugs discovered while testing x86 gc.
Diffstat (limited to 'bfd/elf32-ppc.c')
-rw-r--r-- | bfd/elf32-ppc.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/bfd/elf32-ppc.c b/bfd/elf32-ppc.c index db5b2684248..0ec909a9212 100644 --- a/bfd/elf32-ppc.c +++ b/bfd/elf32-ppc.c @@ -2540,7 +2540,7 @@ ppc_elf_gc_sweep_hook (abfd, info, sec, relocs) if (h->got.refcount > 0) h->got.refcount--; } - else + else if (local_got_refcounts != NULL) { if (local_got_refcounts[r_symndx] > 0) local_got_refcounts[r_symndx]--; @@ -3022,6 +3022,7 @@ ppc_elf_relocate_section (output_bfd, info, input_bfd, input_section, { sec = h->root.u.def.section; if ((r_type == R_PPC_PLT32 + && splt != NULL && h->plt.offset != (bfd_vma) -1) || (r_type == R_PPC_LOCAL24PC && sec->output_section == NULL) |