22 lines
471 B
C
22 lines
471 B
C
/* PR middle-end/52592 */
|
|
/* { dg-do compile } */
|
|
/* { dg-options "-std=gnu99 -O2 -ffast-math" } */
|
|
|
|
#define T(type, name) \
|
|
type name (type); \
|
|
__attribute__((cold)) \
|
|
int f##name (type x) \
|
|
{ \
|
|
return (int) name (x); \
|
|
}
|
|
|
|
T (double, round)
|
|
T (float, roundf)
|
|
T (long double, roundl)
|
|
T (double, rint)
|
|
T (float, rintf)
|
|
T (long double, rintl)
|
|
|
|
/* { dg-final { scan-assembler-not "__builtin_iround" } } */
|
|
/* { dg-final { scan-assembler-not "__builtin_irint" } } */
|