+2019-04-30 Jakub Jelinek <jakub@redhat.com>
+
+ PR target/89093
+ * config/aarch64/aarch64.c (aarch64_process_one_target_attr): Don't skip
+ whitespace at the start of target attribute string.
+
2019-04-30 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
PR target/86538
* config/aarch64/aarch64-c.c (aarch64_update_cpp_builtins):
- Define __ARM_FEATURE_ATOMICS
+ Define __ARM_FEATURE_ATOMICS.
2019-04-30 Martin Liska <mliska@suse.cz>
char *str_to_check = (char *) alloca (len + 1);
strcpy (str_to_check, arg_str);
- /* Skip leading whitespace. */
- while (*str_to_check == ' ' || *str_to_check == '\t')
- str_to_check++;
-
/* We have something like __attribute__ ((target ("+fp+nosimd"))).
It is easier to detect and handle it explicitly here rather than going
through the machinery for the rest of the target attributes in this
2019-04-30 Jakub Jelinek <jakub@redhat.com>
+ PR target/89093
+ * gcc.target/aarch64/pr89093.c: New test.
+ * gcc.target/aarch64/pr63304_1.c: Remove space from target string.
+
PR tree-optimization/89475
* gcc.dg/tree-ssa/pr89475.c: New test.
/* { dg-do assemble } */
/* { dg-options "-O1 --save-temps" } */
#pragma GCC push_options
-#pragma GCC target ("+nothing+simd, cmodel=small")
+#pragma GCC target ("+nothing+simd,cmodel=small")
int
cal (double a)
--- /dev/null
+/* PR target/89093 */
+/* { dg-do compile } */
+
+__attribute__((target (" no-strict-align"))) void f1 (void) {} /* { dg-error "is not valid" } */
+__attribute__((target (" general-regs-only"))) void f2 (void) {} /* { dg-error "is not valid" } */
+#pragma GCC target (" general-regs-only") /* { dg-error "is not valid" } */
+void f3 (void) {}