aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin Liska <mliska@suse.cz>2017-04-07 13:20:01 +0200
committerMartin Liska <marxin@gcc.gnu.org>2017-04-07 11:20:01 +0000
commit3b6cb9e37e663d2d804059fab0acf93b22e0b4e3 (patch)
treeb253a417452be1235392c9ea5359b3389f2f590e
parent70cd23c019a2766eea4a8c9c20b674bc83b181e3 (diff)
downloadgcc-3b6cb9e37e663d2d804059fab0acf93b22e0b4e3.zip
gcc-3b6cb9e37e663d2d804059fab0acf93b22e0b4e3.tar.gz
gcc-3b6cb9e37e663d2d804059fab0acf93b22e0b4e3.tar.bz2
Error message on target attribute on aarch64 target (PR target/79889).
2017-04-07 Martin Liska <mliska@suse.cz> PR target/79889 * g++.dg/ext/mv8.C: Add aarch64* targets. 2017-04-07 Martin Liska <mliska@suse.cz> PR target/79889 * config/aarch64/aarch64.c (aarch64_process_target_attr): Show error message instead of an ICE. From-SVN: r246760
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/config/aarch64/aarch64.c8
-rw-r--r--gcc/testsuite/ChangeLog5
-rw-r--r--gcc/testsuite/g++.dg/ext/mv8.C2
4 files changed, 18 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 6237a2c..099805d 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,11 @@
2017-04-07 Martin Liska <mliska@suse.cz>
+ PR target/79889
+ * config/aarch64/aarch64.c (aarch64_process_target_attr):
+ Show error message instead of an ICE.
+
+2017-04-07 Martin Liska <mliska@suse.cz>
+
PR ipa/80212
* ipa-split.c (split_function): Add function part to a same comdat
group.
diff --git a/gcc/config/aarch64/aarch64.c b/gcc/config/aarch64/aarch64.c
index 721ced1..2e385c4 100644
--- a/gcc/config/aarch64/aarch64.c
+++ b/gcc/config/aarch64/aarch64.c
@@ -9530,8 +9530,12 @@ aarch64_process_target_attr (tree args, const char* pragma_or_attr)
return true;
}
- /* We expect to find a string to parse. */
- gcc_assert (TREE_CODE (args) == STRING_CST);
+
+ if (TREE_CODE (args) != STRING_CST)
+ {
+ error ("attribute %<target%> argument not a string");
+ return false;
+ }
size_t len = strlen (TREE_STRING_POINTER (args));
char *str_to_check = (char *) alloca (len + 1);
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 43e7bec..8b5a580 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,5 +1,10 @@
2017-04-07 Martin Liska <mliska@suse.cz>
+ PR target/79889
+ * g++.dg/ext/mv8.C: Add aarch64* targets.
+
+2017-04-07 Martin Liska <mliska@suse.cz>
+
PR ipa/80212
* g++.dg/ipa/pr80212.C: New test.
diff --git a/gcc/testsuite/g++.dg/ext/mv8.C b/gcc/testsuite/g++.dg/ext/mv8.C
index bbf90b5..b49ef84 100644
--- a/gcc/testsuite/g++.dg/ext/mv8.C
+++ b/gcc/testsuite/g++.dg/ext/mv8.C
@@ -1,4 +1,4 @@
-// { dg-do compile { target i?86-*-* x86_64-*-* powerpc*-*-* } }
+// { dg-do compile { target i?86-*-* x86_64-*-* powerpc*-*-* aarch64*-*-* } }
// { dg-options "" }
__attribute__((target (11,12)))