[ARM][gas] Use as_tsktsk instead of as_warn for deprecation messages.

* config/tc-arm.c (warn_deprecated_sp): Use as_tsktsk instead
	of as_warn for deprecation messages.
	(encode_arm_addr_mode_2): Likewise.
	(check_obsolete): Likewise.
	(do_rd_rm_rn): Likewise.
	(do_co_reg): Likewise.
	(do_setend): Likewise.
	(do_t_mov_cmp): Likewise.
	(do_neon_ldr_str): Likewise.
	(opcode_lookup): Likewise.
	(if_fsm_post_encode): Likewise.
	(md_assemble): Likewise.

	* gas/arm/armv1.l: Remove 'Warning: ' from expected messages
	for deprecations.
	* gas/arm/armv8-a-bad.l: Likewise.
	* gas/arm/armv8-a-it-bad.l: Likewise.
	* gas/arm/depr-swp.l: Likewise.
	* gas/arm/ldsgeb.l: Likewise.
	* gas/arm/ldsgeh.l: Likewise.
	* gas/arm/thumb2_bad_reg.l: Likewise.
	* gas/arm/thumb32.l: Likewise.
	* gas/arm/udf.l: Likewise.
	* gas/arm/vstr-arm-bad.l: Likewise.
This commit is contained in:
Kyrylo Tkachov 2015-02-09 11:20:30 +00:00
parent 31fd9caad9
commit 5c3696f89f
13 changed files with 102 additions and 73 deletions

View File

@ -1,3 +1,18 @@
2015-02-09 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
* config/tc-arm.c (warn_deprecated_sp): Use as_tsktsk instead
of as_warn for deprecation messages.
(encode_arm_addr_mode_2): Likewise.
(check_obsolete): Likewise.
(do_rd_rm_rn): Likewise.
(do_co_reg): Likewise.
(do_setend): Likewise.
(do_t_mov_cmp): Likewise.
(do_neon_ldr_str): Likewise.
(opcode_lookup): Likewise.
(if_fsm_post_encode): Likewise.
(md_assemble): Likewise.
2015-02-06 Jan Beulich <jbeulich@suse.com>
* dw2gencfi.c (select_cie_for_fde): Also bail on CFI_label.

View File

