PowerPC, don't use bfd reloc howto in md_assemble
authorAlan Modra <amodra@gmail.com>
Wed, 7 Nov 2018 05:42:36 +0000 (16:12 +1030)
committerAlan Modra <amodra@gmail.com>
Fri, 9 Nov 2018 03:01:59 +0000 (13:31 +1030)
commit0e2779e98dc1251b469db690458d14262c72e303
treea3c29865eaaf4951e72984db02e211dfa53f499c
parent663cc8c0fc6ed1fc64b3a3930806cdaf33cfcefe
PowerPC, don't use bfd reloc howto in md_assemble

We support source like the following
 .data
 .quad x-.
 .space 8
x:
where at the time the .quad line is assembled, x is unknown so a fixup
is emitted for later evaluation.  This is supported for data even when
the target may not have relocations for the expression, for example,
32-bit powerpc targets lack a 64-bit reloc.  As long as the fixup
resolves at assembly time, gas is happy.

The idea of this patch is to support fixups that resolve at assembly
time for instructions too, even when the target might lack the
necessary relocations (and thus no howto).

* config/tc-ppc.c (fixup_size): New function.
(md_assemble): Use it to derive size and pcrel directly
from fixup reloc type.
gas/ChangeLog
gas/config/tc-ppc.c