Enable verbose error messages by default for AArch64 gas.

gas/

	* config/tc-aarch64.c (aarch64_opts): Add new option
	"mno-verbose-error".
	(verbose_error_p): Initialize to 1.
	* doc/c-aarch64.texi (AArch64 Options): Document -mverbose-error
	and -mno-verbose-error.

gas/testsuite/

	* gas/aarch64/illegal.d: Pass -mno-verbose-error.
	* gas/aarch64/verbose-error.s: Add more verbose message testcases.
	* gas/aarch64/verbose-error.l: Ditto.
This commit is contained in:
Yufeng Zhang 2014-03-18 17:41:43 +00:00
parent d68d7e6b82
commit a52e6fd34a
7 changed files with 203 additions and 4 deletions

View File

@ -1,3 +1,11 @@
2014-03-18 Jiong Wang <jiong.wang@arm.com>
* config/tc-aarch64.c (aarch64_opts): Add new option
"mno-verbose-error".
(verbose_error_p): Initialize to 1.
* doc/c-aarch64.texi (AArch64 Options): Document -mverbose-error
and -mno-verbose-error.
2014-03-17 Nick Clifton <nickc@redhat.com>
PR gas/16694

View File

@ -3553,9 +3553,9 @@ fix_new_aarch64 (fragS * frag,
/* Diagnostics on operands errors. */
/* By default, output one-line error message only.
Enable the verbose error message by -merror-verbose. */
static int verbose_error_p = 0;
/* By default, output verbose error message.
Disable the verbose error message by -mno-verbose-error. */
static int verbose_error_p = 1;
#ifdef DEBUG_AARCH64
/* N.B. this is only for the purpose of debugging. */
@ -7155,6 +7155,8 @@ static struct aarch64_option_table aarch64_opts[] = {
#endif /* DEBUG_AARCH64 */
{"mverbose-error", N_("output verbose error messages"), &verbose_error_p, 1,
NULL},
{"mno-verbose-error", N_("do not output verbose error messages"),
&verbose_error_p, 0, NULL},
{NULL, NULL, NULL, 0, NULL}
};

View File

@ -88,6 +88,15 @@ extension options as the @option{-mcpu} option. Unlike
@option{-mcpu}, extensions are not always enabled by default,
@xref{AArch64 Extensions}.
@cindex @code{-mverbose-error} command line option, AArch64
@item -mverbose-error
This option enables verbose error messages for AArch64 gas. This option
is enabled by default.
@cindex @code{-mno-verbose-error} command line option, AArch64
@item -mno-verbose-error
This option disables verbose error messages in AArch64 gas.
@end table
@c man end

View File

@ -1,3 +1,9 @@
2014-03-18 Jiong Wang <jiong.wang@arm.com>
* gas/aarch64/illegal.d: Pass -mno-verbose-error.
* gas/aarch64/verbose-error.s: Add more verbose message testcases.
* gas/aarch64/verbose-error.l: Ditto.
2014-03-17 Nick Clifton <nickc@redhat.com>
PR gas/16694

View File

@ -1,4 +1,4 @@
#name: Illegal Instructions
#as:
#as: -mno-verbose-error
#source: illegal.s
#error-output: illegal.l

View File

@ -43,3 +43,135 @@
[^:]*:16: Info: other valid variant\(s\):
[^:]*:16: Info: ldnp d3,d7,\[sp\],#16
[^:]*:16: Info: ldnp q3,q7,\[sp\],#16
[^:]*:18: Error: operand mismatch -- `suqadd v0.8b,v1.16b'
[^:]*:18: Info: did you mean this\?
[^:]*:18: Info: suqadd v0.8b,v1.8b
[^:]*:18: Info: other valid variant\(s\):
[^:]*:18: Info: suqadd v0.16b,v1.16b
[^:]*:18: Info: suqadd v0.4h,v1.4h
[^:]*:18: Info: suqadd v0.8h,v1.8h
[^:]*:18: Info: suqadd v0.2s,v1.2s
[^:]*:18: Info: suqadd v0.4s,v1.4s
[^:]*:18: Info: suqadd v0.2d,v1.2d
[^:]*:20: Error: operand mismatch -- `ursqrte v2.8b,v3.8b'
[^:]*:20: Info: did you mean this\?
[^:]*:20: Info: ursqrte v2.2s,v3.2s
[^:]*:20: Info: other valid variant\(s\):
[^:]*:20: Info: ursqrte v2.4s,v3.4s
[^:]*:22: Error: operand mismatch -- `rev32 v4.2s,v5.2s'
[^:]*:22: Info: did you mean this\?
[^:]*:22: Info: rev32 v4.8b,v5.8b
[^:]*:22: Info: other valid variant\(s\):
[^:]*:22: Info: rev32 v4.16b,v5.16b
[^:]*:22: Info: rev32 v4.4h,v5.4h
[^:]*:22: Info: rev32 v4.8h,v5.8h
[^:]*:24: Error: operand mismatch -- `frintn v6.8b,v7.8b'
[^:]*:24: Info: did you mean this\?
[^:]*:24: Info: frintn v6.2s,v7.2s
[^:]*:24: Info: other valid variant\(s\):
[^:]*:24: Info: frintn v6.4s,v7.4s
[^:]*:24: Info: frintn v6.2d,v7.2d
[^:]*:26: Error: operand mismatch -- `rev64 v8.2d,v9.2d'
[^:]*:26: Info: did you mean this\?
[^:]*:26: Info: rev64 v8.8b,v9.8b
[^:]*:26: Info: other valid variant\(s\):
[^:]*:26: Info: rev64 v8.16b,v9.16b
[^:]*:26: Info: rev64 v8.4h,v9.4h
[^:]*:26: Info: rev64 v8.8h,v9.8h
[^:]*:26: Info: rev64 v8.2s,v9.2s
[^:]*:26: Info: rev64 v8.4s,v9.4s
[^:]*:28: Error: operand mismatch -- `rev16 v10.2s,v11.2s'
[^:]*:28: Info: did you mean this\?
[^:]*:28: Info: rev16 v10.8b,v11.8b
[^:]*:28: Info: other valid variant\(s\):
[^:]*:28: Info: rev16 v10.16b,v11.16b
[^:]*:30: Error: operand mismatch -- `saddlp v12.8b,v13.8b'
[^:]*:30: Info: did you mean this\?
[^:]*:30: Info: saddlp v12.4h,v13.8b
[^:]*:30: Info: other valid variant\(s\):
[^:]*:30: Info: saddlp v12.8h,v13.16b
[^:]*:30: Info: saddlp v12.2s,v13.4h
[^:]*:30: Info: saddlp v12.4s,v13.8h
[^:]*:30: Info: saddlp v12.1d,v13.2s
[^:]*:30: Info: saddlp v12.2d,v13.4s
[^:]*:32: Error: operand mismatch -- `shll v14.8b,v15.8h,#1'
[^:]*:32: Info: did you mean this\?
[^:]*:32: Info: shll v14.8h,v15.8b,#1
[^:]*:32: Info: other valid variant\(s\):
[^:]*:32: Info: shll v14.4s,v15.4h,#1
[^:]*:32: Info: shll v14.2d,v15.2s,#1
[^:]*:34: Error: operand mismatch -- `shll2 v14.8b,v15.8h,#1'
[^:]*:34: Info: did you mean this\?
[^:]*:34: Info: shll2 v14.4s,v15.8h,#1
[^:]*:34: Info: other valid variant\(s\):
[^:]*:34: Info: shll2 v14.8h,v15.16b,#1
[^:]*:34: Info: shll2 v14.2d,v15.4s,#1
[^:]*:36: Error: operand mismatch -- `fcvtxn v22.8b,v23.8b'
[^:]*:36: Info: did you mean this\?
[^:]*:36: Info: fcvtxn v22.2s,v23.2d
[^:]*:38: Error: operand mismatch -- `fcvtxn2 v24.8b,v25.8b'
[^:]*:38: Info: did you mean this\?
[^:]*:38: Info: fcvtxn2 v24.4s,v25.2d
[^:]*:40: Error: operand mismatch -- `fcvtn v25.4s,v26.4s'
[^:]*:40: Info: did you mean this\?
[^:]*:40: Info: fcvtn v25.4h,v26.4s
[^:]*:40: Info: other valid variant\(s\):
[^:]*:40: Info: fcvtn v25.2s,v26.2d
[^:]*:42: Error: operand mismatch -- `fcvtn2 v27.4s,v28.4s'
[^:]*:42: Info: did you mean this\?
[^:]*:42: Info: fcvtn2 v27.8h,v28.4s
[^:]*:42: Info: other valid variant\(s\):
[^:]*:42: Info: fcvtn2 v27.4s,v28.2d
[^:]*:44: Error: operand mismatch -- `fcvtl v29.8b,v30.8b'
[^:]*:44: Info: did you mean this\?
[^:]*:44: Info: fcvtl v29.4s,v30.4h
[^:]*:44: Info: other valid variant\(s\):
[^:]*:44: Info: fcvtl v29.2d,v30.2s
[^:]*:46: Error: operand mismatch -- `fcvtl2 v1.2d,v2.2d'
[^:]*:46: Info: did you mean this\?
[^:]*:46: Info: fcvtl2 v1.2d,v2.4s
[^:]*:46: Info: other valid variant\(s\):
[^:]*:46: Info: fcvtl2 v1.4s,v2.8h
[^:]*:48: Error: operand mismatch -- `sqadd v16.8b,v17.8h,v18.8h'
[^:]*:48: Info: did you mean this\?
[^:]*:48: Info: sqadd v16.8h,v17.8h,v18.8h
[^:]*:48: Info: other valid variant\(s\):
[^:]*:48: Info: sqadd v16.8b,v17.8b,v18.8b
[^:]*:48: Info: sqadd v16.16b,v17.16b,v18.16b
[^:]*:48: Info: sqadd v16.4h,v17.4h,v18.4h
[^:]*:48: Info: sqadd v16.2s,v17.2s,v18.2s
[^:]*:48: Info: sqadd v16.4s,v17.4s,v18.4s
[^:]*:48: Info: sqadd v16.2d,v17.2d,v18.2d
[^:]*:50: Error: operand mismatch -- `shadd v19.8b,v20.8h,v21.8h'
[^:]*:50: Info: did you mean this\?
[^:]*:50: Info: shadd v19.8h,v20.8h,v21.8h
[^:]*:50: Info: other valid variant\(s\):
[^:]*:50: Info: shadd v19.8b,v20.8b,v21.8b
[^:]*:50: Info: shadd v19.16b,v20.16b,v21.16b
[^:]*:50: Info: shadd v19.4h,v20.4h,v21.4h
[^:]*:50: Info: shadd v19.2s,v20.2s,v21.2s
[^:]*:50: Info: shadd v19.4s,v20.4s,v21.4s
[^:]*:52: Error: operand mismatch -- `sha1su0 v1.16b,v2.16b,v3.16b'
[^:]*:52: Info: did you mean this\?
[^:]*:52: Info: sha1su0 v1.4s,v2.4s,v3.4s
[^:]*:54: Error: operand mismatch -- `shadd v1.2d,v2.2d,v3.2d'
[^:]*:54: Info: did you mean this\?
[^:]*:54: Info: shadd v1.8b,v2.8b,v3.8b
[^:]*:54: Info: other valid variant\(s\):
[^:]*:54: Info: shadd v1.16b,v2.16b,v3.16b
[^:]*:54: Info: shadd v1.4h,v2.4h,v3.4h
[^:]*:54: Info: shadd v1.8h,v2.8h,v3.8h
[^:]*:54: Info: shadd v1.2s,v2.2s,v3.2s
[^:]*:54: Info: shadd v1.4s,v2.4s,v3.4s
[^:]*:56: Error: operand mismatch -- `sqdmulh v1.16b,v2.16b,v3.16b'
[^:]*:56: Info: did you mean this\?
[^:]*:56: Info: sqdmulh v1.4h,v2.4h,v3.4h
[^:]*:56: Info: other valid variant\(s\):
[^:]*:56: Info: sqdmulh v1.8h,v2.8h,v3.8h
[^:]*:56: Info: sqdmulh v1.2s,v2.2s,v3.2s
[^:]*:56: Info: sqdmulh v1.4s,v2.4s,v3.4s
[^:]*:58: Error: operand mismatch -- `sqdmlal2 v1.16b,v2.16b,v3.16b'
[^:]*:58: Info: did you mean this\?
[^:]*:58: Info: sqdmlal2 v1.4s,v2.8h,v3.8h
[^:]*:58: Info: other valid variant\(s\):
[^:]*:58: Info: sqdmlal2 v1.2d,v2.4s,v3.4s

View File

@ -14,3 +14,45 @@
adds w0, wsp, x0, uxtx #1
fmov d0, s0
ldnp h3, h7, [sp], #16
# QL_V2SAME
suqadd v0.8b, v1.16b
# QL_V2SAME
ursqrte v2.8b, v3.8b
# QL_V2SAMEBH
rev32 v4.2s, v5.2s
#QL_V2SAMESD
frintn v6.8b, v7.8b
#QL_V2SAMEBHS
rev64 v8.2d, v9.2d
#QL_V2SAMEB
rev16 v10.2s, v11.2s
#QL_V2PAIRWISELONGBHS
saddlp v12.8b, v13.8b
#QL_V2LONGBHS
shll v14.8b, v15.8h, #1
#QL_V2LONGBHS2
shll2 v14.8b, v15.8h, #1
#QL_V2NARRS
fcvtxn v22.8b, v23.8b
#QL_V2NARRS2
fcvtxn2 v24.8b, v25.8b
#QL_V2NARRHS
fcvtn v25.4s, v26.4s
#QL_V2NARRHS2
fcvtn2 v27.4s, v28.4s
#QL_V2LONGHS
fcvtl v29.8b, v30.8b
#QL_V2LONGHS2
fcvtl2 v1.2d, v2.2d
#QL_V3SAME
sqadd v16.8b, v17.8h, v18.8h
#QL_V3SAMEBHS
shadd v19.8b, v20.8h, v21.8h
#QL_V3SAME4S
sha1su0 v1.16b, v2.16b, v3.16b
#QL_V3SAMEEB
shadd v1.2d, v2.2d, v3.2d
#QL_V3SAMEEHS
sqdmulh v1.16b, v2.16b, v3.16b
#QL_V3LONGHS2
sqdmlal2 v1.16b, v2.16b, v3.16b