2 /* { dg-do run { target { bitint && float16_runtime } } } */
3 /* { dg-options "-std=gnu23" } */
4 /* { dg-skip-if "" { ! run_expensive_tests } { "*" } { "-O0" "-O2" } } */
5 /* { dg-skip-if "" { ! run_expensive_tests } { "-flto" } { "" } } */
6 /* { dg-add-options float16 } */
11 #if __FLT16_MANT_DIG__ == 11
12 static volatile _Float16 s
[] = {
18 static volatile _Float16 u
[] = {
24 #if __BITINT_MAXWIDTH__ >= 135
25 static volatile _BitInt(135) s_135
[] = {
31 static volatile unsigned _BitInt(135) u_135
[] = {
37 for (int i
= 0; i
< 4; ++i
)
39 if (s
[i
] != (_Float16
) s_135
[i
]
40 || u
[i
] != (_Float16
) u_135
[i
]
41 || (_BitInt(135)) s
[i
] != s_135
[i
]
42 || (unsigned _BitInt(135)) u
[i
] != u_135
[i
])
46 #if __BITINT_MAXWIDTH__ >= 192
47 static volatile _BitInt(192) s_192
[] = {
53 static volatile unsigned _BitInt(192) u_192
[] = {
59 for (int i
= 0; i
< 4; ++i
)
61 if (s
[i
] != (_Float16
) s_192
[i
]
62 || u
[i
] != (_Float16
) u_192
[i
]
63 || (_BitInt(192)) s
[i
] != s_192
[i
]
64 || (unsigned _BitInt(192)) u
[i
] != u_192
[i
])
68 #if __BITINT_MAXWIDTH__ >= 575
69 static volatile _BitInt(575) s_575
[] = {
75 static volatile unsigned _BitInt(575) u_575
[] = {
81 for (int i
= 0; i
< 4; ++i
)
83 if (s
[i
] != (_Float16
) s_575
[i
]
84 || u
[i
] != (_Float16
) u_575
[i
]
85 || (_BitInt(575)) s
[i
] != s_575
[i
]
86 || (unsigned _BitInt(575)) u
[i
] != u_575
[i
])