blob: e0c9474b09cbbfaa18507de22f69a2b84a256b35 [file] [log] [blame]
/* APPLE LOCAL file radar 4176531 */
/* { dg-do compile { target i?86-*-* } } */
/* { dg-options "-O2 -mfpmath=sse" } */
/* Runnable as a standalone test program. Looks for SSE-based
FP<->uint conversions. Turn on optimize_size ("-Oz") to see x87
sequences. */
#include <stdio.h>
__attribute__ ((__noinline__))
d2ui32 (double x)
{
printf("convert double to uint32: %f = %u\n", x, (unsigned int)x);
}
__attribute__ ((__noinline__))
f2ui32 (float x)
{
printf("convert float to uint32: %f = %u\n", x, (unsigned int)x);
}
__attribute__ ((__noinline__))
ui64_2_d (long long unsigned int x)
{
printf("convert uint64 to double: %llu = %f\n", x, (double)x);
}
main()
{
d2ui32 (42.0);
f2ui32 (42.0);
ui64_2_d (42);
}
/* { dg-final { scan-assembler-not "fild" } } */
/* { dg-final { scan-assembler-not "fist" } } */