I've been repeatedly confused by, in particular, the .dc.a potable[]
entry being conditional. Grepping in gas/config/ reveals only very few
targets actually #define-ing it. But as of
7be1c4891a20 the symbol is
always defined, so #ifdef-s are pointless (and, as said, potentially
confusing).
Also adjust documentation to reflect this.
+2021-06-14 Jan Beulich <jbeulich@suse.com>
+
+ * doc/internals.texi (TC_ADDRESS_BYTES): Mention generic default.
+ * read.c (potable, cons_worker): Drop TC_ADDRESS_BYTES
+ conditional.
+
2021-06-11 H.J. Lu <hongjiu.lu@intel.com>
* config/tc-i386.c (x86_cons): Handle GOT/PLT relocations only
@item TC_ADDRESS_BYTES
@cindex TC_ADDRESS_BYTES
Define this macro to specify the number of bytes used to store an address.
-Used to implement @code{dc.a}. The target must have a reloc for this size.
+Used to implement @code{dc.a}. If not defined by the target, a default will
+be supplied. Targets are assumed to have a reloc for this size.
@item TC_INIT_FIX_DATA (@var{fixp})
@cindex TC_INIT_FIX_DATA
{"common.s", s_mri_common, 1},
{"data", s_data, 0},
{"dc", cons, 2},
-#ifdef TC_ADDRESS_BYTES
{"dc.a", cons, 0},
-#endif
{"dc.b", cons, 1},
{"dc.d", float_cons, 'd'},
{"dc.l", cons, 4},
return;
}
-#ifdef TC_ADDRESS_BYTES
if (nbytes == 0)
nbytes = TC_ADDRESS_BYTES ();
-#endif
#ifdef md_cons_align
md_cons_align (nbytes);