* xcofflink.c (_bfd_ppc_xcoff_relocate_section): Check explicitly

for _ptrgl, and treat it as global linkage code.
PR 9860.
This commit is contained in:
Ian Lance Taylor
1996-06-12 22:05:32 +00:00
parent 77dd44697f
commit 4914478412
2 changed files with 8 additions and 1 deletions

View File

@ -1,5 +1,8 @@
Wed Jun 12 11:16:37 1996 Ian Lance Taylor <ian@cygnus.com> Wed Jun 12 11:16:37 1996 Ian Lance Taylor <ian@cygnus.com>
* xcofflink.c (_bfd_ppc_xcoff_relocate_section): Check explicitly
for _ptrgl, and treat it as global linkage code.
* aoutx.h (NAME(aout,find_nearest_line)): Notice if we find a * aoutx.h (NAME(aout,find_nearest_line)): Notice if we find a
filename or N_SO symbol past the offset, and use it to indicate filename or N_SO symbol past the offset, and use it to indicate
that there is no line number or function when appropriate. that there is no line number or function when appropriate.

View File

@ -6215,7 +6215,11 @@ _bfd_ppc_xcoff_relocate_section (output_bfd, info, input_bfd,
pnext = contents + (rel->r_vaddr - input_section->vma) + 4; pnext = contents + (rel->r_vaddr - input_section->vma) + 4;
next = bfd_get_32 (input_bfd, pnext); next = bfd_get_32 (input_bfd, pnext);
if (h->smclas == XMC_GL)
/* The _ptrgl function is magic. It is used by the AIX
compiler to call a function through a pointer. */
if (h->smclas == XMC_GL
|| strcmp (h->root.root.string, "._ptrgl") == 0)
{ {
if (next == 0x4def7b82 /* cror 15,15,15 */ if (next == 0x4def7b82 /* cror 15,15,15 */
|| next == 0x4ffffb82) /* cror 31,31,31 */ || next == 0x4ffffb82) /* cror 31,31,31 */