More fallout from "Allow symbol and label names to be enclosed in double quotes"
authorAlan Modra <amodra@gmail.com>
Thu, 27 Aug 2015 13:20:38 +0000 (22:50 +0930)
committerAlan Modra <amodra@gmail.com>
Thu, 27 Aug 2015 13:49:59 +0000 (23:19 +0930)
commit2e57ce7b1422a025a65ad4ef0b1f2f4c214b9eec
tree88373fbff0acc2f1684da6efa238d2f5332c41aa
parentf5cdf4989e5daff1ca8a500d22cbf2eb0692616e
More fallout from "Allow symbol and label names to be enclosed in double quotes"

Some of the TC_START_LABEL implementations need to adjust the end of
the symbol, when a colon doesn't mean a label definition.  That means
they need access to nul_char both the restore the NUL location (it may
be a quote rather than a colon) and to store the new nul_char.  Others
need adjusting to step over a potential trailing quote.

PR gas/18581
* config/tc-aarch64.h (TC_START_LABEL): Redefine.
* config/tc-arm.c (tc_start_label_without_colon): Delete params.
Use input_line_pointer directly.
* config/tc-arm.h (TC_START_LABEL): Redefine.
(TC_START_LABEL_WITHOUT_COLON): Redefine.
(tc_start_label_without_colon): Update prototype.
* config/tc-bfin.c (bfin_start_label): Delete ptr param.  Check
for NUL instead.
* config/tc-bfin.h (bfin_start_label): Update prototype.
(TC_START_LABEL): Redefine.
* config/tc-d30v.h (TC_START_LABEL): Redefine.
* config/tc-fr30.c (restore_colon): Rewrite.
(fr30_is_colon_insn): Add nul_char param.  Return int.  Bump
i_l_p over quote.  Update restore_colon calls.
* config/tc-fr30.h (TC_START_LABEL): Redefine.
(fr30_is_colon_insn): Update prototype.
* config/tc-m32c.c (restore_colon, m32c_is_colon_insn): As above.
* config/tc-m32c.h (TC_START_LABEL): Redefine.
(m32c_is_colon_insn): Update prototype.
* config/tc-m32r.h (TC_START_LABEL): Redefine.
* config/tc-mep.h (TC_START_LABEL): Redefine.
* config/tc-nds32.h (TC_START_LABEL): Redefine.
* config/tc-tic54x.c (tic54x_start_label): Replace params with
nul_char and next_char.  Step over trailing quote.
* config/tc-tic54x.h (TC_START_LABEL_WITHOUT_COLON): Redefine.
(tic54x_start_label): Update prototype.
* read.c (TC_START_LABEL): Redefine.  Update invocation.
(TC_START_LABEL_WITHOUT_COLON): Update invocation.
* config/tc-nios2.c (s_nios2_set): Save initial input_line_pointer
and restore if calling s_set.  Don't restore delim again.
18 files changed:
gas/ChangeLog
gas/config/tc-aarch64.h
gas/config/tc-arm.c
gas/config/tc-arm.h
gas/config/tc-bfin.c
gas/config/tc-bfin.h
gas/config/tc-d30v.h
gas/config/tc-fr30.c
gas/config/tc-fr30.h
gas/config/tc-m32c.c
gas/config/tc-m32c.h
gas/config/tc-m32r.h
gas/config/tc-mep.h
gas/config/tc-nds32.h
gas/config/tc-nios2.c
gas/config/tc-tic54x.c
gas/config/tc-tic54x.h
gas/read.c