[PATCH 06/11] Handle enums for CodeView
[official-gcc.git] / gcc / testsuite / gcc.target / i386 / sse2-rint-inline-1.c
blob23c979771cced074e683d476245f112f9a3d67f8
1 /* Test rint and related functions expanded inline for SSE2. All
2 should be expanded when spurious "inexact" allowed. */
3 /* { dg-do compile } */
4 /* { dg-options "-O2 -msse2 -mfpmath=sse -ffp-int-builtin-inexact" } */
5 /* { dg-require-effective-target sse2 } */
7 #define TEST(FN, TYPE) \
8 do \
9 { \
10 volatile TYPE a = 1.5, b; \
11 b = FN (a); \
12 } \
13 while (0)
15 #define FN_TESTS(FN) \
16 do \
17 { \
18 TEST (__builtin_ ## FN, double); \
19 TEST (__builtin_ ## FN ## f, float); \
20 } \
21 while (0)
23 void
24 test (void)
26 FN_TESTS (rint);
27 FN_TESTS (ceil);
28 FN_TESTS (floor);
29 FN_TESTS (trunc);
32 /* { dg-final { scan-assembler-not "\[ \t\]rint" } } */
33 /* { dg-final { scan-assembler-not "\[ \t\]ceil" } } */
34 /* { dg-final { scan-assembler-not "\[ \t\]floor" } } */
35 /* { dg-final { scan-assembler-not "\[ \t\]trunc" } } */