* aarch64-opc.c (set_syntax_error): New function.
	(operand_general_constraint_met_p): Replace set_other_error
	with set_syntax_error.

gas/testsuite/

	* gas/aarch64/diagnostic.s: Add tests of ldp/stp.
	* gas/aarch64/diagnostic.l: Update.
This commit is contained in:
Yufeng Zhang
2013-11-05 20:46:24 +00:00
parent 62d887d406
commit 4e50d5f863
5 changed files with 36 additions and 4 deletions

View File

@@ -1,3 +1,9 @@
2013-11-05 Yufeng Zhang <yufeng.zhang@arm.com>
* aarch64-opc.c (set_syntax_error): New function.
(operand_general_constraint_met_p): Replace set_other_error
with set_syntax_error.
2013-10-30 Andreas Arnez <arnez@linux.vnet.ibm.com>
* s390-dis.c (init_disasm): Default to full 'zarch' opcode

View File

@@ -1121,6 +1121,15 @@ set_error (aarch64_operand_error *mismatch_detail,
mismatch_detail->error = error;
}
static inline void
set_syntax_error (aarch64_operand_error *mismatch_detail, int idx,
const char* error)
{
if (mismatch_detail == NULL)
return;
set_error (mismatch_detail, AARCH64_OPDE_SYNTAX_ERROR, idx, error);
}
static inline void
set_out_of_range_error (aarch64_operand_error *mismatch_detail,
int idx, int lower_bound, int upper_bound,
@@ -1288,8 +1297,8 @@ operand_general_constraint_met_p (const aarch64_opnd_info *opnds, int idx,
case ldst_unpriv:
if (opnd->addr.writeback == 1)
{
set_other_error (mismatch_detail, idx,
_("unexpected address writeback"));
set_syntax_error (mismatch_detail, idx,
_("unexpected address writeback"));
return 0;
}
break;
@@ -1299,8 +1308,8 @@ operand_general_constraint_met_p (const aarch64_opnd_info *opnds, int idx,
case asisdlsop:
if (opnd->addr.writeback == 0)
{
set_other_error (mismatch_detail, idx,
_("address writeback expected"));
set_syntax_error (mismatch_detail, idx,
_("address writeback expected"));
return 0;
}
break;