diff options
author | Jeff Law <jlaw@ventanamicro.com> | 2024-05-02 08:42:32 -0600 |
---|---|---|
committer | Jeff Law <jlaw@ventanamicro.com> | 2024-05-02 08:44:16 -0600 |
commit | 1e29da0b6508b23a7a6b14a7fb643b917a195003 (patch) | |
tree | 53da1560b02d9edc90beb59b1a80ea2ed77c61d2 | |
parent | 7317d62a1200dbd3685015e5d6b811497a27fe5f (diff) | |
download | gcc-1e29da0b6508b23a7a6b14a7fb643b917a195003.zip gcc-1e29da0b6508b23a7a6b14a7fb643b917a195003.tar.gz gcc-1e29da0b6508b23a7a6b14a7fb643b917a195003.tar.bz2 |
[committed] [RISC-V] Don't run new rounding tests on newlib risc-v targets
The new round_32.c and round_64.c tests depend on the optimizers to recognize
the conversions feeding the floor/ceil calls and convert them into ceilf,
floorf and the like.
Those transformations only occur when the target indicates the C library has
the appropriate routines (fnclass == function_c99_misc). While newlib has
these routines, they are not exposed as available to the compiler and thus the
transformation the tests depend on do not happen. Naturally the scan-tests then
fail.
gcc/testsuite
* gcc.target/riscv/round_32.c: Add require-effective-target glibc.
* gcc.target/riscv/round_64.c: Likewise.
-rw-r--r-- | gcc/testsuite/gcc.target/riscv/round_32.c | 1 | ||||
-rw-r--r-- | gcc/testsuite/gcc.target/riscv/round_64.c | 1 |
2 files changed, 2 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.target/riscv/round_32.c b/gcc/testsuite/gcc.target/riscv/round_32.c index f9fea70..88ff77a 100644 --- a/gcc/testsuite/gcc.target/riscv/round_32.c +++ b/gcc/testsuite/gcc.target/riscv/round_32.c @@ -1,4 +1,5 @@ /* { dg-do compile { target { riscv32*-*-* } } } */ +/* { dg-require-effective-target glibc } */ /* { dg-options "-march=rv32gc -mabi=ilp32d -fno-math-errno -funsafe-math-optimizations -fno-inline" } */ /* { dg-skip-if "" { *-*-* } { "-O0" "-Og" } } */ diff --git a/gcc/testsuite/gcc.target/riscv/round_64.c b/gcc/testsuite/gcc.target/riscv/round_64.c index e796909..5e13bcc 100644 --- a/gcc/testsuite/gcc.target/riscv/round_64.c +++ b/gcc/testsuite/gcc.target/riscv/round_64.c @@ -1,4 +1,5 @@ /* { dg-do compile { target { riscv64*-*-* } } } */ +/* { dg-require-effective-target glibc } */ /* { dg-options "-march=rv64gc -mabi=lp64d -fno-math-errno -funsafe-math-optimizations -fno-inline" } */ /* { dg-skip-if "" { *-*-* } { "-O0" "-Og" } } */ |