aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorChristophe Lyon <christophe.lyon@linaro.org>2021-03-18 14:02:53 +0000
committerChristophe Lyon <christophe.lyon@linaro.org>2021-03-23 15:11:45 +0000
commit3c0351f287e1fdf9a085c499f4657a6501c6cf29 (patch)
tree0b21e92e29e464a3303616a422ca660fc1296c47 /gcc
parentbaef0cffb58be7f5d9aeac6313ea9d8becc017b1 (diff)
downloadgcc-3c0351f287e1fdf9a085c499f4657a6501c6cf29.zip
gcc-3c0351f287e1fdf9a085c499f4657a6501c6cf29.tar.gz
gcc-3c0351f287e1fdf9a085c499f4657a6501c6cf29.tar.bz2
testsuite/arm: Add arm_v8_2a_fp16_neon and arm_v8_2a_bf16_neon options
A few tests lack the dg-add-options directives associated with the dg-require-effective-target they are using. Adding them enables to pass the right float-abi option, and thus make the tests pass instead of emit an error. For instance, we now pass -mfloat-abi=softfp on arm-linux-gnueabi targets and the tests pass. 2021-03-19 Christophe Lyon <christophe.lyon@linaro.org> gcc/testsuite/ * gcc.target/arm/bfloat16_scalar_typecheck.c: Add arm_v8_2a_fp16_neon and arm_v8_2a_bf16_neon. * gcc.target/arm/bfloat16_vector_typecheck_1.c: Likewise. * gcc.target/arm/bfloat16_vector_typecheck_2.c: Likewise.
Diffstat (limited to 'gcc')
-rw-r--r--gcc/testsuite/gcc.target/arm/bfloat16_scalar_typecheck.c2
-rw-r--r--gcc/testsuite/gcc.target/arm/bfloat16_vector_typecheck_1.c2
-rw-r--r--gcc/testsuite/gcc.target/arm/bfloat16_vector_typecheck_2.c6
3 files changed, 8 insertions, 2 deletions
diff --git a/gcc/testsuite/gcc.target/arm/bfloat16_scalar_typecheck.c b/gcc/testsuite/gcc.target/arm/bfloat16_scalar_typecheck.c
index 672641e..8c80c55 100644
--- a/gcc/testsuite/gcc.target/arm/bfloat16_scalar_typecheck.c
+++ b/gcc/testsuite/gcc.target/arm/bfloat16_scalar_typecheck.c
@@ -2,6 +2,8 @@
/* { dg-skip-if "" { *-*-* } { "-fno-fat-lto-objects" } } */
/* { dg-require-effective-target arm_v8_2a_fp16_neon_ok } */
/* { dg-require-effective-target arm_v8_2a_bf16_neon_ok } */
+/* { dg-add-options arm_v8_2a_fp16_neon } */
+/* { dg-add-options arm_v8_2a_bf16_neon } */
/* { dg-additional-options "-march=armv8.6-a+bf16+fp16 -Wno-pedantic -O3 --save-temps" } */
#include <arm_neon.h>
diff --git a/gcc/testsuite/gcc.target/arm/bfloat16_vector_typecheck_1.c b/gcc/testsuite/gcc.target/arm/bfloat16_vector_typecheck_1.c
index ba39cb6..f3c350b 100644
--- a/gcc/testsuite/gcc.target/arm/bfloat16_vector_typecheck_1.c
+++ b/gcc/testsuite/gcc.target/arm/bfloat16_vector_typecheck_1.c
@@ -2,6 +2,8 @@
/* { dg-skip-if "" { *-*-* } { "-fno-fat-lto-objects" } } */
/* { dg-require-effective-target arm_v8_2a_fp16_neon_ok } */
/* { dg-require-effective-target arm_v8_2a_bf16_neon_ok } */
+/* { dg-add-options arm_v8_2a_fp16_neon } */
+/* { dg-add-options arm_v8_2a_bf16_neon } */
/* { dg-additional-options "-march=armv8.6-a+bf16+fp16 -Wno-pedantic -O3 --save-temps" } */
#include <arm_neon.h>
diff --git a/gcc/testsuite/gcc.target/arm/bfloat16_vector_typecheck_2.c b/gcc/testsuite/gcc.target/arm/bfloat16_vector_typecheck_2.c
index 16669dc..de0ade5 100644
--- a/gcc/testsuite/gcc.target/arm/bfloat16_vector_typecheck_2.c
+++ b/gcc/testsuite/gcc.target/arm/bfloat16_vector_typecheck_2.c
@@ -2,6 +2,8 @@
/* { dg-skip-if "" { *-*-* } { "-fno-fat-lto-objects" } } */
/* { dg-require-effective-target arm_v8_2a_fp16_neon_ok } */
/* { dg-require-effective-target arm_v8_2a_bf16_neon_ok } */
+/* { dg-add-options arm_v8_2a_fp16_neon } */
+/* { dg-add-options arm_v8_2a_bf16_neon } */
/* { dg-additional-options "-march=armv8.6-a+bf16+fp16 -Wno-pedantic -O3 --save-temps" } */
#include <arm_neon.h>
@@ -25,8 +27,8 @@ float is_a_float16;
double is_a_double;
bfloat16x8_t foo3 (void) { return (bfloat16x8_t) 0x12345678123456781234567812345678; }
- /* { dg-error {integer constant is too large for its type} "" {target *-*-*} 27 } */
- /* { dg-error {cannot convert a value of type 'long long int' to vector type '__simd128_bfloat16_t' which has different size} "" {target *-*-*} 27 } */
+ /* { dg-error {integer constant is too large for its type} "" {target *-*-*} .-1 } */
+ /* { dg-error {cannot convert a value of type 'long long int' to vector type '__simd128_bfloat16_t' which has different size} "" {target *-*-*} .-2 } */
bfloat16x8_t footest (bfloat16x8_t vector0)
{