On 23/06/2020 17:56, Richard Sandiford wrote:
Matthew Malcomson <matthew.malcom...@arm.com> writes:
On 23/06/2020 17:17, Richard Sandiford wrote:
Matthew Malcomson <matthew.malcom...@arm.com> writes:
--- a/gcc/config/aarch64/aarch64-protos.h
+/* Ensure there are no BR or RET instructions which are not directly followed
+ by a speculation barrier. */
+/* { dg-final { scan-assembler-not
"\t(br|ret|retaa|retab)\tx\[0-9\]\[0-9\]?\n\t(?!dsb\tsy\n\tisb|sb)" } } */
Isn't the “sb” alternative invalid given the -march option?
Probably slightly easier to read if the regexp is quoted using {…}
rather than "…". Same for the other tests.
Just to check before I respin: Using {} instead of "" means I need to
replace \t with a literal tab -- do you still prefer it?
Are you sure? We've been using tests like:
/* { dg-final { scan-assembler-times {\tadd\tz[0-9]+\.s, z[0-9]+\.s,
z[0-9]+\.s\n} 1 } } */
for SVE without problems. Using {…} means that backslash quoting
is applied by the regexp parser rather than the Tcl string parser,
but both should work for things like \t.
Richard
Ah -- my mistake -- I was just checking with `string compare` while
making the change and didn't think too hard when I saw a -1.