1 /* Test non-canonical BID significands: _Decimal128, case where
2 combination field starts 11. Bug 91226. */
3 /* { dg-do run { target { lp64 && dfprt } } } */
4 /* { dg-require-effective-target dfp_bid } */
5 /* { dg-options "-std=gnu23 -O2" } */
7 extern void abort (void);
8 extern void exit (int);
13 unsigned __int128 u128
;
16 #define U128(hi, lo) (((unsigned __int128) lo) \
17 | (((unsigned __int128) hi) << 64))
22 unsigned __int128 i
= U128 (0x6e79000000000000ULL
, 0x1ULL
);
27 volatile double d
= d128
;
30 /* The above number should have quantum exponent 1234. */
31 _Decimal128 t1233
= 0.e1233DL
, t1234
= 0.e1234DL
, t1235
= 0.e1235DL
;
34 if (__builtin_memcmp (&dx
, &t1233
, 16) != 0)
37 if (__builtin_memcmp (&dx
, &t1234
, 16) != 0)
40 if (__builtin_memcmp (&dx
, &t1234
, 16) != 0)