blob: 0765334b7ff25d9803cf12fa3c734a3e21249444 [file] [log] [blame]
/* { dg-do compile } */
/* { dg-options "-march=rv32imafdc_zfa -mabi=ilp32d" { target { rv32 } } } */
/* { dg-options "-march=rv64imafdc_zfa -mabi=lp64d" { target { rv64 } } } */
extern float a;
extern double b;
void foo (float *x, double *y)
{
{
*x = __builtin_roundf (a);
*y = __builtin_round (b);
}
{
*x = __builtin_floorf (a);
*y = __builtin_floor (b);
}
{
*x = __builtin_ceilf (a);
*y = __builtin_ceil (b);
}
{
*x = __builtin_truncf (a);
*y = __builtin_trunc (b);
}
{
*x = __builtin_roundevenf (a);
*y = __builtin_roundeven (b);
}
{
*x = __builtin_nearbyintf (a);
*y = __builtin_nearbyint (b);
}
{
*x = __builtin_rintf (a);
*y = __builtin_rint (b);
}
}
/* { dg-final { scan-assembler-times "fround.s" 6 } } */
/* { dg-final { scan-assembler-times "fround.d" 6 } } */
/* { dg-final { scan-assembler-times "froundnx.s" 1 } } */
/* { dg-final { scan-assembler-times "froundnx.d" 1 } } */