Require target lra in gcc.dg/pr108095.c
[official-gcc.git] / gcc / testsuite / gcc.dg / bitint-31.c
blob65ac271ebb7d85bbbfbb854d90c9e7d142027140
1 /* PR c/102989 */
2 /* { dg-do run } */
3 /* { dg-require-effective-target fenv } */
4 /* { dg-options "-std=c2x" } */
5 /* { dg-add-options ieee } */
7 #include <fenv.h>
9 #if __FLT_MANT_DIG__ == 24
10 #if __BITINT_MAXWIDTH__ >= 135
11 __attribute__((noipa)) float
12 testflt_135 (_BitInt(135) b)
14 return b;
17 __attribute__((noipa)) float
18 testfltu_135 (unsigned _BitInt(135) b)
20 return b;
22 #endif
24 #if __BITINT_MAXWIDTH__ >= 192
25 __attribute__((noipa)) float
26 testflt_192 (_BitInt(192) b)
28 return b;
31 __attribute__((noipa)) float
32 testfltu_192 (unsigned _BitInt(192) b)
34 return b;
36 #endif
38 #if __BITINT_MAXWIDTH__ >= 575
39 __attribute__((noipa)) float
40 testflt_575 (_BitInt(575) b)
42 return b;
45 __attribute__((noipa)) float
46 testfltu_575 (unsigned _BitInt(575) b)
48 return b;
50 #endif
51 #endif
53 #if __DBL_MANT_DIG__ == 53
54 #if __BITINT_MAXWIDTH__ >= 135
55 __attribute__((noipa)) double
56 testdbl_135 (_BitInt(135) b)
58 return b;
61 __attribute__((noipa)) double
62 testdblu_135 (unsigned _BitInt(135) b)
64 return b;
66 #endif
68 #if __BITINT_MAXWIDTH__ >= 192
69 __attribute__((noipa)) double
70 testdbl_192 (_BitInt(192) b)
72 return b;
75 __attribute__((noipa)) double
76 testdblu_192 (unsigned _BitInt(192) b)
78 return b;
80 #endif
82 #if __BITINT_MAXWIDTH__ >= 575
83 __attribute__((noipa)) double
84 testdbl_575 (_BitInt(575) b)
86 return b;
89 __attribute__((noipa)) double
90 testdblu_575 (unsigned _BitInt(575) b)
92 return b;
94 #endif
95 #endif
97 #if __LDBL_MANT_DIG__ == 64
98 #if __BITINT_MAXWIDTH__ >= 135
99 __attribute__((noipa)) long double
100 testldbl_135 (_BitInt(135) b)
102 return b;
105 __attribute__((noipa)) long double
106 testldblu_135 (unsigned _BitInt(135) b)
108 return b;
110 #endif
112 #if __BITINT_MAXWIDTH__ >= 192
113 __attribute__((noipa)) long double
114 testldbl_192 (_BitInt(192) b)
116 return b;
119 __attribute__((noipa)) long double
120 testldblu_192 (unsigned _BitInt(192) b)
122 return b;
124 #endif
126 #if __BITINT_MAXWIDTH__ >= 575
127 __attribute__((noipa)) long double
128 testldbl_575 (_BitInt(575) b)
130 return b;
133 __attribute__((noipa)) long double
134 testldblu_575 (unsigned _BitInt(575) b)
136 return b;
138 #endif
139 #endif
141 #if __FLT128_MANT_DIG__ == 113
142 #if __BITINT_MAXWIDTH__ >= 135
143 __attribute__((noipa)) _Float128
144 testflt128_135 (_BitInt(135) b)
146 return b;
149 __attribute__((noipa)) _Float128
150 testflt128u_135 (unsigned _BitInt(135) b)
152 return b;
154 #endif
156 #if __BITINT_MAXWIDTH__ >= 192
157 __attribute__((noipa)) _Float128
158 testflt128_192 (_BitInt(192) b)
160 return b;
163 __attribute__((noipa)) _Float128
164 testflt128u_192 (unsigned _BitInt(192) b)
166 return b;
168 #endif
170 #if __BITINT_MAXWIDTH__ >= 575
171 __attribute__((noipa)) _Float128
172 testflt128_575 (_BitInt(575) b)
174 return b;
177 __attribute__((noipa)) _Float128
178 testflt128u_575 (unsigned _BitInt(575) b)
180 return b;
182 #endif
183 #endif
185 #define check_round(expr, vn, vd, vu, vz) \
186 do \
188 fesetround (FE_TONEAREST); \
189 if (expr != vn) \
190 __builtin_abort (); \
191 fesetround (FE_DOWNWARD); \
192 if (expr != vd) \
193 __builtin_abort (); \
194 fesetround (FE_UPWARD); \
195 if (expr != vu) \
196 __builtin_abort (); \
197 fesetround (FE_TOWARDZERO); \
198 if (expr != vz) \
199 __builtin_abort (); \
201 while (0)
203 #define check_round_same(expr, vn) check_round (expr, vn, vn, vn, vn)
206 main ()
208 #if defined(FE_TONEAREST) && defined(FE_DOWNWARD) && defined(FE_UPWARD) && defined (FE_TOWARDZERO)
209 #if __FLT_MANT_DIG__ == 24
210 #if __BITINT_MAXWIDTH__ >= 135
211 check_round (testflt_135 (151115713941029764726783wb), 0xfffffep+53f, 0xfffffep+53f, 0xffffffp+53f, 0xfffffep+53f);
212 check_round (testflt_135 (151115713941029764726784wb), 0xfffffep+53f, 0xfffffep+53f, 0xffffffp+53f, 0xfffffep+53f);
213 check_round (testflt_135 (151115713941029764726785wb), 0xffffffp+53f, 0xfffffep+53f, 0xffffffp+53f, 0xfffffep+53f);
214 check_round_same (testflt_135 (151115718444629392097280wb), 0xffffffp+53f);
215 check_round (testflt_135 (151115722948229019467775wb), 0xffffffp+53f, 0xffffffp+53f, 0x1000000p+53f, 0xffffffp+53f);
216 check_round (testflt_135 (151115722948229019467776wb), 0x1000000p+53f, 0xffffffp+53f, 0x1000000p+53f, 0xffffffp+53f);
217 check_round (testflt_135 (151115722948229019467777wb), 0x1000000p+53f, 0xffffffp+53f, 0x1000000p+53f, 0xffffffp+53f);
218 check_round_same (testflt_135 (-340282346638528859811704183484516925440wb), -0xffffffp+104f);
219 check_round (testflt_135 (-340282356779733661637539395458142568447wb), -0xffffffp+104f, -__builtin_inff (), -0xffffffp+104f, -0xffffffp+104f);
220 check_round (testflt_135 (-340282356779733661637539395458142568448wb), -__builtin_inff (), -__builtin_inff (), -0xffffffp+104f, -0xffffffp+104f);
221 check_round (testflt_135 (-21778071482940061661655974875633165533183wb - 1), -__builtin_inff (), -__builtin_inff (), -0xffffffp+104f, -0xffffffp+104f);
222 check_round (testfltu_135 (151115713941029764726783uwb), 0xfffffep+53f, 0xfffffep+53f, 0xffffffp+53f, 0xfffffep+53f);
223 check_round (testfltu_135 (151115713941029764726784uwb), 0xfffffep+53f, 0xfffffep+53f, 0xffffffp+53f, 0xfffffep+53f);
224 check_round (testfltu_135 (151115713941029764726785uwb), 0xffffffp+53f, 0xfffffep+53f, 0xffffffp+53f, 0xfffffep+53f);
225 check_round_same (testfltu_135 (151115718444629392097280uwb), 0xffffffp+53f);
226 check_round (testfltu_135 (151115722948229019467775uwb), 0xffffffp+53f, 0xffffffp+53f, 0x1000000p+53f, 0xffffffp+53f);
227 check_round (testfltu_135 (151115722948229019467776uwb), 0x1000000p+53f, 0xffffffp+53f, 0x1000000p+53f, 0xffffffp+53f);
228 check_round (testfltu_135 (151115722948229019467777uwb), 0x1000000p+53f, 0xffffffp+53f, 0x1000000p+53f, 0xffffffp+53f);
229 check_round_same (testfltu_135 (340282346638528859811704183484516925440uwb), 0xffffffp+104f);
230 check_round (testfltu_135 (340282356779733661637539395458142568447uwb), 0xffffffp+104f, 0xffffffp+104f, __builtin_inff (), 0xffffffp+104f);
231 check_round (testfltu_135 (340282356779733661637539395458142568448uwb), __builtin_inff (), 0xffffffp+104f, __builtin_inff (), 0xffffffp+104f);
232 check_round (testfltu_135 (43556142965880123323311949751266331066367uwb), __builtin_inff (), 0xffffffp+104f, __builtin_inff (), 0xffffffp+104f);
233 #endif
234 #if __BITINT_MAXWIDTH__ >= 192
235 check_round (testflt_192 (-10141203895131470501001744613375wb), -0xfffffep+79f, -0xffffffp+79f, -0xfffffep+79f, -0xfffffep+79f);
236 check_round (testflt_192 (-10141203895131470501001744613376wb), -0xfffffep+79f, -0xffffffp+79f, -0xfffffep+79f, -0xfffffep+79f);
237 check_round (testflt_192 (-10141203895131470501001744613377wb), -0xffffffp+79f, -0xffffffp+79f, -0xfffffep+79f, -0xfffffep+79f);
238 check_round_same (testflt_192 (-10141204197362925404659038289920wb), -0xffffffp+79f);
239 check_round (testflt_192 (-10141204499594380308316331966463wb), -0xffffffp+79f, -0x1000000p+79f, -0xffffffp+79f, -0xffffffp+79f);
240 check_round (testflt_192 (-10141204499594380308316331966464wb), -0x1000000p+79f, -0x1000000p+79f, -0xffffffp+79f, -0xffffffp+79f);
241 check_round (testflt_192 (-10141204499594380308316331966465wb), -0x1000000p+79f, -0x1000000p+79f, -0xffffffp+79f, -0xffffffp+79f);
242 check_round_same (testflt_192 (340282346638528859811704183484516925440wb), 0xffffffp+104f);
243 check_round (testflt_192 (340282356779733661637539395458142568447wb), 0xffffffp+104f, 0xffffffp+104f, __builtin_inff (), 0xffffffp+104f);
244 check_round (testflt_192 (340282356779733661637539395458142568448wb), __builtin_inff (), 0xffffffp+104f, __builtin_inff (), 0xffffffp+104f);
245 check_round (testflt_192 (3138550867693340381917894711603833208051177722232017256447wb), __builtin_inff (), 0xffffffp+104f, __builtin_inff (), 0xffffffp+104f);
246 check_round (testfltu_192 (10141203895131470501001744613375uwb), 0xfffffep+79f, 0xfffffep+79f, 0xffffffp+79f, 0xfffffep+79f);
247 check_round (testfltu_192 (10141203895131470501001744613376uwb), 0xfffffep+79f, 0xfffffep+79f, 0xffffffp+79f, 0xfffffep+79f);
248 check_round (testfltu_192 (10141203895131470501001744613377uwb), 0xffffffp+79f, 0xfffffep+79f, 0xffffffp+79f, 0xfffffep+79f);
249 check_round_same (testfltu_192 (10141204197362925404659038289920uwb), 0xffffffp+79f);
250 check_round (testfltu_192 (10141204499594380308316331966463uwb), 0xffffffp+79f, 0xffffffp+79f, 0x1000000p+79f, 0xffffffp+79f);
251 check_round (testfltu_192 (10141204499594380308316331966464uwb), 0x1000000p+79f, 0xffffffp+79f, 0x1000000p+79f, 0xffffffp+79f);
252 check_round (testfltu_192 (10141204499594380308316331966465uwb), 0x1000000p+79f, 0xffffffp+79f, 0x1000000p+79f, 0xffffffp+79f);
253 check_round_same (testfltu_192 (340282346638528859811704183484516925440uwb), 0xffffffp+104f);
254 check_round (testfltu_192 (340282356779733661637539395458142568447uwb), 0xffffffp+104f, 0xffffffp+104f, __builtin_inff (), 0xffffffp+104f);
255 check_round (testfltu_192 (340282356779733661637539395458142568448uwb), __builtin_inff (), 0xffffffp+104f, __builtin_inff (), 0xffffffp+104f);
256 check_round (testfltu_192 (6277101735386680763835789423207666416102355444464034512895uwb), __builtin_inff (), 0xffffffp+104f, __builtin_inff (), 0xffffffp+104f);
257 #endif
258 #if __BITINT_MAXWIDTH__ >= 575
259 check_round (testflt_575 (10633823015541376812058405359715352575wb), 0xfffffep+99f, 0xfffffep+99f, 0xffffffp+99f, 0xfffffep+99f);
260 check_round (testflt_575 (10633823015541376812058405359715352576wb), 0xfffffep+99f, 0xfffffep+99f, 0xffffffp+99f, 0xfffffep+99f);
261 check_round (testflt_575 (10633823015541376812058405359715352577wb), 0xffffffp+99f, 0xfffffep+99f, 0xffffffp+99f, 0xfffffep+99f);
262 check_round_same (testflt_575 (10633823332454026869115755733891153920wb), 0xffffffp+99f);
263 check_round (testflt_575 (10633823649366676926173106108066955263wb), 0xffffffp+99f, 0xffffffp+99f, 0x1000000p+99f, 0xffffffp+99f);
264 check_round (testflt_575 (10633823649366676926173106108066955264wb), 0x1000000p+99f, 0xffffffp+99f, 0x1000000p+99f, 0xffffffp+99f);
265 check_round (testflt_575 (10633823649366676926173106108066955265wb), 0x1000000p+99f, 0xffffffp+99f, 0x1000000p+99f, 0xffffffp+99f);
266 check_round_same (testflt_575 (-340282346638528859811704183484516925440wb), -0xffffffp+104f);
267 check_round (testflt_575 (-340282356779733661637539395458142568447wb), -0xffffffp+104f, -__builtin_inff (), -0xffffffp+104f, -0xffffffp+104f);
268 check_round (testflt_575 (-340282356779733661637539395458142568448wb), -__builtin_inff (), -__builtin_inff (), -0xffffffp+104f, -0xffffffp+104f);
269 check_round (testflt_575 (-61832600368276133515125630254911797508782837275302959978515764023224306276632966792579100265310761247399417856504034834837841258576687802491886538775473291979151693037174783wb - 1), -__builtin_inff (), -__builtin_inff (), -0xffffffp+104f, -0xffffffp+104f);
270 check_round (testfltu_575 (10633823015541376812058405359715352575uwb), 0xfffffep+99f, 0xfffffep+99f, 0xffffffp+99f, 0xfffffep+99f);
271 check_round (testfltu_575 (10633823015541376812058405359715352576uwb), 0xfffffep+99f, 0xfffffep+99f, 0xffffffp+99f, 0xfffffep+99f);
272 check_round (testfltu_575 (10633823015541376812058405359715352577uwb), 0xffffffp+99f, 0xfffffep+99f, 0xffffffp+99f, 0xfffffep+99f);
273 check_round_same (testfltu_575 (10633823332454026869115755733891153920uwb), 0xffffffp+99f);
274 check_round (testfltu_575 (10633823649366676926173106108066955263uwb), 0xffffffp+99f, 0xffffffp+99f, 0x1000000p+99f, 0xffffffp+99f);
275 check_round (testfltu_575 (10633823649366676926173106108066955264uwb), 0x1000000p+99f, 0xffffffp+99f, 0x1000000p+99f, 0xffffffp+99f);
276 check_round (testfltu_575 (10633823649366676926173106108066955265uwb), 0x1000000p+99f, 0xffffffp+99f, 0x1000000p+99f, 0xffffffp+99f);
277 check_round_same (testfltu_575 (340282346638528859811704183484516925440uwb), 0xffffffp+104f);
278 check_round (testfltu_575 (340282356779733661637539395458142568447uwb), 0xffffffp+104f, 0xffffffp+104f, __builtin_inff (), 0xffffffp+104f);
279 check_round (testfltu_575 (340282356779733661637539395458142568448uwb), __builtin_inff (), 0xffffffp+104f, __builtin_inff (), 0xffffffp+104f);
280 check_round (testfltu_575 (123665200736552267030251260509823595017565674550605919957031528046448612553265933585158200530621522494798835713008069669675682517153375604983773077550946583958303386074349567uwb), __builtin_inff (), 0xffffffp+104f, __builtin_inff (), 0xffffffp+104f);
281 #endif
282 #endif
283 #if __DBL_MANT_DIG__, 53
284 #if __BITINT_MAXWIDTH__ >= 135
285 check_round (testdbl_135 (-21267647932558650424686050812251602943wb), -0x1ffffffffffffep+71, -0x1fffffffffffffp+71, -0x1ffffffffffffep+71, -0x1ffffffffffffep+71);
286 check_round (testdbl_135 (-21267647932558650424686050812251602944wb), -0x1ffffffffffffep+71, -0x1fffffffffffffp+71, -0x1ffffffffffffep+71, -0x1ffffffffffffep+71);
287 check_round (testdbl_135 (-21267647932558650424686050812251602945wb), -0x1fffffffffffffp+71, -0x1fffffffffffffp+71, -0x1ffffffffffffep+71, -0x1ffffffffffffep+71);
288 check_round_same (testdbl_135 (-21267647932558651605277671529662906368wb), -0x1fffffffffffffp+71);
289 check_round (testdbl_135 (-21267647932558652785869292247074209791wb), -0x1fffffffffffffp+71, -0x20000000000000p+71, -0x1fffffffffffffp+71, -0x1fffffffffffffp+71);
290 check_round (testdbl_135 (-21267647932558652785869292247074209792wb), -0x20000000000000p+71, -0x20000000000000p+71, -0x1fffffffffffffp+71, -0x1fffffffffffffp+71);
291 check_round (testdbl_135 (-21267647932558652785869292247074209793wb), -0x20000000000000p+71, -0x20000000000000p+71, -0x1fffffffffffffp+71, -0x1fffffffffffffp+71);
292 check_round_same (testdbl_135 (21778071482940059243804335646374816120832wb), 0x1fffffffffffffp+81);
293 check_round (testdbl_135 (21778071482940060452730155261003990827007wb), 0x1fffffffffffffp+81, 0x1fffffffffffffp+81, 0x20000000000000p+81, 0x1fffffffffffffp+81);
294 check_round (testdbl_135 (21778071482940060452730155261003990827008wb), 0x20000000000000p+81, 0x1fffffffffffffp+81, 0x20000000000000p+81, 0x1fffffffffffffp+81);
295 check_round (testdbl_135 (21778071482940060452730155261003990827009wb), 0x20000000000000p+81, 0x1fffffffffffffp+81, 0x20000000000000p+81, 0x1fffffffffffffp+81);
296 check_round (testdbl_135 (21778071482940061661655974875633165533183wb), 0x20000000000000p+81, 0x1fffffffffffffp+81, 0x20000000000000p+81, 0x1fffffffffffffp+81);
297 check_round (testdblu_135 (21267647932558650424686050812251602943uwb), 0x1ffffffffffffep+71, 0x1ffffffffffffep+71, 0x1fffffffffffffp+71, 0x1ffffffffffffep+71);
298 check_round (testdblu_135 (21267647932558650424686050812251602944uwb), 0x1ffffffffffffep+71, 0x1ffffffffffffep+71, 0x1fffffffffffffp+71, 0x1ffffffffffffep+71);
299 check_round (testdblu_135 (21267647932558650424686050812251602945uwb), 0x1fffffffffffffp+71, 0x1ffffffffffffep+71, 0x1fffffffffffffp+71, 0x1ffffffffffffep+71);
300 check_round_same (testdblu_135 (21267647932558651605277671529662906368uwb), 0x1fffffffffffffp+71);
301 check_round (testdblu_135 (21267647932558652785869292247074209791uwb), 0x1fffffffffffffp+71, 0x1fffffffffffffp+71, 0x20000000000000p+71, 0x1fffffffffffffp+71);
302 check_round (testdblu_135 (21267647932558652785869292247074209792uwb), 0x20000000000000p+71, 0x1fffffffffffffp+71, 0x20000000000000p+71, 0x1fffffffffffffp+71);
303 check_round (testdblu_135 (21267647932558652785869292247074209793uwb), 0x20000000000000p+71, 0x1fffffffffffffp+71, 0x20000000000000p+71, 0x1fffffffffffffp+71);
304 check_round_same (testdblu_135 (43556142965880118487608671292749632241664uwb), 0x1fffffffffffffp+82);
305 check_round (testdblu_135 (43556142965880120905460310522007981654015uwb), 0x1fffffffffffffp+82, 0x1fffffffffffffp+82, 0x20000000000000p+82, 0x1fffffffffffffp+82);
306 check_round (testdblu_135 (43556142965880120905460310522007981654016uwb), 0x20000000000000p+82, 0x1fffffffffffffp+82, 0x20000000000000p+82, 0x1fffffffffffffp+82);
307 check_round (testdblu_135 (43556142965880120905460310522007981654017uwb), 0x20000000000000p+82, 0x1fffffffffffffp+82, 0x20000000000000p+82, 0x1fffffffffffffp+82);
308 check_round (testdblu_135 (43556142965880123323311949751266331066367uwb), 0x20000000000000p+82, 0x1fffffffffffffp+82, 0x20000000000000p+82, 0x1fffffffffffffp+82);
309 #endif
310 #if __BITINT_MAXWIDTH__ >= 192
311 check_round (testdbl_192 (89202980794122477710862401666030147234430975wb), 0x1ffffffffffffep+93, 0x1ffffffffffffep+93, 0x1fffffffffffffp+93, 0x1ffffffffffffep+93);
312 check_round (testdbl_192 (89202980794122477710862401666030147234430976wb), 0x1ffffffffffffep+93, 0x1ffffffffffffep+93, 0x1fffffffffffffp+93, 0x1ffffffffffffep+93);
313 check_round (testdbl_192 (89202980794122477710862401666030147234430977wb), 0x1fffffffffffffp+93, 0x1ffffffffffffep+93, 0x1fffffffffffffp+93, 0x1ffffffffffffep+93);
314 check_round_same (testdbl_192 (89202980794122482662622558807551246830927872wb), 0x1fffffffffffffp+93);
315 check_round (testdbl_192 (89202980794122487614382715949072346427424767wb), 0x1fffffffffffffp+93, 0x1fffffffffffffp+93, 0x20000000000000p+93, 0x1fffffffffffffp+93);
316 check_round (testdbl_192 (89202980794122487614382715949072346427424768wb), 0x20000000000000p+93, 0x1fffffffffffffp+93, 0x20000000000000p+93, 0x1fffffffffffffp+93);
317 check_round (testdbl_192 (89202980794122487614382715949072346427424769wb), 0x20000000000000p+93, 0x1fffffffffffffp+93, 0x20000000000000p+93, 0x1fffffffffffffp+93);
318 check_round_same (testdbl_192 (-3138550867693340033468750984562846621555579712101368725504wb), -0x1fffffffffffffp+138);
319 check_round (testdbl_192 (-3138550867693340207693322848083339914803378717166692990975wb), -0x1fffffffffffffp+138, -0x20000000000000p+138, -0x1fffffffffffffp+138, -0x1fffffffffffffp+138);
320 check_round (testdbl_192 (-3138550867693340207693322848083339914803378717166692990976wb), -0x20000000000000p+138, -0x20000000000000p+138, -0x1fffffffffffffp+138, -0x1fffffffffffffp+138);
321 check_round (testdbl_192 (-3138550867693340207693322848083339914803378717166692990977wb), -0x20000000000000p+138, -0x20000000000000p+138, -0x1fffffffffffffp+138, -0x1fffffffffffffp+138);
322 check_round_same (testdbl_192 (-3138550867693340381917894711603833208051177722232017256447wb - 1), -0x20000000000000p+138);
323 check_round (testdblu_192 (89202980794122477710862401666030147234430975uwb), 0x1ffffffffffffep+93, 0x1ffffffffffffep+93, 0x1fffffffffffffp+93, 0x1ffffffffffffep+93);
324 check_round (testdblu_192 (89202980794122477710862401666030147234430976uwb), 0x1ffffffffffffep+93, 0x1ffffffffffffep+93, 0x1fffffffffffffp+93, 0x1ffffffffffffep+93);
325 check_round (testdblu_192 (89202980794122477710862401666030147234430977uwb), 0x1fffffffffffffp+93, 0x1ffffffffffffep+93, 0x1fffffffffffffp+93, 0x1ffffffffffffep+93);
326 check_round_same (testdblu_192 (89202980794122482662622558807551246830927872uwb), 0x1fffffffffffffp+93);
327 check_round (testdblu_192 (89202980794122487614382715949072346427424767uwb), 0x1fffffffffffffp+93, 0x1fffffffffffffp+93, 0x20000000000000p+93, 0x1fffffffffffffp+93);
328 check_round (testdblu_192 (89202980794122487614382715949072346427424768uwb), 0x20000000000000p+93, 0x1fffffffffffffp+93, 0x20000000000000p+93, 0x1fffffffffffffp+93);
329 check_round (testdblu_192 (89202980794122487614382715949072346427424769uwb), 0x20000000000000p+93, 0x1fffffffffffffp+93, 0x20000000000000p+93, 0x1fffffffffffffp+93);
330 check_round_same (testdblu_192 (6277101735386680066937501969125693243111159424202737451008uwb), 0x1fffffffffffffp+139);
331 check_round (testdblu_192 (6277101735386680415386645696166679829606757434333385981951uwb), 0x1fffffffffffffp+139, 0x1fffffffffffffp+139, 0x20000000000000p+139, 0x1fffffffffffffp+139);
332 check_round (testdblu_192 (6277101735386680415386645696166679829606757434333385981952uwb), 0x20000000000000p+139, 0x1fffffffffffffp+139, 0x20000000000000p+139, 0x1fffffffffffffp+139);
333 check_round (testdblu_192 (6277101735386680415386645696166679829606757434333385981953uwb), 0x20000000000000p+139, 0x1fffffffffffffp+139, 0x20000000000000p+139, 0x1fffffffffffffp+139);
334 check_round (testdblu_192 (6277101735386680763835789423207666416102355444464034512895uwb), 0x20000000000000p+139, 0x1fffffffffffffp+139, 0x20000000000000p+139, 0x1fffffffffffffp+139);
335 #endif
336 #if __BITINT_MAXWIDTH__ >= 575
337 check_round (testdbl_575 (-615656346818663635164482277361060010743329029962521103256875011322006445221646740336801072761830405785423389392895wb), -0x1ffffffffffffep+325, -0x1fffffffffffffp+325, -0x1ffffffffffffep+325, -0x1ffffffffffffep+325);
338 check_round (testdbl_575 (-615656346818663635164482277361060010743329029962521103256875011322006445221646740336801072761830405785423389392896wb), -0x1ffffffffffffep+325, -0x1fffffffffffffp+325, -0x1ffffffffffffep+325, -0x1ffffffffffffep+325);
339 check_round (testdbl_575 (-615656346818663635164482277361060010743329029962521103256875011322006445221646740336801072761830405785423389392897wb), -0x1fffffffffffffp+325, -0x1fffffffffffffp+325, -0x1ffffffffffffep+325, -0x1ffffffffffffep+325);
340 check_round_same (testdbl_575 (-615656346818663669340274852095621329063676328675354936900147369028450764374312465492316685252079206152816780378112wb), -0x1fffffffffffffp+325);
341 check_round (testdbl_575 (-615656346818663703516067426830182647384023627388188770543419726734895083526978190647832297742328006520210171363327wb), -0x1fffffffffffffp+325, -0x20000000000000p+325, -0x1fffffffffffffp+325, -0x1fffffffffffffp+325);
342 check_round (testdbl_575 (-615656346818663703516067426830182647384023627388188770543419726734895083526978190647832297742328006520210171363328wb), -0x20000000000000p+325, -0x20000000000000p+325, -0x1fffffffffffffp+325, -0x1fffffffffffffp+325);
343 check_round (testdbl_575 (-615656346818663703516067426830182647384023627388188770543419726734895083526978190647832297742328006520210171363329wb), -0x20000000000000p+325, -0x20000000000000p+325, -0x1fffffffffffffp+325, -0x1fffffffffffffp+325);
344 check_round_same (testdbl_575 (61832600368276126650327970124302082526882038193909742709080463879918896882169507607035916867654709124839777195049479857541529867095829765369898539058829479405123401922117632wb), 0x1fffffffffffffp+521);
345 check_round (testdbl_575 (61832600368276130082726800189606940017832437734606351343798113951571601579401237199807508566482735186119597525776757346189685562836258783930892538917151385692137547479646207wb), 0x1fffffffffffffp+521, 0x1fffffffffffffp+521, 0x20000000000000p+521, 0x1fffffffffffffp+521);
346 check_round (testdbl_575 (61832600368276130082726800189606940017832437734606351343798113951571601579401237199807508566482735186119597525776757346189685562836258783930892538917151385692137547479646208wb), 0x20000000000000p+521, 0x1fffffffffffffp+521, 0x20000000000000p+521, 0x1fffffffffffffp+521);
347 check_round (testdbl_575 (61832600368276130082726800189606940017832437734606351343798113951571601579401237199807508566482735186119597525776757346189685562836258783930892538917151385692137547479646209wb), 0x20000000000000p+521, 0x1fffffffffffffp+521, 0x20000000000000p+521, 0x1fffffffffffffp+521);
348 check_round (testdbl_575 (61832600368276133515125630254911797508782837275302959978515764023224306276632966792579100265310761247399417856504034834837841258576687802491886538775473291979151693037174783wb), 0x20000000000000p+521, 0x1fffffffffffffp+521, 0x20000000000000p+521, 0x1fffffffffffffp+521);
349 check_round (testdblu_575 (615656346818663635164482277361060010743329029962521103256875011322006445221646740336801072761830405785423389392895uwb), 0x1ffffffffffffep+325, 0x1ffffffffffffep+325, 0x1fffffffffffffp+325, 0x1ffffffffffffep+325);
350 check_round (testdblu_575 (615656346818663635164482277361060010743329029962521103256875011322006445221646740336801072761830405785423389392896uwb), 0x1ffffffffffffep+325, 0x1ffffffffffffep+325, 0x1fffffffffffffp+325, 0x1ffffffffffffep+325);
351 check_round (testdblu_575 (615656346818663635164482277361060010743329029962521103256875011322006445221646740336801072761830405785423389392897uwb), 0x1fffffffffffffp+325, 0x1ffffffffffffep+325, 0x1fffffffffffffp+325, 0x1ffffffffffffep+325);
352 check_round_same (testdblu_575 (615656346818663669340274852095621329063676328675354936900147369028450764374312465492316685252079206152816780378112uwb), 0x1fffffffffffffp+325);
353 check_round (testdblu_575 (615656346818663703516067426830182647384023627388188770543419726734895083526978190647832297742328006520210171363327uwb), 0x1fffffffffffffp+325, 0x1fffffffffffffp+325, 0x20000000000000p+325, 0x1fffffffffffffp+325);
354 check_round (testdblu_575 (615656346818663703516067426830182647384023627388188770543419726734895083526978190647832297742328006520210171363328uwb), 0x20000000000000p+325, 0x1fffffffffffffp+325, 0x20000000000000p+325, 0x1fffffffffffffp+325);
355 check_round (testdblu_575 (615656346818663703516067426830182647384023627388188770543419726734895083526978190647832297742328006520210171363329uwb), 0x20000000000000p+325, 0x1fffffffffffffp+325, 0x20000000000000p+325, 0x1fffffffffffffp+325);
356 check_round_same (testdblu_575 (123665200736552253300655940248604165053764076387819485418160927759837793764339015214071833735309418249679554390098959715083059734191659530739797078117658958810246803844235264uwb), 0x1fffffffffffffp+522);
357 check_round (testdblu_575 (123665200736552260165453600379213880035664875469212702687596227903143203158802474399615017132965470372239195051553514692379371125672517567861785077834302771384275094959292415uwb), 0x1fffffffffffffp+522, 0x1fffffffffffffp+522, 0x20000000000000p+522, 0x1fffffffffffffp+522);
358 check_round (testdblu_575 (123665200736552260165453600379213880035664875469212702687596227903143203158802474399615017132965470372239195051553514692379371125672517567861785077834302771384275094959292416uwb), 0x20000000000000p+522, 0x1fffffffffffffp+522, 0x20000000000000p+522, 0x1fffffffffffffp+522);
359 check_round (testdblu_575 (123665200736552260165453600379213880035664875469212702687596227903143203158802474399615017132965470372239195051553514692379371125672517567861785077834302771384275094959292417uwb), 0x20000000000000p+522, 0x1fffffffffffffp+522, 0x20000000000000p+522, 0x1fffffffffffffp+522);
360 check_round (testdblu_575 (123665200736552267030251260509823595017565674550605919957031528046448612553265933585158200530621522494798835713008069669675682517153375604983773077550946583958303386074349567uwb), 0x20000000000000p+522, 0x1fffffffffffffp+522, 0x20000000000000p+522, 0x1fffffffffffffp+522);
361 #endif
362 #endif
363 #if __LDBL_MANT_DIG__, 64
364 #if __BITINT_MAXWIDTH__ >= 135
365 check_round (testldbl_135 (-27577662721237071616947187835994111wb), -0xa9f5e144d113e1c4p+51L, -0xa9f5e144d113e1c5p+51L, -0xa9f5e144d113e1c4p+51L, -0xa9f5e144d113e1c4p+51L);
366 check_round (testldbl_135 (-27577662721237071616947187835994112wb), -0xa9f5e144d113e1c4p+51L, -0xa9f5e144d113e1c5p+51L, -0xa9f5e144d113e1c4p+51L, -0xa9f5e144d113e1c4p+51L);
367 check_round (testldbl_135 (-27577662721237071616947187835994113wb), -0xa9f5e144d113e1c5p+51L, -0xa9f5e144d113e1c5p+51L, -0xa9f5e144d113e1c4p+51L, -0xa9f5e144d113e1c4p+51L);
368 check_round_same (testldbl_135 (-27577662721237071618073087742836736wb), -0xa9f5e144d113e1c5p+51L);
369 check_round (testldbl_135 (-27577662721237071619198987649679359wb), -0xa9f5e144d113e1c5p+51L, -0xa9f5e144d113e1c6p+51L, -0xa9f5e144d113e1c5p+51L, -0xa9f5e144d113e1c5p+51L);
370 check_round (testldbl_135 (-27577662721237071619198987649679360wb), -0xa9f5e144d113e1c6p+51L, -0xa9f5e144d113e1c6p+51L, -0xa9f5e144d113e1c5p+51L, -0xa9f5e144d113e1c5p+51L);
371 check_round (testldbl_135 (-27577662721237071619198987649679361wb), -0xa9f5e144d113e1c6p+51L, -0xa9f5e144d113e1c6p+51L, -0xa9f5e144d113e1c5p+51L, -0xa9f5e144d113e1c5p+51L);
372 check_round_same (testldbl_135 (-21778071482940061660475383254915754229760wb), -0xffffffffffffffffp+70L);
373 check_round (testldbl_135 (-21778071482940061661065679065274459881471wb), -0xffffffffffffffffp+70L, -0x10000000000000000p+70L, -0xffffffffffffffffp+70L, -0xffffffffffffffffp+70L);
374 check_round (testldbl_135 (-21778071482940061661065679065274459881472wb), -0x10000000000000000p+70L, -0x10000000000000000p+70L, -0xffffffffffffffffp+70L, -0xffffffffffffffffp+70L);
375 check_round (testldbl_135 (-21778071482940061661065679065274459881473wb), -0x10000000000000000p+70L, -0x10000000000000000p+70L, -0xffffffffffffffffp+70L, -0xffffffffffffffffp+70L);
376 check_round_same (testldbl_135 (-21778071482940061661655974875633165533183wb - 1), -0x10000000000000000p+70L);
377 check_round (testldblu_135 (27577662721237071616947187835994111uwb), 0xa9f5e144d113e1c4p+51L, 0xa9f5e144d113e1c4p+51L, 0xa9f5e144d113e1c5p+51L, 0xa9f5e144d113e1c4p+51L);
378 check_round (testldblu_135 (27577662721237071616947187835994112uwb), 0xa9f5e144d113e1c4p+51L, 0xa9f5e144d113e1c4p+51L, 0xa9f5e144d113e1c5p+51L, 0xa9f5e144d113e1c4p+51L);
379 check_round (testldblu_135 (27577662721237071616947187835994113uwb), 0xa9f5e144d113e1c5p+51L, 0xa9f5e144d113e1c4p+51L, 0xa9f5e144d113e1c5p+51L, 0xa9f5e144d113e1c4p+51L);
380 check_round_same (testldblu_135 (27577662721237071618073087742836736uwb), 0xa9f5e144d113e1c5p+51L);
381 check_round (testldblu_135 (27577662721237071619198987649679359uwb), 0xa9f5e144d113e1c5p+51L, 0xa9f5e144d113e1c5p+51L, 0xa9f5e144d113e1c6p+51L, 0xa9f5e144d113e1c5p+51L);
382 check_round (testldblu_135 (27577662721237071619198987649679360uwb), 0xa9f5e144d113e1c6p+51L, 0xa9f5e144d113e1c5p+51L, 0xa9f5e144d113e1c6p+51L, 0xa9f5e144d113e1c5p+51L);
383 check_round (testldblu_135 (27577662721237071619198987649679361uwb), 0xa9f5e144d113e1c6p+51L, 0xa9f5e144d113e1c5p+51L, 0xa9f5e144d113e1c6p+51L, 0xa9f5e144d113e1c5p+51L);
384 check_round_same (testldblu_135 (43556142965880123320950766509831508459520uwb), 0xffffffffffffffffp+71L);
385 check_round (testldblu_135 (43556142965880123322131358130548919762943uwb), 0xffffffffffffffffp+71L, 0xffffffffffffffffp+71L, 0x10000000000000000p+71L, 0xffffffffffffffffp+71L);
386 check_round (testldblu_135 (43556142965880123322131358130548919762944uwb), 0x10000000000000000p+71L, 0xffffffffffffffffp+71L, 0x10000000000000000p+71L, 0xffffffffffffffffp+71L);
387 check_round (testldblu_135 (43556142965880123322131358130548919762945uwb), 0x10000000000000000p+71L, 0xffffffffffffffffp+71L, 0x10000000000000000p+71L, 0xffffffffffffffffp+71L);
388 check_round (testldblu_135 (43556142965880123323311949751266331066367uwb), 0x10000000000000000p+71L, 0xffffffffffffffffp+71L, 0x10000000000000000p+71L, 0xffffffffffffffffp+71L);
389 #endif
390 #if __BITINT_MAXWIDTH__ >= 192
391 check_round (testldbl_192 (96388802158769743653878219701497927252918090596351wb), 0x83e75ebf94ce024ep+103L, 0x83e75ebf94ce024ep+103L, 0x83e75ebf94ce024fp+103L, 0x83e75ebf94ce024ep+103L);
392 check_round (testldbl_192 (96388802158769743653878219701497927252918090596352wb), 0x83e75ebf94ce024ep+103L, 0x83e75ebf94ce024ep+103L, 0x83e75ebf94ce024fp+103L, 0x83e75ebf94ce024ep+103L);
393 check_round (testldbl_192 (96388802158769743653878219701497927252918090596353wb), 0x83e75ebf94ce024fp+103L, 0x83e75ebf94ce024ep+103L, 0x83e75ebf94ce024fp+103L, 0x83e75ebf94ce024ep+103L);
394 check_round_same (testldbl_192 (96388802158769743658948822102410844858904903417856wb), 0x83e75ebf94ce024fp+103L);
395 check_round (testldbl_192 (96388802158769743664019424503323762464891716239359wb), 0x83e75ebf94ce024fp+103L, 0x83e75ebf94ce024fp+103L, 0x83e75ebf94ce0250p+103L, 0x83e75ebf94ce024fp+103L);
396 check_round (testldbl_192 (96388802158769743664019424503323762464891716239360wb), 0x83e75ebf94ce0250p+103L, 0x83e75ebf94ce024fp+103L, 0x83e75ebf94ce0250p+103L, 0x83e75ebf94ce024fp+103L);
397 check_round (testldbl_192 (96388802158769743664019424503323762464891716239361wb), 0x83e75ebf94ce0250p+103L, 0x83e75ebf94ce024fp+103L, 0x83e75ebf94ce0250p+103L, 0x83e75ebf94ce024fp+103L);
398 check_round_same (testldbl_192 (-3138550867693340381747753528143363976319490418516133150720wb), -0xffffffffffffffffp+127L);
399 check_round (testldbl_192 (-3138550867693340381832824119873598592185334070374075203583wb), -0xffffffffffffffffp+127L, -0x10000000000000000p+127L, -0xffffffffffffffffp+127L, -0xffffffffffffffffp+127L);
400 check_round (testldbl_192 (-3138550867693340381832824119873598592185334070374075203584wb), -0x10000000000000000p+127L, -0x10000000000000000p+127L, -0xffffffffffffffffp+127L, -0xffffffffffffffffp+127L);
401 check_round (testldbl_192 (-3138550867693340381832824119873598592185334070374075203585wb), -0x10000000000000000p+127L, -0x10000000000000000p+127L, -0xffffffffffffffffp+127L, -0xffffffffffffffffp+127L);
402 check_round_same (testldbl_192 (-3138550867693340381917894711603833208051177722232017256447wb - 1wb), -0x10000000000000000p+127L);
403 check_round (testldblu_192 (96388802158769743653878219701497927252918090596351uwb), 0x83e75ebf94ce024ep+103L, 0x83e75ebf94ce024ep+103L, 0x83e75ebf94ce024fp+103L, 0x83e75ebf94ce024ep+103L);
404 check_round (testldblu_192 (96388802158769743653878219701497927252918090596352uwb), 0x83e75ebf94ce024ep+103L, 0x83e75ebf94ce024ep+103L, 0x83e75ebf94ce024fp+103L, 0x83e75ebf94ce024ep+103L);
405 check_round (testldblu_192 (96388802158769743653878219701497927252918090596353uwb), 0x83e75ebf94ce024fp+103L, 0x83e75ebf94ce024ep+103L, 0x83e75ebf94ce024fp+103L, 0x83e75ebf94ce024ep+103L);
406 check_round_same (testldblu_192 (96388802158769743658948822102410844858904903417856uwb), 0x83e75ebf94ce024fp+103L);
407 check_round (testldblu_192 (96388802158769743664019424503323762464891716239359uwb), 0x83e75ebf94ce024fp+103L, 0x83e75ebf94ce024fp+103L, 0x83e75ebf94ce0250p+103L, 0x83e75ebf94ce024fp+103L);
408 check_round (testldblu_192 (96388802158769743664019424503323762464891716239360uwb), 0x83e75ebf94ce0250p+103L, 0x83e75ebf94ce024fp+103L, 0x83e75ebf94ce0250p+103L, 0x83e75ebf94ce024fp+103L);
409 check_round (testldblu_192 (96388802158769743664019424503323762464891716239361uwb), 0x83e75ebf94ce0250p+103L, 0x83e75ebf94ce024fp+103L, 0x83e75ebf94ce0250p+103L, 0x83e75ebf94ce024fp+103L);
410 check_round_same (testldblu_192 (6277101735386680763495507056286727952638980837032266301440uwb), 0xffffffffffffffffp+128L);
411 check_round (testldblu_192 (6277101735386680763665648239747197184370668140748150407167uwb), 0xffffffffffffffffp+128L, 0xffffffffffffffffp+128L, 0x10000000000000000p+128L, 0xffffffffffffffffp+128L);
412 check_round (testldblu_192 (6277101735386680763665648239747197184370668140748150407168uwb), 0x10000000000000000p+128L, 0xffffffffffffffffp+128L, 0x10000000000000000p+128L, 0xffffffffffffffffp+128L);
413 check_round (testldblu_192 (6277101735386680763665648239747197184370668140748150407169uwb), 0x10000000000000000p+128L, 0xffffffffffffffffp+128L, 0x10000000000000000p+128L, 0xffffffffffffffffp+128L);
414 check_round (testldblu_192 (6277101735386680763835789423207666416102355444464034512895uwb), 0x10000000000000000p+128L, 0xffffffffffffffffp+128L, 0x10000000000000000p+128L, 0xffffffffffffffffp+128L);
415 #endif
416 #if __BITINT_MAXWIDTH__ >= 575
417 check_round_same (testldbl_575 (-61832600368276133511773678272426148233889331025751498446645922568076207932202076431648659257792374503198949281962308977915333294030066289778448068072486649492543280785653760wb), -0xffffffffffffffffp+510L);
418 check_round (testldbl_575 (-61832600368276133513449654263668972871336084150527229212580843295650257104417521612113879761551567875299183569233171906376587276303377046135167303423979970735847486911414271wb), -0xffffffffffffffffp+510L, -0x10000000000000000p+510L, -0xffffffffffffffffp+510L, -0xffffffffffffffffp+510L);
419 check_round (testldbl_575 (-61832600368276133513449654263668972871336084150527229212580843295650257104417521612113879761551567875299183569233171906376587276303377046135167303423979970735847486911414272wb), -0x10000000000000000p+510L, -0x10000000000000000p+510L, -0xffffffffffffffffp+510L, -0xffffffffffffffffp+510L);
420 check_round (testldbl_575 (-61832600368276133513449654263668972871336084150527229212580843295650257104417521612113879761551567875299183569233171906376587276303377046135167303423979970735847486911414273wb), -0x10000000000000000p+510L, -0x10000000000000000p+510L, -0xffffffffffffffffp+510L, -0xffffffffffffffffp+510L);
421 check_round_same (testldbl_575 (-61832600368276133515125630254911797508782837275302959978515764023224306276632966792579100265310761247399417856504034834837841258576687802491886538775473291979151693037174783wb - 1), -0x10000000000000000p+510L);
422 check_round_same (testldblu_575 (123665200736552267023547356544852296467778662051502996893291845136152415864404152863297318515584749006397898563924617955830666588060132579556896136144973298985086561571307520uwb), 0xffffffffffffffffp+511L);
423 check_round (testldblu_575 (123665200736552267026899308527337945742672168301054458425161686591300514208835043224227759523103135750598367138466343812753174552606754092270334606847959941471694973822828543uwb), 0xffffffffffffffffp+511L, 0xffffffffffffffffp+511L, 0x10000000000000000p+511L, 0xffffffffffffffffp+511L);
424 check_round (testldblu_575 (123665200736552267026899308527337945742672168301054458425161686591300514208835043224227759523103135750598367138466343812753174552606754092270334606847959941471694973822828544uwb), 0x10000000000000000p+511L, 0xffffffffffffffffp+511L, 0x10000000000000000p+511L, 0xffffffffffffffffp+511L);
425 check_round (testldblu_575 (123665200736552267026899308527337945742672168301054458425161686591300514208835043224227759523103135750598367138466343812753174552606754092270334606847959941471694973822828545uwb), 0x10000000000000000p+511L, 0xffffffffffffffffp+511L, 0x10000000000000000p+511L, 0xffffffffffffffffp+511L);
426 check_round (testldblu_575 (123665200736552267030251260509823595017565674550605919957031528046448612553265933585158200530621522494798835713008069669675682517153375604983773077550946583958303386074349567uwb), 0x10000000000000000p+511L, 0xffffffffffffffffp+511L, 0x10000000000000000p+511L, 0xffffffffffffffffp+511L);
427 #endif
428 #endif
429 #if __FLT128_MANT_DIG__, 113
430 #if __BITINT_MAXWIDTH__ >= 135
431 check_round (testflt128_135 (-21646332438261169091754659013488783917055wb), -0x1fce71fdcfb1797b42dede66ac9ecp+21F128, -0x1fce71fdcfb1797b42dede66ac9edp+21F128, -0x1fce71fdcfb1797b42dede66ac9ecp+21F128, -0x1fce71fdcfb1797b42dede66ac9ecp+21F128);
432 check_round (testflt128_135 (-21646332438261169091754659013488783917056wb), -0x1fce71fdcfb1797b42dede66ac9ecp+21F128, -0x1fce71fdcfb1797b42dede66ac9edp+21F128, -0x1fce71fdcfb1797b42dede66ac9ecp+21F128, -0x1fce71fdcfb1797b42dede66ac9ecp+21F128);
433 check_round (testflt128_135 (-21646332438261169091754659013488783917057wb), -0x1fce71fdcfb1797b42dede66ac9edp+21F128, -0x1fce71fdcfb1797b42dede66ac9edp+21F128, -0x1fce71fdcfb1797b42dede66ac9ecp+21F128, -0x1fce71fdcfb1797b42dede66ac9ecp+21F128);
434 check_round_same (testflt128_135 (-21646332438261169091754659013488784965632wb), -0x1fce71fdcfb1797b42dede66ac9edp+21F128);
435 check_round (testflt128_135 (-21646332438261169091754659013488786014207wb), -0x1fce71fdcfb1797b42dede66ac9edp+21F128, -0x1fce71fdcfb1797b42dede66ac9eep+21F128, -0x1fce71fdcfb1797b42dede66ac9edp+21F128, -0x1fce71fdcfb1797b42dede66ac9edp+21F128);
436 check_round (testflt128_135 (-21646332438261169091754659013488786014208wb), -0x1fce71fdcfb1797b42dede66ac9eep+21F128, -0x1fce71fdcfb1797b42dede66ac9eep+21F128, -0x1fce71fdcfb1797b42dede66ac9edp+21F128, -0x1fce71fdcfb1797b42dede66ac9edp+21F128);
437 check_round (testflt128_135 (-21646332438261169091754659013488786014209wb), -0x1fce71fdcfb1797b42dede66ac9eep+21F128, -0x1fce71fdcfb1797b42dede66ac9eep+21F128, -0x1fce71fdcfb1797b42dede66ac9edp+21F128, -0x1fce71fdcfb1797b42dede66ac9edp+21F128);
438 check_round (testflt128u_135 (21646332438261169091754659013488783917055uwb), 0x1fce71fdcfb1797b42dede66ac9ecp+21F128, 0x1fce71fdcfb1797b42dede66ac9ecp+21F128, 0x1fce71fdcfb1797b42dede66ac9edp+21F128, 0x1fce71fdcfb1797b42dede66ac9ecp+21F128);
439 check_round (testflt128u_135 (21646332438261169091754659013488783917056uwb), 0x1fce71fdcfb1797b42dede66ac9ecp+21F128, 0x1fce71fdcfb1797b42dede66ac9ecp+21F128, 0x1fce71fdcfb1797b42dede66ac9edp+21F128, 0x1fce71fdcfb1797b42dede66ac9ecp+21F128);
440 check_round (testflt128u_135 (21646332438261169091754659013488783917057uwb), 0x1fce71fdcfb1797b42dede66ac9edp+21F128, 0x1fce71fdcfb1797b42dede66ac9ecp+21F128, 0x1fce71fdcfb1797b42dede66ac9edp+21F128, 0x1fce71fdcfb1797b42dede66ac9ecp+21F128);
441 check_round_same (testflt128u_135 (21646332438261169091754659013488784965632uwb), 0x1fce71fdcfb1797b42dede66ac9edp+21F128);
442 check_round (testflt128u_135 (21646332438261169091754659013488786014207uwb), 0x1fce71fdcfb1797b42dede66ac9edp+21F128, 0x1fce71fdcfb1797b42dede66ac9edp+21F128, 0x1fce71fdcfb1797b42dede66ac9eep+21F128, 0x1fce71fdcfb1797b42dede66ac9edp+21F128);
443 check_round (testflt128u_135 (21646332438261169091754659013488786014208uwb), 0x1fce71fdcfb1797b42dede66ac9eep+21F128, 0x1fce71fdcfb1797b42dede66ac9edp+21F128, 0x1fce71fdcfb1797b42dede66ac9eep+21F128, 0x1fce71fdcfb1797b42dede66ac9edp+21F128);
444 check_round (testflt128u_135 (21646332438261169091754659013488786014209uwb), 0x1fce71fdcfb1797b42dede66ac9eep+21F128, 0x1fce71fdcfb1797b42dede66ac9edp+21F128, 0x1fce71fdcfb1797b42dede66ac9eep+21F128, 0x1fce71fdcfb1797b42dede66ac9edp+21F128);
445 #endif
446 #if __BITINT_MAXWIDTH__ >= 192
447 check_round_same (testflt128_192 (3138550867693340381917894711603832905819722818574723579904wb), 0x1ffffffffffffffffffffffffffffp+78F128);
448 check_round (testflt128_192 (3138550867693340381917894711603833056935450270403370418175wb), 0x1ffffffffffffffffffffffffffffp+78F128, 0x1ffffffffffffffffffffffffffffp+78F128, 0x20000000000000000000000000000p+78F128, 0x1ffffffffffffffffffffffffffffp+78F128);
449 check_round (testflt128_192 (3138550867693340381917894711603833056935450270403370418176wb), 0x20000000000000000000000000000p+78F128, 0x1ffffffffffffffffffffffffffffp+78F128, 0x20000000000000000000000000000p+78F128, 0x1ffffffffffffffffffffffffffffp+78F128);
450 check_round (testflt128_192 (3138550867693340381917894711603833056935450270403370418177wb), 0x20000000000000000000000000000p+78F128, 0x1ffffffffffffffffffffffffffffp+78F128, 0x20000000000000000000000000000p+78F128, 0x1ffffffffffffffffffffffffffffp+78F128);
451 check_round (testflt128_192 (3138550867693340381917894711603833208051177722232017256447wb), 0x20000000000000000000000000000p+78F128, 0x1ffffffffffffffffffffffffffffp+78F128, 0x20000000000000000000000000000p+78F128, 0x1ffffffffffffffffffffffffffffp+78F128);
452 check_round_same (testflt128u_192 (6277101735386680763835789423207665811639445637149447159808uwb), 0x1ffffffffffffffffffffffffffffp+79F128);
453 check_round (testflt128u_192 (6277101735386680763835789423207666113870900540806740836351uwb), 0x1ffffffffffffffffffffffffffffp+79F128, 0x1ffffffffffffffffffffffffffffp+79F128, 0x20000000000000000000000000000p+79F128, 0x1ffffffffffffffffffffffffffffp+79F128);
454 check_round (testflt128u_192 (6277101735386680763835789423207666113870900540806740836352uwb), 0x20000000000000000000000000000p+79F128, 0x1ffffffffffffffffffffffffffffp+79F128, 0x20000000000000000000000000000p+79F128, 0x1ffffffffffffffffffffffffffffp+79F128);
455 check_round (testflt128u_192 (6277101735386680763835789423207666113870900540806740836353uwb), 0x20000000000000000000000000000p+79F128, 0x1ffffffffffffffffffffffffffffp+79F128, 0x20000000000000000000000000000p+79F128, 0x1ffffffffffffffffffffffffffffp+79F128);
456 check_round (testflt128u_192 (6277101735386680763835789423207666416102355444464034512895uwb), 0x20000000000000000000000000000p+79F128, 0x1ffffffffffffffffffffffffffffp+79F128, 0x20000000000000000000000000000p+79F128, 0x1ffffffffffffffffffffffffffffp+79F128);
457 #endif
458 #if __BITINT_MAXWIDTH__ >= 575
459 check_round_same (testflt128_575 (-39695651458311907436978914487787846289740055435765388813682045155135192382154626611682813571487190641804615256990296246545713518740501887218789991403746059512699763279527936wb), -0x148b25ce53790ddc343a80e5af6bap+461F128);
460 check_round (testflt128_575 (-39695651458311907436978914487787849266871470150571212503712362264401765094669639986937588484471046485703139369468190190624257242316066424102078490670010875270428034085158911wb), -0x148b25ce53790ddc343a80e5af6bap+461F128, -0x148b25ce53790ddc343a80e5af6bbp+461F128, -0x148b25ce53790ddc343a80e5af6bap+461F128, -0x148b25ce53790ddc343a80e5af6bap+461F128);
461 check_round (testflt128_575 (-39695651458311907436978914487787849266871470150571212503712362264401765094669639986937588484471046485703139369468190190624257242316066424102078490670010875270428034085158912wb), -0x148b25ce53790ddc343a80e5af6bap+461F128, -0x148b25ce53790ddc343a80e5af6bbp+461F128, -0x148b25ce53790ddc343a80e5af6bap+461F128, -0x148b25ce53790ddc343a80e5af6bap+461F128);
462 check_round (testflt128_575 (-39695651458311907436978914487787849266871470150571212503712362264401765094669639986937588484471046485703139369468190190624257242316066424102078490670010875270428034085158913wb), -0x148b25ce53790ddc343a80e5af6bbp+461F128, -0x148b25ce53790ddc343a80e5af6bbp+461F128, -0x148b25ce53790ddc343a80e5af6bap+461F128, -0x148b25ce53790ddc343a80e5af6bap+461F128);
463 check_round_same (testflt128_575 (-39695651458311907436978914487787852244002884865377036193742679373668337807184653362192363397454902329601663481946084134702800965891630960985366989936275691028156304890789888wb), -0x148b25ce53790ddc343a80e5af6bbp+461F128);
464 check_round (testflt128_575 (-39695651458311907436978914487787855221134299580182859883772996482934910519699666737447138310438758173500187594423978078781344689467195497868655489202540506785884575696420863wb), -0x148b25ce53790ddc343a80e5af6bbp+461F128, -0x148b25ce53790ddc343a80e5af6bcp+461F128, -0x148b25ce53790ddc343a80e5af6bbp+461F128, -0x148b25ce53790ddc343a80e5af6bbp+461F128);
465 check_round (testflt128_575 (-39695651458311907436978914487787855221134299580182859883772996482934910519699666737447138310438758173500187594423978078781344689467195497868655489202540506785884575696420864wb), -0x148b25ce53790ddc343a80e5af6bcp+461F128, -0x148b25ce53790ddc343a80e5af6bcp+461F128, -0x148b25ce53790ddc343a80e5af6bbp+461F128, -0x148b25ce53790ddc343a80e5af6bbp+461F128);
466 check_round (testflt128_575 (-39695651458311907436978914487787855221134299580182859883772996482934910519699666737447138310438758173500187594423978078781344689467195497868655489202540506785884575696420865wb), -0x148b25ce53790ddc343a80e5af6bcp+461F128, -0x148b25ce53790ddc343a80e5af6bcp+461F128, -0x148b25ce53790ddc343a80e5af6bbp+461F128, -0x148b25ce53790ddc343a80e5af6bbp+461F128);
467 check_round_same (testflt128_575 (-61832600368276133515125630254911797508782837275302959978515764023224306276632966792579100265310761247399417856504034834837841258576687802491886538775473291979151693037174783wb - 1), -0x20000000000000000000000000000p+461F128);
468 check_round_same (testflt128u_575 (79391302916623814873957828975575692579480110871530777627364090310270384764309253223365627142974381283609230513980592493091427037481003774437579982807492119025399526559055872uwb), 0x148b25ce53790ddc343a80e5af6bap+462F128);
469 check_round (testflt128u_575 (79391302916623814873957828975575698533742940301142425007424724528803530189339279973875176968942092971406278738936380381248514484632132848204156981340021750540856068170317823uwb), 0x148b25ce53790ddc343a80e5af6bap+462F128, 0x148b25ce53790ddc343a80e5af6bap+462F128, 0x148b25ce53790ddc343a80e5af6bbp+462F128, 0x148b25ce53790ddc343a80e5af6bap+462F128);
470 check_round (testflt128u_575 (79391302916623814873957828975575698533742940301142425007424724528803530189339279973875176968942092971406278738936380381248514484632132848204156981340021750540856068170317824uwb), 0x148b25ce53790ddc343a80e5af6bap+462F128, 0x148b25ce53790ddc343a80e5af6bap+462F128, 0x148b25ce53790ddc343a80e5af6bbp+462F128, 0x148b25ce53790ddc343a80e5af6bap+462F128);
471 check_round (testflt128u_575 (79391302916623814873957828975575698533742940301142425007424724528803530189339279973875176968942092971406278738936380381248514484632132848204156981340021750540856068170317825uwb), 0x148b25ce53790ddc343a80e5af6bbp+462F128, 0x148b25ce53790ddc343a80e5af6bap+462F128, 0x148b25ce53790ddc343a80e5af6bbp+462F128, 0x148b25ce53790ddc343a80e5af6bap+462F128);
472 check_round_same (testflt128u_575 (79391302916623814873957828975575704488005769730754072387485358747336675614369306724384726794909804659203326963892168269405601931783261921970733979872551382056312609781579776uwb), 0x148b25ce53790ddc343a80e5af6bbp+462F128);
473 check_round (testflt128u_575 (79391302916623814873957828975575710442268599160365719767545992965869821039399333474894276620877516347000375188847956157562689378934390995737310978405081013571769151392841727uwb), 0x148b25ce53790ddc343a80e5af6bbp+462F128, 0x148b25ce53790ddc343a80e5af6bbp+462F128, 0x148b25ce53790ddc343a80e5af6bcp+462F128, 0x148b25ce53790ddc343a80e5af6bbp+462F128);
474 check_round (testflt128u_575 (79391302916623814873957828975575710442268599160365719767545992965869821039399333474894276620877516347000375188847956157562689378934390995737310978405081013571769151392841728uwb), 0x148b25ce53790ddc343a80e5af6bcp+462F128, 0x148b25ce53790ddc343a80e5af6bbp+462F128, 0x148b25ce53790ddc343a80e5af6bcp+462F128, 0x148b25ce53790ddc343a80e5af6bbp+462F128);
475 check_round (testflt128u_575 (79391302916623814873957828975575710442268599160365719767545992965869821039399333474894276620877516347000375188847956157562689378934390995737310978405081013571769151392841729uwb), 0x148b25ce53790ddc343a80e5af6bcp+462F128, 0x148b25ce53790ddc343a80e5af6bbp+462F128, 0x148b25ce53790ddc343a80e5af6bcp+462F128, 0x148b25ce53790ddc343a80e5af6bbp+462F128);
476 check_round (testflt128u_575 (123665200736552267030251260509823595017565674550605919957031528046448612553265933585158200530621522494798835713008069669675682517153375604983773077550946583958303386074349567uwb), 0x20000000000000000000000000000p+462F128, 0x1ffffffffffffffffffffffffffffp+462F128, 0x20000000000000000000000000000p+462F128, 0x1ffffffffffffffffffffffffffffp+462F128);
477 #endif
478 #endif
479 #endif