@ -7258,7 +7258,7 @@ parse_operands (char *str, const unsigned int *pattern, bfd_boolean thumb)
#define warn_deprecated_sp(reg) \
do \
if (warn_on_deprecated && reg == REG_SP) \
as_warn (_("use of r13 is deprecated")); \
as_tsktsk (_("use of r13 is deprecated")); \
while (0)
/* Functions for operand encoding. ARM, then Thumb. */
@ -7490,7 +7490,7 @@ encode_arm_addr_mode_2 (int i, bfd_boolean is_t)
if (warn_on_deprecated
&& !is_load
&& ARM_CPU_HAS_FEATURE (selected_cpu, arm_ext_v7))
as_warn (_("use of PC in this instruction is deprecated"));
as_tsktsk (_("use of PC in this instruction is deprecated"));
}
if (inst.reloc.type == BFD_RELOC_UNUSED)
@ -7989,7 +7989,7 @@ check_obsolete (const arm_feature_set *feature, const char *msg)
{
if (ARM_CPU_IS_ANY (cpu_variant))
{
as_warn ("%s", msg);
as_tsktsk ("%s", msg);
return TRUE;
}
else if (ARM_CPU_HAS_FEATURE (cpu_variant, *feature))
@ -8017,7 +8017,7 @@ do_rd_rm_rn (void)
_("swp{b} use is obsoleted for ARMv8 and later"))
&& warn_on_deprecated
&& ARM_CPU_HAS_FEATURE (cpu_variant, arm_ext_v6))
as_warn (_("swp{b} use is deprecated for ARMv6 and ARMv7"));
as_tsktsk (_("swp{b} use is deprecated for ARMv6 and ARMv7"));
}
inst.instruction |= inst.operands[0].reg << 12;
@ -8394,7 +8394,7 @@ do_co_reg (void)
if (! ARM_CPU_IS_ANY (cpu_variant)
&& warn_on_deprecated
&& ARM_CPU_HAS_FEATURE (cpu_variant, r->deprecated))
as_warn ("%s", r->dep_msg);
as_tsktsk ("%s", r->dep_msg);
}
}
@ -9117,7 +9117,7 @@ do_setend (void)
{
if (warn_on_deprecated
&& ARM_CPU_HAS_FEATURE (cpu_variant, arm_ext_v8))
as_warn (_("setend use is deprecated for ARMv8"));
as_tsktsk (_("setend use is deprecated for ARMv8"));
if (inst.operands[0].imm)
inst.instruction |= 0x200;
@ -11560,7 +11560,7 @@ do_t_mov_cmp (void)
if ((Rn == REG_SP || Rn == REG_PC)
&& (Rm == REG_SP || Rm == REG_PC))
{
as_warn (_("Use of r%u as a source register is "
as_tsktsk (_("Use of r%u as a source register is "
"deprecated when r%u is the destination "
"register."), Rm, Rn);
}
@ -12384,7 +12384,7 @@ do_t_setend (void)
{
if (warn_on_deprecated
&& ARM_CPU_HAS_FEATURE (cpu_variant, arm_ext_v8))
as_warn (_("setend use is deprecated for ARMv8"));
as_tsktsk (_("setend use is deprecated for ARMv8"));
set_it_insn_type (OUTSIDE_IT_INSN);
if (inst.operands[0].imm)
@ -16104,7 +16104,7 @@ do_neon_ldr_str (void)
if (thumb_mode)
inst.error = _("Use of PC here is UNPREDICTABLE");
else if (warn_on_deprecated)
as_warn (_("Use of PC here is deprecated"));
as_tsktsk (_("Use of PC here is deprecated"));
}
if (inst.operands[0].issingle)
@ -17131,7 +17131,7 @@ opcode_lookup (char **str)
}
if (warn_on_deprecated && unified_syntax)
as_warn (_("conditional infixes are deprecated in unified syntax"));
as_tsktsk (_("conditional infixes are deprecated in unified syntax"));
affix = base + (opcode->tag - OT_odd_infix_0);
cond = (const struct asm_cond *) hash_find_n (arm_cond_hsh, affix, 2);
gas_assert (cond);
@ -17217,7 +17217,7 @@ opcode_lookup (char **str)
if (warn_on_deprecated && unified_syntax
&& (opcode->tag == OT_cinfix3
|| opcode->tag == OT_cinfix3_deprecated))
as_warn (_("conditional infixes are deprecated in unified syntax"));
as_tsktsk (_("conditional infixes are deprecated in unified syntax"));
inst.cond = cond->value;
return opcode;
@ -17547,7 +17547,7 @@ it_fsm_post_encode (void)
{
if (inst.instruction >= 0x10000)
{
as_warn (_("IT blocks containing 32-bit Thumb instructions are "
as_tsktsk (_("IT blocks containing 32-bit Thumb instructions are "
"deprecated in ARMv8"));
now_it.warn_deprecated = TRUE;
}
@ -17559,7 +17559,7 @@ it_fsm_post_encode (void)
{
if ((inst.instruction & p->mask) == p->pattern)
{
as_warn (_("IT blocks containing 16-bit Thumb instructions "
as_tsktsk (_("IT blocks containing 16-bit Thumb instructions "
"of the following class are deprecated in ARMv8: "
"%s"), p->description);
now_it.warn_deprecated = TRUE;
@ -17572,7 +17572,7 @@ it_fsm_post_encode (void)
if (now_it.block_length > 1)
{
as_warn (_("IT blocks containing more than one conditional "
as_tsktsk (_("IT blocks containing more than one conditional "
"instruction are deprecated in ARMv8"));
now_it.warn_deprecated = TRUE;
}
@ -17636,7 +17636,7 @@ md_assemble (char *str)
}
if (warn_on_deprecated && opcode->tag == OT_cinfix3_deprecated)
as_warn (_("s suffix on comparison instruction is deprecated"));
as_tsktsk (_("s suffix on comparison instruction is deprecated"));
/* The value which unconditional instructions should have in place of the
condition field. */

View File

@ -1,3 +1,17 @@
2015-02-09 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
* gas/arm/armv1.l: Remove 'Warning: ' from expected messages
for deprecations.
* gas/arm/armv8-a-bad.l: Likewise.
* gas/arm/armv8-a-it-bad.l: Likewise.
* gas/arm/depr-swp.l: Likewise.
* gas/arm/ldsgeb.l: Likewise.
* gas/arm/ldsgeh.l: Likewise.
* gas/arm/thumb2_bad_reg.l: Likewise.
* gas/arm/thumb32.l: Likewise.
* gas/arm/udf.l: Likewise.
* gas/arm/vstr-arm-bad.l: Likewise.
2015-01-28 James Bowman <james.bowman@ftdichip.com>
* gas/ft32/ft32.exp: New file.

View File

@ -1,5 +1,5 @@
[^:]*: Assembler messages:
[^:]*:26: Warning: s suffix on comparison instruction is deprecated
[^:]*:29: Warning: s suffix on comparison instruction is deprecated
[^:]*:32: Warning: s suffix on comparison instruction is deprecated
[^:]*:35: Warning: s suffix on comparison instruction is deprecated
[^:]*:26: s suffix on comparison instruction is deprecated
[^:]*:29: s suffix on comparison instruction is deprecated
[^:]*:32: s suffix on comparison instruction is deprecated
[^:]*:35: s suffix on comparison instruction is deprecated

View File

@ -1,16 +1,16 @@
.*: Assembler messages:
.*:7: Error: swp{b} use is obsoleted for ARMv8 and later
.*:10: Warning: This coprocessor register access is deprecated in ARMv8
.*:11: Warning: This coprocessor register access is deprecated in ARMv8
.*:12: Warning: This coprocessor register access is deprecated in ARMv8
.*:13: Warning: This coprocessor register access is deprecated in ARMv8
.*:14: Warning: This coprocessor register access is deprecated in ARMv8
.*:17: Warning: setend use is deprecated for ARMv8
.*:20: Warning: setend use is deprecated for ARMv8
.*:10: This coprocessor register access is deprecated in ARMv8
.*:11: This coprocessor register access is deprecated in ARMv8
.*:12: This coprocessor register access is deprecated in ARMv8
.*:13: This coprocessor register access is deprecated in ARMv8
.*:14: This coprocessor register access is deprecated in ARMv8
.*:17: setend use is deprecated for ARMv8
.*:20: setend use is deprecated for ARMv8
.*:24: Error: immediate value out of range -- `hlt 0x10000'
.*:25: Error: instruction cannot be conditional -- `hltne 0x1'
.*:29: Error: immediate value out of range -- `hlt 64'
.*:31: Warning: IT blocks containing 16-bit Thumb instructions of the following class are deprecated in ARMv8: Miscellaneous 16-bit instructions
.*:31: IT blocks containing 16-bit Thumb instructions of the following class are deprecated in ARMv8: Miscellaneous 16-bit instructions
.*:31: Error: instruction is always unconditional -- `hltne 0'
.*:35: Error: r15 not allowed here -- `stlb pc,\[r0\]'
.*:36: Error: r15 not allowed here -- `stlb r0,\[pc\]'

View File

@ -1,18 +1,18 @@
.*: Assembler messages:
.*:7: Warning: IT blocks containing 32-bit Thumb instructions are deprecated in ARMv8
.*:15: Warning: IT blocks containing more than one conditional instruction are deprecated in ARMv8
.*:20: Warning: IT blocks containing more than one conditional instruction are deprecated in ARMv8
.*:30: Warning: IT blocks containing 32-bit Thumb instructions are deprecated in ARMv8
.*:36: Warning: IT blocks containing more than one conditional instruction are deprecated in ARMv8
.*:40: Warning: IT blocks containing 16-bit Thumb instructions of the following class are deprecated in ARMv8: Short branches, Undefined, SVC, LDM/STM
.*:43: Warning: IT blocks containing 16-bit Thumb instructions of the following class are deprecated in ARMv8: Miscellaneous 16-bit instructions
.*:49: Warning: IT blocks containing 16-bit Thumb instructions of the following class are deprecated in ARMv8: Literal loads
.*:52: Warning: IT blocks containing 16-bit Thumb instructions of the following class are deprecated in ARMv8: Hi-register ADD, MOV, CMP, BX, BLX using pc
.*:55: Warning: IT blocks containing 16-bit Thumb instructions of the following class are deprecated in ARMv8: Short branches, Undefined, SVC, LDM/STM
.*:7: IT blocks containing 32-bit Thumb instructions are deprecated in ARMv8
.*:15: IT blocks containing more than one conditional instruction are deprecated in ARMv8
.*:20: IT blocks containing more than one conditional instruction are deprecated in ARMv8
.*:30: IT blocks containing 32-bit Thumb instructions are deprecated in ARMv8
.*:36: IT blocks containing more than one conditional instruction are deprecated in ARMv8
.*:40: IT blocks containing 16-bit Thumb instructions of the following class are deprecated in ARMv8: Short branches, Undefined, SVC, LDM/STM
.*:43: IT blocks containing 16-bit Thumb instructions of the following class are deprecated in ARMv8: Miscellaneous 16-bit instructions
.*:49: IT blocks containing 16-bit Thumb instructions of the following class are deprecated in ARMv8: Literal loads
.*:52: IT blocks containing 16-bit Thumb instructions of the following class are deprecated in ARMv8: Hi-register ADD, MOV, CMP, BX, BLX using pc
.*:55: IT blocks containing 16-bit Thumb instructions of the following class are deprecated in ARMv8: Short branches, Undefined, SVC, LDM/STM
.*:55: Error: r15 not allowed here -- `addeq r0,pc,pc'
.*:58: Warning: IT blocks containing 16-bit Thumb instructions of the following class are deprecated in ARMv8: Short branches, Undefined, SVC, LDM/STM
.*:58: IT blocks containing 16-bit Thumb instructions of the following class are deprecated in ARMv8: Short branches, Undefined, SVC, LDM/STM
.*:58: Error: r15 not allowed here -- `addeq pc,r0,r0'
.*:61: Warning: IT blocks containing 16-bit Thumb instructions of the following class are deprecated in ARMv8: ADD/SUB sp, sp #imm
.*:65: Warning: IT blocks containing 16-bit Thumb instructions of the following class are deprecated in ARMv8: ADD/SUB sp, sp #imm
.*:68: Warning: IT blocks containing 16-bit Thumb instructions of the following class are deprecated in ARMv8: ADD/SUB sp, sp #imm
.*:72: Warning: IT blocks containing 16-bit Thumb instructions of the following class are deprecated in ARMv8: ADD/SUB sp, sp #imm
.*:61: IT blocks containing 16-bit Thumb instructions of the following class are deprecated in ARMv8: ADD/SUB sp, sp #imm
.*:65: IT blocks containing 16-bit Thumb instructions of the following class are deprecated in ARMv8: ADD/SUB sp, sp #imm
.*:68: IT blocks containing 16-bit Thumb instructions of the following class are deprecated in ARMv8: ADD/SUB sp, sp #imm
.*:72: IT blocks containing 16-bit Thumb instructions of the following class are deprecated in ARMv8: ADD/SUB sp, sp #imm

View File

@ -1,4 +1,4 @@
[^:]*: Assembler messages:
[^:]*:2: Warning: swp{b} use is obsoleted for ARMv8 and later
[^:]*:6: Warning: swp{b} use is deprecated for ARMv6 and ARMv7
[^:]*:8: Warning: swp{b} use is deprecated for ARMv6 and ARMv7
[^:]*:2: swp{b} use is obsoleted for ARMv8 and later
[^:]*:6: swp{b} use is deprecated for ARMv6 and ARMv7
[^:]*:8: swp{b} use is deprecated for ARMv6 and ARMv7

View File

@ -1,2 +1,2 @@
.*: Assembler messages:
.*: Warning: conditional infixes are deprecated in unified syntax
.*: conditional infixes are deprecated in unified syntax

View File

@ -1,2 +1,2 @@
.*: Assembler messages:
.*: Warning: conditional infixes are deprecated in unified syntax
.*: conditional infixes are deprecated in unified syntax

View File

@ -76,9 +76,9 @@
[^:]*:[0-9]+: Error: r15 not allowed here -- `cmn.w r0,r15'
[^:]*:[0-9]+: Error: r15 not allowed here -- `cmp.w r15,#1'
[^:]*:[0-9]+: Error: r15 not allowed here -- `cmp r15,r0'
[^:]*:[0-9]+: Warning: use of r13 is deprecated
[^:]*:[0-9]+: use of r13 is deprecated
[^:]*:[0-9]+: Error: r15 not allowed here -- `cmp r0,r15'
[^:]*:[0-9]+: Warning: use of r13 is deprecated
[^:]*:[0-9]+: use of r13 is deprecated
[^:]*:[0-9]+: Error: r15 not allowed here -- `cmp.n r0,r15'
[^:]*:[0-9]+: Error: r15 not allowed here -- `cmp.w r15,r0'
[^:]*:[0-9]+: Error: r13 not allowed here -- `cmp.w r0,r13'
@ -147,10 +147,10 @@
[^:]*:[0-9]+: Error: r15 not allowed here -- `mov.w r15,r13'
[^:]*:[0-9]+: Error: r15 not allowed here -- `mov.w r13,r15'
[^:]*:[0-9]+: Error: r15 not allowed here -- `mov.w r15,r15'
[^:]*:[0-9]+: Warning: Use of r13 as a source register is deprecated when r13 is the destination register.
[^:]*:[0-9]+: Warning: Use of r13 as a source register is deprecated when r15 is the destination register.
[^:]*:[0-9]+: Warning: Use of r15 as a source register is deprecated when r13 is the destination register.
[^:]*:[0-9]+: Warning: Use of r15 as a source register is deprecated when r15 is the destination register.
[^:]*:[0-9]+: Use of r13 as a source register is deprecated when r13 is the destination register.
[^:]*:[0-9]+: Use of r13 as a source register is deprecated when r15 is the destination register.
[^:]*:[0-9]+: Use of r15 as a source register is deprecated when r13 is the destination register.
[^:]*:[0-9]+: Use of r15 as a source register is deprecated when r15 is the destination register.
[^:]*:[0-9]+: Error: r13 not allowed here -- `movs r13,r13'
[^:]*:[0-9]+: Error: r15 not allowed here -- `movs r15,r13'
[^:]*:[0-9]+: Error: r13 not allowed here -- `movs r13,r15'

View File

@ -1,17 +1,17 @@
[^;]*: Assembler messages:
[^;]*:450: Warning: s suffix on comparison instruction is deprecated
[^;]*:450: Warning: s suffix on comparison instruction is deprecated
[^;]*:450: Warning: s suffix on comparison instruction is deprecated
[^;]*:450: Warning: s suffix on comparison instruction is deprecated
[^;]*:451: Warning: s suffix on comparison instruction is deprecated
[^;]*:451: Warning: s suffix on comparison instruction is deprecated
[^;]*:451: Warning: s suffix on comparison instruction is deprecated
[^;]*:451: Warning: s suffix on comparison instruction is deprecated
[^;]*:452: Warning: s suffix on comparison instruction is deprecated
[^;]*:452: Warning: s suffix on comparison instruction is deprecated
[^;]*:452: Warning: s suffix on comparison instruction is deprecated
[^;]*:452: Warning: s suffix on comparison instruction is deprecated
[^;]*:453: Warning: s suffix on comparison instruction is deprecated
[^;]*:453: Warning: s suffix on comparison instruction is deprecated
[^;]*:453: Warning: s suffix on comparison instruction is deprecated
[^;]*:453: Warning: s suffix on comparison instruction is deprecated
[^;]*:450: s suffix on comparison instruction is deprecated
[^;]*:450: s suffix on comparison instruction is deprecated
[^;]*:450: s suffix on comparison instruction is deprecated
[^;]*:450: s suffix on comparison instruction is deprecated
[^;]*:451: s suffix on comparison instruction is deprecated
[^;]*:451: s suffix on comparison instruction is deprecated
[^;]*:451: s suffix on comparison instruction is deprecated
[^;]*:451: s suffix on comparison instruction is deprecated
[^;]*:452: s suffix on comparison instruction is deprecated
[^;]*:452: s suffix on comparison instruction is deprecated
[^;]*:452: s suffix on comparison instruction is deprecated
[^;]*:452: s suffix on comparison instruction is deprecated
[^;]*:453: s suffix on comparison instruction is deprecated
[^;]*:453: s suffix on comparison instruction is deprecated
[^;]*:453: s suffix on comparison instruction is deprecated
[^;]*:453: s suffix on comparison instruction is deprecated

View File

@ -1,3 +1,3 @@
^[^:]*: Assembler messages:
^[^:]*:16: Warning: IT blocks containing 16-bit Thumb instructions of the following class are deprecated in ARMv8: Short branches, Undefined, SVC, LDM/STM
^[^:]*:21: Warning: IT blocks containing 32-bit Thumb instructions are deprecated in ARMv8
^[^:]*:16: IT blocks containing 16-bit Thumb instructions of the following class are deprecated in ARMv8: Short branches, Undefined, SVC, LDM/STM
^[^:]*:21: IT blocks containing 32-bit Thumb instructions are deprecated in ARMv8

View File

@ -1,3 +1,3 @@
[^:]*: Assembler messages:
[^:]*:6: Warning: Use of PC here is deprecated
[^:]*:7: Warning: Use of PC here is deprecated
[^:]*:6: Use of PC here is deprecated
[^:]*:7: Use of PC here is deprecated