gen-fromfp-tests-inputs 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426
  1. /* Integer inputs within range of uintmax_t. */
  2. i 1:1
  3. i -1:1
  4. i 2:2
  5. i -2:2
  6. i 3:2
  7. i -3:3
  8. i 4:3
  9. i -4:3
  10. i 5:3
  11. i -5:4
  12. i 6:3
  13. i -6:4
  14. i 7:3
  15. i -7:4
  16. i 8:4
  17. i -8:4
  18. i 9:4
  19. i -9:5
  20. i 15:4
  21. i -15:5
  22. i 16:5
  23. i -16:5
  24. i 17:5
  25. i -17:6
  26. i 0x3fffff:22
  27. i -0x3fffff:23
  28. i 0x400000:23
  29. i -0x400000:23
  30. i 0x400001:23
  31. i -0x400001:24
  32. i 0x7fffff:23
  33. i -0x7fffff:24
  34. i 0x800000:24
  35. i -0x800000:24
  36. i 0x800001:24
  37. i -0x800001:25
  38. i 0xffffff:24
  39. i -0xffffff:25
  40. i 0x1000000:25
  41. i -0x1000000:25
  42. #if MANT_DIG >= 53
  43. i 0x1000001:25
  44. i -0x1000001:26
  45. i 0x7ffffffffffffLL:51
  46. i -0x7ffffffffffffLL:52
  47. #endif
  48. i 0x8000000000000LL:52
  49. i -0x8000000000000LL:52
  50. #if MANT_DIG >= 53
  51. i 0x8000000000001LL:52
  52. i -0x8000000000001LL:53
  53. i 0xfffffffffffffLL:52
  54. i -0xfffffffffffffLL:53
  55. #endif
  56. i 0x10000000000000LL:53
  57. i -0x10000000000000LL:53
  58. #if MANT_DIG >= 53
  59. i 0x10000000000001LL:53
  60. i -0x10000000000001LL:54
  61. i 0x1fffffffffffffLL:53
  62. i -0x1fffffffffffffLL:54
  63. #endif
  64. i 0x20000000000000LL:54
  65. i -0x20000000000000LL:54
  66. #if MANT_DIG >= 64
  67. i 0x20000000000001LL:54
  68. i -0x20000000000001LL:55
  69. i 0x3fffffffffffffffLL:62
  70. i -0x3fffffffffffffffLL:63
  71. #endif
  72. i 0x4000000000000000LL:63
  73. i -0x4000000000000000LL:63
  74. #if MANT_DIG >= 64
  75. i 0x4000000000000001LL:63
  76. i -0x4000000000000001LL:64
  77. i 0x7fffffffffffffffLL:63
  78. i -0x7fffffffffffffffLL:64
  79. #endif
  80. i 0x8000000000000000ULL:64
  81. i -INT64_MAX-1:64
  82. #if MANT_DIG >= 64
  83. i 0x8000000000000001ULL:64
  84. i 0xffffffffffffffffULL:64
  85. #endif
  86. i 0x7fffff8000000000LL:63
  87. i -0x7fffff8000000000LL:64
  88. i 0x8000010000000000ULL:64
  89. i 0xffffff0000000000ULL:64
  90. #if MANT_DIG >= 53
  91. i 0x7ffffffffffffc00LL:63
  92. i -0x7ffffffffffffc00LL:64
  93. i 0x8000000000000800ULL:64
  94. i 0xfffffffffffff800ULL:64
  95. #endif
  96. /* Inputs with absolute value between 0 and 1. */
  97. t min_subnorm_value a 0:1 1:1
  98. t -min_subnorm_value a 0:1 -1:1
  99. t min_value a 0:1 1:1
  100. t -min_value a 0:1 -1:1
  101. t 0.1 a 0:1 1:1
  102. t -0.1 a 0:1 -1:1
  103. t 0.25 a 0:1 1:1
  104. t -0.25 a 0:1 -1:1
  105. t 0.499 a 0:1 1:1
  106. t -0.499 a 0:1 -1:1
  107. t 0x0.ffffffp-1 a 0:1 1:1
  108. t -0x0.ffffffp-1 a 0:1 -1:1
  109. #if MANT_DIG >= 53
  110. t 0x0.fffffffffffff8p-1 a 0:1 1:1
  111. t -0x0.fffffffffffff8p-1 a 0:1 -1:1
  112. #endif
  113. #if MANT_DIG >= 64
  114. t 0x0.ffffffffffffffffp-1 a 0:1 1:1
  115. t -0x0.ffffffffffffffffp-1 a 0:1 -1:1
  116. #endif
  117. #if MANT_DIG >= 106
  118. t 0x0.ffffffffffffffffffffffffffcp-1 a 0:1 1:1
  119. t -0x0.ffffffffffffffffffffffffffcp-1 a 0:1 -1:1
  120. #endif
  121. #if MANT_DIG >= 113
  122. t 0x0.ffffffffffffffffffffffffffff8p-1 a 0:1 1:1
  123. t -0x0.ffffffffffffffffffffffffffff8p-1 a 0:1 -1:1
  124. #endif
  125. t 0.5 be 0:1 1:1
  126. t -0.5 be 0:1 -1:1
  127. t 0x1.000002p-1 c 0:1 1:1
  128. t -0x1.000002p-1 c 0:1 -1:1
  129. #if MANT_DIG >= 53
  130. t 0x1.0000000000001p-1 c 0:1 1:1
  131. t -0x1.0000000000001p-1 c 0:1 -1:1
  132. #endif
  133. #if MANT_DIG >= 64
  134. t 0x1.0000000000000002p-1 c 0:1 1:1
  135. t -0x1.0000000000000002p-1 c 0:1 -1:1
  136. #endif
  137. #if MANT_DIG >= 106
  138. t 0x1.000000000000000000000000008p-1 c 0:1 1:1
  139. t -0x1.000000000000000000000000008p-1 c 0:1 -1:1
  140. #endif
  141. #if MANT_DIG >= 113
  142. t 0x1.0000000000000000000000000001p-1 c 0:1 1:1
  143. t -0x1.0000000000000000000000000001p-1 c 0:1 -1:1
  144. #endif
  145. t 0.501 c 0:1 1:1
  146. t -0.501 c 0:1 -1:1
  147. t 0.75 c 0:1 1:1
  148. t -0.75 c 0:1 -1:1
  149. t 0.9 c 0:1 1:1
  150. t -0.9 c 0:1 -1:1
  151. t 0x0.ffffffp0 c 0:1 1:1
  152. t -0x0.ffffffp0 c 0:1 -1:1
  153. #if MANT_DIG >= 53
  154. t 0x0.fffffffffffff8p0 c 0:1 1:1
  155. t -0x0.fffffffffffff8p0 c 0:1 -1:1
  156. #endif
  157. #if MANT_DIG >= 64
  158. t 0x0.ffffffffffffffffp0 c 0:1 1:1
  159. t -0x0.ffffffffffffffffp0 c 0:1 -1:1
  160. #endif
  161. #if MANT_DIG >= 106
  162. t 0x0.ffffffffffffffffffffffffffcp0 c 0:1 1:1
  163. t -0x0.ffffffffffffffffffffffffffcp0 c 0:1 -1:1
  164. #endif
  165. #if MANT_DIG >= 113
  166. t 0x0.ffffffffffffffffffffffffffff8p0 c 0:1 1:1
  167. t -0x0.ffffffffffffffffffffffffffff8p0 c 0:1 -1:1
  168. #endif
  169. /* Various non-integer inputs. */
  170. t 1.25 a 1:1 2:2
  171. t -1.25 a -1:1 -2:2
  172. t 1.5 bo 1:1 2:2
  173. t -1.5 bo -1:1 -2:2
  174. t 1.75 c 1:1 2:2
  175. t -1.75 c -1:1 -2:2
  176. t 2.25 a 2:2 3:2
  177. t -2.25 a -2:2 -3:3
  178. t 2.5 be 2:2 3:2
  179. t -2.5 be -2:2 -3:3
  180. t 2.75 c 2:2 3:2
  181. t -2.75 c -2:2 -3:3
  182. t 3.25 a 3:2 4:3
  183. t -3.25 a -3:3 -4:3
  184. t 3.5 bo 3:2 4:3
  185. t -3.5 bo -3:3 -4:3
  186. t 3.75 c 3:2 4:3
  187. t -3.75 c -3:3 -4:3
  188. t 4.25 a 4:3 5:3
  189. t -4.25 a -4:3 -5:4
  190. t 4.5 be 4:3 5:3
  191. t -4.5 be -4:3 -5:4
  192. t 4.75 c 4:3 5:3
  193. t -4.75 c -4:3 -5:4
  194. t 5.25 a 5:3 6:3
  195. t -5.25 a -5:4 -6:4
  196. t 5.5 bo 5:3 6:3
  197. t -5.5 bo -5:4 -6:4
  198. t 5.75 c 5:3 6:3
  199. t -5.75 c -5:4 -6:4
  200. /* 1, 1.5, 2, 2.5, 3, 3.5 +/- 1ulp. */
  201. t 0x1.000002p0 a 1:1 2:2
  202. t -0x1.000002p0 a -1:1 -2:2
  203. t 0x2.fffffcp-1 a 1:1 2:2
  204. t -0x2.fffffcp-1 a -1:1 -2:2
  205. t 0x3.000004p-1 c 1:1 2:2
  206. t -0x3.000004p-1 c -1:1 -2:2
  207. t 0x0.ffffffp1 c 1:1 2:2
  208. t -0x0.ffffffp1 c -1:1 -2:2
  209. t 0x1.000002p1 a 2:2 3:2
  210. t -0x1.000002p1 a -2:2 -3:3
  211. t 0x4.fffff8p-1 a 2:2 3:2
  212. t -0x4.fffff8p-1 a -2:2 -3:3
  213. t 0x5.000008p-1 c 2:2 3:2
  214. t -0x5.000008p-1 c -2:2 -3:3
  215. t 0x2.fffffcp0 c 2:2 3:2
  216. t -0x2.fffffcp0 c -2:2 -3:3
  217. t 0x3.000004p0 a 3:2 4:3
  218. t -0x3.000004p0 a -3:3 -4:3
  219. t 0x6.fffff8p-1 a 3:2 4:3
  220. t -0x6.fffff8p-1 a -3:3 -4:3
  221. t 0x7.000008p-1 c 3:2 4:3
  222. t -0x7.000008p-1 c -3:3 -4:3
  223. #if MANT_DIG >= 53
  224. t 0x1.0000000000001p0 a 1:1 2:2
  225. t -0x1.0000000000001p0 a -1:1 -2:2
  226. t 0x2.ffffffffffffep-1 a 1:1 2:2
  227. t -0x2.ffffffffffffep-1 a -1:1 -2:2
  228. t 0x3.0000000000002p-1 c 1:1 2:2
  229. t -0x3.0000000000002p-1 c -1:1 -2:2
  230. t 0x0.fffffffffffff8p1 c 1:1 2:2
  231. t -0x0.fffffffffffff8p1 c -1:1 -2:2
  232. t 0x1.0000000000001p1 a 2:2 3:2
  233. t -0x1.0000000000001p1 a -2:2 -3:3
  234. t 0x4.ffffffffffffcp-1 a 2:2 3:2
  235. t -0x4.ffffffffffffcp-1 a -2:2 -3:3
  236. t 0x5.0000000000004p-1 c 2:2 3:2
  237. t -0x5.0000000000004p-1 c -2:2 -3:3
  238. t 0x2.ffffffffffffep0 c 2:2 3:2
  239. t -0x2.ffffffffffffep0 c -2:2 -3:3
  240. t 0x3.0000000000002p0 a 3:2 4:3
  241. t -0x3.0000000000002p0 a -3:3 -4:3
  242. t 0x6.ffffffffffffcp-1 a 3:2 4:3
  243. t -0x6.ffffffffffffcp-1 a -3:3 -4:3
  244. t 0x7.0000000000004p-1 c 3:2 4:3
  245. t -0x7.0000000000004p-1 c -3:3 -4:3
  246. #endif
  247. #if MANT_DIG >= 64
  248. t 0x1.0000000000000002p0 a 1:1 2:2
  249. t -0x1.0000000000000002p0 a -1:1 -2:2
  250. t 0x2.fffffffffffffffcp-1 a 1:1 2:2
  251. t -0x2.fffffffffffffffcp-1 a -1:1 -2:2
  252. t 0x3.0000000000000004p-1 c 1:1 2:2
  253. t -0x3.0000000000000004p-1 c -1:1 -2:2
  254. t 0x0.ffffffffffffffffp1 c 1:1 2:2
  255. t -0x0.ffffffffffffffffp1 c -1:1 -2:2
  256. t 0x1.0000000000000002p1 a 2:2 3:2
  257. t -0x1.0000000000000002p1 a -2:2 -3:3
  258. t 0x4.fffffffffffffff8p-1 a 2:2 3:2
  259. t -0x4.fffffffffffffff8p-1 a -2:2 -3:3
  260. t 0x5.0000000000000008p-1 c 2:2 3:2
  261. t -0x5.0000000000000008p-1 c -2:2 -3:3
  262. t 0x2.fffffffffffffffcp0 c 2:2 3:2
  263. t -0x2.fffffffffffffffcp0 c -2:2 -3:3
  264. t 0x3.0000000000000004p0 a 3:2 4:3
  265. t -0x3.0000000000000004p0 a -3:3 -4:3
  266. t 0x6.fffffffffffffff8p-1 a 3:2 4:3
  267. t -0x6.fffffffffffffff8p-1 a -3:3 -4:3
  268. t 0x7.0000000000000008p-1 c 3:2 4:3
  269. t -0x7.0000000000000008p-1 c -3:3 -4:3
  270. #endif
  271. #if MANT_DIG >= 106
  272. t 0x1.000000000000000000000000008p0 a 1:1 2:2
  273. t -0x1.000000000000000000000000008p0 a -1:1 -2:2
  274. t 0x2.ffffffffffffffffffffffffffp-1 a 1:1 2:2
  275. t -0x2.ffffffffffffffffffffffffffp-1 a -1:1 -2:2
  276. t 0x3.00000000000000000000000001p-1 c 1:1 2:2
  277. t -0x3.00000000000000000000000001p-1 c -1:1 -2:2
  278. t 0x0.ffffffffffffffffffffffffffcp1 c 1:1 2:2
  279. t -0x0.ffffffffffffffffffffffffffcp1 c -1:1 -2:2
  280. t 0x1.000000000000000000000000008p1 a 2:2 3:2
  281. t -0x1.000000000000000000000000008p1 a -2:2 -3:3
  282. t 0x4.fffffffffffffffffffffffffep-1 a 2:2 3:2
  283. t -0x4.fffffffffffffffffffffffffep-1 a -2:2 -3:3
  284. t 0x5.00000000000000000000000002p-1 c 2:2 3:2
  285. t -0x5.00000000000000000000000002p-1 c -2:2 -3:3
  286. t 0x2.ffffffffffffffffffffffffffp0 c 2:2 3:2
  287. t -0x2.ffffffffffffffffffffffffffp0 c -2:2 -3:3
  288. t 0x3.00000000000000000000000001p0 a 3:2 4:3
  289. t -0x3.00000000000000000000000001p0 a -3:3 -4:3
  290. t 0x6.fffffffffffffffffffffffffep-1 a 3:2 4:3
  291. t -0x6.fffffffffffffffffffffffffep-1 a -3:3 -4:3
  292. t 0x7.00000000000000000000000002p-1 c 3:2 4:3
  293. t -0x7.00000000000000000000000002p-1 c -3:3 -4:3
  294. #endif
  295. #if MANT_DIG >= 113
  296. t 0x1.0000000000000000000000000001p0 a 1:1 2:2
  297. t -0x1.0000000000000000000000000001p0 a -1:1 -2:2
  298. t 0x2.fffffffffffffffffffffffffffep-1 a 1:1 2:2
  299. t -0x2.fffffffffffffffffffffffffffep-1 a -1:1 -2:2
  300. t 0x3.0000000000000000000000000002p-1 c 1:1 2:2
  301. t -0x3.0000000000000000000000000002p-1 c -1:1 -2:2
  302. t 0x0.ffffffffffffffffffffffffffff8p1 c 1:1 2:2
  303. t -0x0.ffffffffffffffffffffffffffff8p1 c -1:1 -2:2
  304. t 0x1.0000000000000000000000000001p1 a 2:2 3:2
  305. t -0x1.0000000000000000000000000001p1 a -2:2 -3:3
  306. t 0x4.fffffffffffffffffffffffffffcp-1 a 2:2 3:2
  307. t -0x4.fffffffffffffffffffffffffffcp-1 a -2:2 -3:3
  308. t 0x5.0000000000000000000000000004p-1 c 2:2 3:2
  309. t -0x5.0000000000000000000000000004p-1 c -2:2 -3:3
  310. t 0x2.fffffffffffffffffffffffffffep0 c 2:2 3:2
  311. t -0x2.fffffffffffffffffffffffffffep0 c -2:2 -3:3
  312. t 0x3.0000000000000000000000000002p0 a 3:2 4:3
  313. t -0x3.0000000000000000000000000002p0 a -3:3 -4:3
  314. t 0x6.fffffffffffffffffffffffffffcp-1 a 3:2 4:3
  315. t -0x6.fffffffffffffffffffffffffffcp-1 a -3:3 -4:3
  316. t 0x7.0000000000000000000000000004p-1 c 3:2 4:3
  317. t -0x7.0000000000000000000000000004p-1 c -3:3 -4:3
  318. #endif
  319. /* 31, 32, 33 fractional bits. */
  320. #if MANT_DIG >= 53
  321. t 0x200000.7ffffffep0 a 0x200000:22 0x200001:22
  322. t -0x200000.7ffffffep0 a -0x200000:22 -0x200001:23
  323. t 0x200000.8p0 be 0x200000:22 0x200001:22
  324. t -0x200000.8p0 be -0x200000:22 -0x200001:23
  325. t 0x200000.80000002p0 c 0x200000:22 0x200001:22
  326. t -0x200000.80000002p0 c -0x200000:22 -0x200001:23
  327. t 0x200001.7ffffffep0 a 0x200001:22 0x200002:22
  328. t -0x200001.7ffffffep0 a -0x200001:23 -0x200002:23
  329. t 0x200001.8p0 bo 0x200001:22 0x200002:22
  330. t -0x200001.8p0 bo -0x200001:23 -0x200002:23
  331. t 0x200001.80000002p0 c 0x200001:22 0x200002:22
  332. t -0x200001.80000002p0 c -0x200001:23 -0x200002:23
  333. t 0x3fffff.fffffffep0 c 0x3fffff:22 0x400000:23
  334. t -0x3fffff.fffffffep0 c -0x3fffff:23 -0x400000:23
  335. t 0x100000.7fffffffp0 a 0x100000:21 0x100001:21
  336. t -0x100000.7fffffffp0 a -0x100000:21 -0x100001:22
  337. t 0x100000.8p0 be 0x100000:21 0x100001:21
  338. t -0x100000.8p0 be -0x100000:21 -0x100001:22
  339. t 0x100000.80000001p0 c 0x100000:21 0x100001:21
  340. t -0x100000.80000001p0 c -0x100000:21 -0x100001:22
  341. t 0x100001.7fffffffp0 a 0x100001:21 0x100002:21
  342. t -0x100001.7fffffffp0 a -0x100001:22 -0x100002:22
  343. t 0x100001.8p0 bo 0x100001:21 0x100002:21
  344. t -0x100001.8p0 bo -0x100001:22 -0x100002:22
  345. t 0x100001.80000001p0 c 0x100001:21 0x100002:21
  346. t -0x100001.80000001p0 c -0x100001:22 -0x100002:22
  347. t 0x1fffff.ffffffffp0 c 0x1fffff:21 0x200000:22
  348. t -0x1fffff.ffffffffp0 c -0x1fffff:22 -0x200000:22
  349. t 0x80000.7fffffff8p0 a 0x80000:20 0x80001:20
  350. t -0x80000.7fffffff8p0 a -0x80000:20 -0x80001:21
  351. t 0x80000.8p0 be 0x80000:20 0x80001:20
  352. t -0x80000.8p0 be -0x80000:20 -0x80001:21
  353. t 0x80000.800000008p0 c 0x80000:20 0x80001:20
  354. t -0x80000.800000008p0 c -0x80000:20 -0x80001:21
  355. t 0x80001.7fffffff8p0 a 0x80001:20 0x80002:20
  356. t -0x80001.7fffffff8p0 a -0x80001:21 -0x80002:21
  357. t 0x80001.8p0 bo 0x80001:20 0x80002:20
  358. t -0x80001.8p0 bo -0x80001:21 -0x80002:21
  359. t 0x80001.800000008p0 c 0x80001:20 0x80002:20
  360. t -0x80001.800000008p0 c -0x80001:21 -0x80002:21
  361. t 0xfffff.ffffffff8p0 c 0xfffff:20 0x100000:21
  362. t -0xfffff.ffffffff8p0 c -0xfffff:21 -0x100000:21
  363. #endif
  364. #if MANT_DIG >= 64
  365. t 0x100000000.7ffffffep0 a 0x100000000LL:33 0x100000001LL:33
  366. t -0x100000000.7ffffffep0 a -0x100000000LL:33 -0x100000001LL:34
  367. t 0x100000000.8p0 be 0x100000000LL:33 0x100000001LL:33
  368. t -0x100000000.8p0 be -0x100000000LL:33 -0x100000001LL:34
  369. t 0x100000000.80000002p0 c 0x100000000LL:33 0x100000001LL:33
  370. t -0x100000000.80000002p0 c -0x100000000LL:33 -0x100000001LL:34
  371. t 0x100000001.7ffffffep0 a 0x100000001LL:33 0x100000002LL:33
  372. t -0x100000001.7ffffffep0 a -0x100000001LL:34 -0x100000002LL:34
  373. t 0x100000001.8p0 bo 0x100000001LL:33 0x100000002LL:33
  374. t -0x100000001.8p0 bo -0x100000001LL:34 -0x100000002LL:34
  375. t 0x100000001.80000002p0 c 0x100000001LL:33 0x100000002LL:33
  376. t -0x100000001.80000002p0 c -0x100000001LL:34 -0x100000002LL:34
  377. t 0x1ffffffff.fffffffep0 c 0x1ffffffffLL:33 0x200000000LL:34
  378. t -0x1ffffffff.fffffffep0 c -0x1ffffffffLL:34 -0x200000000LL:34
  379. t 0x80000000.7fffffffp0 a 0x80000000LL:32 0x80000001LL:32
  380. t -0x80000000.7fffffffp0 a -0x80000000LL:32 -0x80000001LL:33
  381. t 0x80000000.8p0 be 0x80000000LL:32 0x80000001LL:32
  382. t -0x80000000.8p0 be -0x80000000LL:32 -0x80000001LL:33
  383. t 0x80000000.80000001p0 c 0x80000000LL:32 0x80000001LL:32
  384. t -0x80000000.80000001p0 c -0x80000000LL:32 -0x80000001LL:33
  385. t 0x80000001.7fffffffp0 a 0x80000001LL:32 0x80000002LL:32
  386. t -0x80000001.7fffffffp0 a -0x80000001LL:33 -0x80000002LL:33
  387. t 0x80000001.8p0 bo 0x80000001LL:32 0x80000002LL:32
  388. t -0x80000001.8p0 bo -0x80000001LL:33 -0x80000002LL:33
  389. t 0x80000001.80000001p0 c 0x80000001LL:32 0x80000002LL:32
  390. t -0x80000001.80000001p0 c -0x80000001LL:33 -0x80000002LL:33
  391. t 0xffffffff.ffffffffp0 c 0xffffffffLL:32 0x100000000LL:33
  392. t -0xffffffff.ffffffffp0 c -0xffffffffLL:33 -0x100000000LL:33
  393. t 0x40000000.7fffffff8p0 a 0x40000000LL:31 0x40000001LL:31
  394. t -0x40000000.7fffffff8p0 a -0x40000000LL:31 -0x40000001LL:32
  395. t 0x40000000.8p0 be 0x40000000LL:31 0x40000001LL:31
  396. t -0x40000000.8p0 be -0x40000000LL:31 -0x40000001LL:32
  397. t 0x40000000.800000008p0 c 0x40000000LL:31 0x40000001LL:31
  398. t -0x40000000.800000008p0 c -0x40000000LL:31 -0x40000001LL:32
  399. t 0x40000001.7fffffff8p0 a 0x40000001LL:31 0x40000002LL:31
  400. t -0x40000001.7fffffff8p0 a -0x40000001LL:32 -0x40000002LL:32
  401. t 0x40000001.8p0 bo 0x40000001LL:31 0x40000002LL:31
  402. t -0x40000001.8p0 bo -0x40000001LL:32 -0x40000002LL:32
  403. t 0x40000001.800000008p0 c 0x40000001LL:31 0x40000002LL:31
  404. t -0x40000001.800000008p0 c -0x40000001LL:32 -0x40000002LL:32
  405. t 0x7fffffff.ffffffff8p0 c 0x7fffffffLL:31 0x80000000LL:32
  406. t -0x7fffffff.ffffffff8p0 c -0x7fffffffLL:32 -0x80000000LL:32
  407. #endif
  408. /* Tests where overflow depends on the rounding mode. */
  409. #if MANT_DIG >= 64
  410. t 0x7fffffffffffffff.8p0 bo 0x7fffffffffffffffLL:63 0x8000000000000000ULL:64
  411. #endif
  412. #if MANT_DIG >= 72
  413. t 0x7fffffffffffffff.7fp0 a 0x7fffffffffffffffLL:63 0x8000000000000000ULL:64
  414. t 0x7fffffffffffffff.81p0 c 0x7fffffffffffffffLL:63 0x8000000000000000ULL:64
  415. t 0xffffffffffffffff.7fp0 a 0xffffffffffffffffULL:64 0x10000000000000000ULL:65
  416. t 0xffffffffffffffff.8p0 bo 0xffffffffffffffffULL:64 0x10000000000000000ULL:65
  417. t 0xffffffffffffffff.81p0 c 0xffffffffffffffffULL:64 0x10000000000000000ULL:65
  418. t -0x8000000000000000.7fp0 a -INT64_MAX-1:64 -0x8000000000000001LL:65
  419. t -0x8000000000000000.8p0 be -INT64_MAX-1:64 -0x8000000000000001LL:65
  420. t -0x8000000000000000.81p0 c -INT64_MAX-1:64 -0x8000000000000001LL:65
  421. #endif