diff options
author | Dimitar Dimitrov <dimitar@dinux.eu> | 2018-06-22 06:35:42 +0300 |
---|---|---|
committer | Dimitar Dimitrov <dimitar@dinux.eu> | 2020-05-05 20:42:57 +0300 |
commit | 931dfb70abce3d979b8fa81e3b7c7dfcfecb0cd4 (patch) | |
tree | eb41c2cc040b57ff00e5709c5acb646adfb04c8f | |
parent | 09d8b020dbcbfd50e4ed1ee8681a191572288ebd (diff) | |
download | gcc-931dfb70abce3d979b8fa81e3b7c7dfcfecb0cd4.zip gcc-931dfb70abce3d979b8fa81e3b7c7dfcfecb0cd4.tar.gz gcc-931dfb70abce3d979b8fa81e3b7c7dfcfecb0cd4.tar.bz2 |
testsuite: pru: Add clobber test
gcc/testsuite/ChangeLog:
2020-05-05 Dimitar Dimitrov <dimitar@dinux.eu>
* gcc.target/pru/clobber-sp.c: New test.
Signed-off-by: Dimitar Dimitrov <dimitar@dinux.eu>
-rw-r--r-- | gcc/testsuite/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/testsuite/gcc.target/pru/clobber-sp.c | 24 |
2 files changed, 28 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 092eab6..97a1ad5 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,5 +1,9 @@ 2020-05-05 Dimitar Dimitrov <dimitar@dinux.eu> + * gcc.target/pru/clobber-sp.c: New test. + +2020-05-05 Dimitar Dimitrov <dimitar@dinux.eu> + * gcc.target/pru/lra-framepointer-fragmentation-1.c: Update test to take into account additional available registers. * gcc.target/pru/lra-framepointer-fragmentation-2.c: Ditto. diff --git a/gcc/testsuite/gcc.target/pru/clobber-sp.c b/gcc/testsuite/gcc.target/pru/clobber-sp.c new file mode 100644 index 0000000..3cc0a60 --- /dev/null +++ b/gcc/testsuite/gcc.target/pru/clobber-sp.c @@ -0,0 +1,24 @@ +/* Test inline ASM clobber for SP register */ + +/* { dg-do compile } */ +/* { dg-options "-O1" } */ + +/* -O1 in the options is significant. */ + +extern void abort (void); + +int +test1 (void) +{ + int res; + + /* { dg-warning "listing the stack pointer register 'sp' in a clobber list is deprecated" "" { target pru-*-* } .+2 } */ + /* { dg-message "note: the value of the stack pointer after an 'asm' statement must be the same as it was before the statement" "" { target pru-*-* } .+1 } */ + asm volatile( + "ldi %[res], 101 \n\t" + : [res] "=r" (res) + : + : "sp"); + + return res; +} |