diff options
author | Thomas Preud'homme <thomas.preudhomme@arm.com> | 2017-11-17 10:01:33 +0000 |
---|---|---|
committer | Thomas Preud'homme <thopre01@gcc.gnu.org> | 2017-11-17 10:01:33 +0000 |
commit | 7326cf0fb08b1977171aa97bc8370d950129c813 (patch) | |
tree | 3f7cb0b66cee3d7807532bdcf03801cd02124bfc /gcc | |
parent | cdee9e6b79a553ff5648af2c554f3806d5719968 (diff) | |
download | gcc-7326cf0fb08b1977171aa97bc8370d950129c813.zip gcc-7326cf0fb08b1977171aa97bc8370d950129c813.tar.gz gcc-7326cf0fb08b1977171aa97bc8370d950129c813.tar.bz2 |
[ARM] Rework expectation for call to Armv8-M nonsecure function
Testcase gcc.target/arm/cmse/cmse-14.c checks whether bar is called via
__gnu_cmse_nonsecure_call libcall and not via a direct call. However the
pattern is a bit surprising in that it needs to explicitely allow "by"
due to allowing anything before the 'b'.
This patch rewrites the logic to look for b as a first non-whitespace
letter followed iby anything (to match bl and conditional branches)
followed by some spaces and then bar.
2017-11-17 Thomas Preud'homme <thomas.preudhomme@arm.com>
gcc/testsuite/
* gcc.target/arm/cmse/cmse-14.c: Change logic to match branch
instruction to bar.
From-SVN: r254861
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/testsuite/gcc.target/arm/cmse/cmse-14.c | 2 |
2 files changed, 6 insertions, 1 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index a259211..652ddc8 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,5 +1,10 @@ 2017-11-17 Thomas Preud'homme <thomas.preudhomme@arm.com> + * gcc.target/arm/cmse/cmse-14.c: Change logic to match branch + instruction to bar. + +2017-11-17 Thomas Preud'homme <thomas.preudhomme@arm.com> + * gcc.target/arm/cmse/cmse.exp: Add option to select Armv8-M Baseline or Armv8-M Mainline when running the respective tests. * gcc.target/arm/cmse/baseline/cmse-11.c: Remove architecture check and diff --git a/gcc/testsuite/gcc.target/arm/cmse/cmse-14.c b/gcc/testsuite/gcc.target/arm/cmse/cmse-14.c index 701e9ee..df1ea52 100644 --- a/gcc/testsuite/gcc.target/arm/cmse/cmse-14.c +++ b/gcc/testsuite/gcc.target/arm/cmse/cmse-14.c @@ -10,4 +10,4 @@ int foo (void) } /* { dg-final { scan-assembler "bl\t__gnu_cmse_nonsecure_call" } } */ -/* { dg-final { scan-assembler-not "b\[^ y\n\]*\\s+bar" } } */ +/* { dg-final { scan-assembler-not "^(.*\\s)?bl?\[^\\s]*\\s+bar" } } */ |