diff options
author | Jakub Jelinek <jakub@redhat.com> | 2019-04-17 10:30:44 +0200 |
---|---|---|
committer | Jakub Jelinek <jakub@gcc.gnu.org> | 2019-04-17 10:30:44 +0200 |
commit | fc2b685884a2a3812b2961091d6943f9a310973f (patch) | |
tree | 4cfaf7969ed3fef16f9870013d99e30e55d7f286 | |
parent | 347ef24548b81cd6ad795eb06b87eb041dd6feae (diff) | |
download | gcc-fc2b685884a2a3812b2961091d6943f9a310973f.zip gcc-fc2b685884a2a3812b2961091d6943f9a310973f.tar.gz gcc-fc2b685884a2a3812b2961091d6943f9a310973f.tar.bz2 |
re PR target/89093 (C++ exception handling clobbers d8 VFP register)
PR target/89093
* config/arm/arm.c (arm_valid_target_attribute_rec): Don't skip
whitespace at the start of target attribute string.
* gcc.target/arm/pr89093-2.c: New test.
From-SVN: r270404
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/config/arm/arm.c | 2 | ||||
-rw-r--r-- | gcc/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/testsuite/gcc.target/arm/pr89093-2.c | 9 |
4 files changed, 20 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 4371597..231bb83 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2019-04-17 Jakub Jelinek <jakub@redhat.com> + + PR target/89093 + * config/arm/arm.c (arm_valid_target_attribute_rec): Don't skip + whitespace at the start of target attribute string. + 2019-04-16 Pat Haugen <pthaugen@us.ibm.com> PR target/84369 diff --git a/gcc/config/arm/arm.c b/gcc/config/arm/arm.c index 9cda96a..731150d 100644 --- a/gcc/config/arm/arm.c +++ b/gcc/config/arm/arm.c @@ -30871,8 +30871,6 @@ arm_valid_target_attribute_rec (tree args, struct gcc_options *opts) while ((q = strtok (argstr, ",")) != NULL) { - while (ISSPACE (*q)) ++q; - argstr = NULL; if (!strcmp (q, "thumb")) opts->x_target_flags |= MASK_THUMB; diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 6abbc57..23f77ec 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2019-04-17 Jakub Jelinek <jakub@redhat.com> + + PR target/89093 + * gcc.target/arm/pr89093-2.c: New test. + 2019-04-16 Jakub Jelinek <jakub@redhat.com> PR c++/86953 diff --git a/gcc/testsuite/gcc.target/arm/pr89093-2.c b/gcc/testsuite/gcc.target/arm/pr89093-2.c new file mode 100644 index 0000000..08de748 --- /dev/null +++ b/gcc/testsuite/gcc.target/arm/pr89093-2.c @@ -0,0 +1,9 @@ +/* PR target/89093 */ +/* { dg-do compile } */ + +__attribute__((target (" arm"))) void f1 (void) {} /* { dg-error "unknown target attribute or pragma ' arm'" } */ +__attribute__((target (" thumb"))) void f2 (void) {} /* { dg-error "unknown target attribute or pragma ' thumb'" } */ +__attribute__((target ("arm, thumb"))) void f3 (void) {} /* { dg-error "unknown target attribute or pragma ' thumb'" } */ +__attribute__((target ("thumb, arm"))) void f4 (void) {} /* { dg-error "unknown target attribute or pragma ' arm'" } */ +#pragma GCC target (" arm") /* { dg-error "unknown target attribute or pragma ' arm'" } */ +void f5 (void) {} |