diff options
author | Geoffrey Keating <geoffk@geoffk.org> | 2000-08-16 00:34:19 +0000 |
---|---|---|
committer | Geoffrey Keating <geoffk@geoffk.org> | 2000-08-16 00:34:19 +0000 |
commit | f3ce8da22dede91c7b0de0ece29c16490637b034 (patch) | |
tree | 184d02f83f9867531f6d363b29b8f967bed1b102 /bfd/xcofflink.c | |
parent | 917ba3358504d664bd481116ad800f646223dbb0 (diff) | |
download | gdb-f3ce8da22dede91c7b0de0ece29c16490637b034.tar.gz |
* xcofflink.c (_bfd_ppc_xcoff_relocate_section): Add ori r0,r0,0
to the list of NOPs we recognize after a branch-and-link.
Use the ori NOP when one is needed.
* coff-rs6000.c (_bfd_xcoff_slurp_armap): Finish implementation
for large archives.
Diffstat (limited to 'bfd/xcofflink.c')
-rw-r--r-- | bfd/xcofflink.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/bfd/xcofflink.c b/bfd/xcofflink.c index 2d03fa425dc..f518fdfb1a4 100644 --- a/bfd/xcofflink.c +++ b/bfd/xcofflink.c @@ -6577,13 +6577,14 @@ _bfd_ppc_xcoff_relocate_section (output_bfd, info, input_bfd, || strcmp (h->root.root.string, "._ptrgl") == 0) { if (next == 0x4def7b82 /* cror 15,15,15 */ - || next == 0x4ffffb82) /* cror 31,31,31 */ + || next == 0x4ffffb82 /* cror 31,31,31 */ + || next == 0x60000000) /* ori r0,r0,0 */ bfd_put_32 (input_bfd, 0x80410014, pnext); /* lwz r1,20(r1) */ } else { if (next == 0x80410014) /* lwz r1,20(r1) */ - bfd_put_32 (input_bfd, 0x4ffffb82, pnext); /* cror 31,31,31 */ + bfd_put_32 (input_bfd, 0x60000000, pnext); /* ori r0,r0,0 */ } } |