PowerPC gold, fix 32-bit branch address arithmetic
authorAlan Modra <amodra@gmail.com>
Thu, 4 Dec 2014 10:40:40 +0000 (21:10 +1030)
committerAlan Modra <amodra@gmail.com>
Thu, 4 Dec 2014 10:47:54 +0000 (21:17 +1030)
commitcbcb23fa01027a7fe1be938d58ef8e7a60b5fb7e
tree38d9034618f627b69f3305d7fb740e7fd8eb5306
parentba715d7fe49c8a59660fbd571b935b29eb7cfbdb
PowerPC gold, fix 32-bit branch address arithmetic

Mixing 64-bit and 32-bit types led to the wrong promotions.  Keep
calculation in same type.  Also fix a case where PLTREL25 reloc addend
should be ignored.

* Powerpc.cc (Target_powerpc::Branch_info::make_stub): Ignore
addend of PLTREL24 reloc when not generating a plt stub.  Make
max_branch_offset an "Address".
(Stub_table::can_read_stub): Make max_branch_offset an "Address".
(Target_powerpc::Relocate::relocate): Likewise.
gold/ChangeLog
gold/powerpc.cc