| 12
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
 100
 101
 102
 103
 104
 105
 106
 107
 108
 109
 110
 111
 112
 113
 114
 115
 116
 117
 118
 119
 120
 121
 122
 123
 124
 125
 126
 127
 128
 129
 130
 131
 132
 133
 134
 135
 136
 137
 138
 139
 140
 141
 142
 143
 144
 145
 146
 147
 148
 149
 150
 151
 152
 153
 154
 155
 156
 157
 158
 159
 160
 161
 162
 163
 164
 165
 166
 167
 168
 169
 170
 171
 172
 173
 174
 175
 176
 177
 178
 179
 180
 181
 182
 183
 184
 185
 186
 187
 188
 189
 190
 191
 192
 193
 194
 195
 196
 197
 198
 199
 200
 201
 202
 203
 204
 205
 206
 207
 208
 209
 210
 211
 212
 213
 214
 215
 216
 217
 218
 219
 220
 221
 222
 223
 224
 225
 226
 227
 228
 229
 230
 231
 232
 233
 234
 235
 236
 237
 238
 239
 240
 241
 242
 243
 244
 245
 246
 247
 248
 249
 250
 251
 252
 253
 254
 255
 256
 257
 258
 259
 260
 261
 262
 263
 264
 265
 266
 267
 268
 269
 270
 271
 272
 273
 274
 275
 276
 277
 278
 279
 280
 281
 282
 283
 284
 285
 286
 287
 288
 289
 290
 291
 292
 293
 294
 295
 296
 297
 298
 299
 300
 301
 302
 303
 304
 305
 306
 307
 308
 309
 310
 311
 312
 313
 314
 315
 316
 317
 318
 319
 320
 321
 322
 323
 324
 325
 326
 327
 328
 329
 330
 331
 332
 333
 334
 335
 336
 337
 338
 339
 340
 341
 342
 343
 344
 345
 346
 347
 348
 349
 350
 351
 352
 353
 354
 355
 356
 357
 358
 359
 360
 361
 362
 363
 364
 365
 366
 367
 368
 369
 370
 371
 372
 373
 374
 375
 376
 377
 378
 379
 380
 381
 382
 383
 384
 385
 386
 387
 388
 389
 390
 391
 392
 393
 394
 395
 396
 397
 398
 399
 400
 401
 402
 403
 404
 405
 406
 407
 408
 409
 410
 411
 412
 413
 414
 415
 416
 417
 418
 419
 420
 421
 422
 423
 424
 425
 426
 427
 428
 429
 430
 431
 432
 433
 434
 435
 436
 437
 438
 439
 440
 441
 442
 443
 444
 445
 446
 447
 448
 449
 450
 451
 452
 453
 454
 455
 456
 457
 458
 459
 460
 461
 462
 463
 464
 465
 466
 467
 468
 469
 470
 471
 472
 473
 474
 475
 476
 477
 478
 479
 480
 481
 482
 483
 484
 485
 486
 487
 488
 489
 490
 491
 492
 493
 494
 495
 496
 497
 498
 499
 500
 501
 502
 503
 504
 505
 506
 507
 508
 509
 510
 511
 512
 513
 514
 515
 516
 517
 518
 519
 520
 521
 522
 523
 524
 525
 526
 527
 528
 529
 530
 531
 532
 533
 534
 535
 536
 537
 538
 539
 540
 541
 542
 543
 544
 545
 546
 547
 548
 549
 550
 551
 552
 553
 554
 555
 556
 557
 558
 559
 560
 561
 562
 563
 564
 565
 566
 567
 568
 569
 570
 571
 572
 573
 574
 575
 576
 577
 578
 579
 580
 581
 582
 583
 584
 585
 586
 587
 588
 589
 590
 591
 592
 593
 594
 595
 596
 597
 598
 599
 600
 601
 602
 603
 604
 605
 606
 607
 608
 609
 610
 611
 612
 613
 614
 615
 616
 617
 618
 619
 620
 621
 622
 623
 624
 625
 626
 627
 628
 629
 630
 631
 632
 633
 634
 635
 636
 637
 638
 639
 640
 641
 642
 643
 644
 645
 646
 647
 648
 649
 650
 651
 652
 653
 654
 655
 656
 657
 658
 659
 660
 661
 662
 663
 664
 665
 666
 667
 668
 669
 670
 671
 672
 673
 674
 675
 676
 677
 678
 679
 680
 681
 682
 683
 684
 685
 686
 687
 688
 689
 690
 691
 692
 693
 694
 695
 696
 697
 698
 699
 700
 701
 702
 703
 704
 705
 706
 
 | ------------------------------------------------------------------------
-- dqCompareTotalMag.decTest -- decQuad comparison; abs. total order  --
-- Copyright (c) IBM Corporation, 1981, 2008.  All rights reserved.   --
------------------------------------------------------------------------
-- Please see the document "General Decimal Arithmetic Testcases"     --
-- at http://www2.hursley.ibm.com/decimal for the description of      --
-- these testcases.                                                   --
--                                                                    --
-- These testcases are experimental ('beta' versions), and they       --
-- may contain errors.  They are offered on an as-is basis.  In       --
-- particular, achieving the same results as the tests here is not    --
-- a guarantee that an implementation complies with any Standard      --
-- or specification.  The tests are not exhaustive.                   --
--                                                                    --
-- Please send comments, suggestions, and corrections to the author:  --
--   Mike Cowlishaw, IBM Fellow                                       --
--   IBM UK, PO Box 31, Birmingham Road, Warwick CV34 5JL, UK         --
--   mfc@uk.ibm.com                                                   --
------------------------------------------------------------------------
version: 2.59
-- Note that we cannot assume add/subtract tests cover paths adequately,
-- here, because the code might be quite different (comparison cannot
-- overflow or underflow, so actual subtractions are not necessary).
-- Similarly, comparetotal will have some radically different paths
-- than compare.
-- All operands and results are decQuads.
extended:    1
clamp:       1
precision:   34
maxExponent: 6144
minExponent: -6143
rounding:    half_even
-- sanity checks
dqctm001 comparetotmag  -2  -2   ->   0
dqctm002 comparetotmag  -2  -1   ->   1
dqctm003 comparetotmag  -2   0   ->   1
dqctm004 comparetotmag  -2   1   ->   1
dqctm005 comparetotmag  -2   2   ->   0
dqctm006 comparetotmag  -1  -2   ->  -1
dqctm007 comparetotmag  -1  -1   ->   0
dqctm008 comparetotmag  -1   0   ->   1
dqctm009 comparetotmag  -1   1   ->   0
dqctm010 comparetotmag  -1   2   ->  -1
dqctm011 comparetotmag   0  -2   ->  -1
dqctm012 comparetotmag   0  -1   ->  -1
dqctm013 comparetotmag   0   0   ->   0
dqctm014 comparetotmag   0   1   ->  -1
dqctm015 comparetotmag   0   2   ->  -1
dqctm016 comparetotmag   1  -2   ->  -1
dqctm017 comparetotmag   1  -1   ->   0
dqctm018 comparetotmag   1   0   ->   1
dqctm019 comparetotmag   1   1   ->   0
dqctm020 comparetotmag   1   2   ->  -1
dqctm021 comparetotmag   2  -2   ->   0
dqctm022 comparetotmag   2  -1   ->   1
dqctm023 comparetotmag   2   0   ->   1
dqctm025 comparetotmag   2   1   ->   1
dqctm026 comparetotmag   2   2   ->   0
dqctm031 comparetotmag  -20  -20   ->   0
dqctm032 comparetotmag  -20  -10   ->   1
dqctm033 comparetotmag  -20   00   ->   1
dqctm034 comparetotmag  -20   10   ->   1
dqctm035 comparetotmag  -20   20   ->   0
dqctm036 comparetotmag  -10  -20   ->  -1
dqctm037 comparetotmag  -10  -10   ->   0
dqctm038 comparetotmag  -10   00   ->   1
dqctm039 comparetotmag  -10   10   ->   0
dqctm040 comparetotmag  -10   20   ->  -1
dqctm041 comparetotmag   00  -20   ->  -1
dqctm042 comparetotmag   00  -10   ->  -1
dqctm043 comparetotmag   00   00   ->   0
dqctm044 comparetotmag   00   10   ->  -1
dqctm045 comparetotmag   00   20   ->  -1
dqctm046 comparetotmag   10  -20   ->  -1
dqctm047 comparetotmag   10  -10   ->   0
dqctm048 comparetotmag   10   00   ->   1
dqctm049 comparetotmag   10   10   ->   0
dqctm050 comparetotmag   10   20   ->  -1
dqctm051 comparetotmag   20  -20   ->   0
dqctm052 comparetotmag   20  -10   ->   1
dqctm053 comparetotmag   20   00   ->   1
dqctm055 comparetotmag   20   10   ->   1
dqctm056 comparetotmag   20   20   ->   0
dqctm061 comparetotmag  -2.0  -2.0   ->   0
dqctm062 comparetotmag  -2.0  -1.0   ->   1
dqctm063 comparetotmag  -2.0   0.0   ->   1
dqctm064 comparetotmag  -2.0   1.0   ->   1
dqctm065 comparetotmag  -2.0   2.0   ->   0
dqctm066 comparetotmag  -1.0  -2.0   ->  -1
dqctm067 comparetotmag  -1.0  -1.0   ->   0
dqctm068 comparetotmag  -1.0   0.0   ->   1
dqctm069 comparetotmag  -1.0   1.0   ->   0
dqctm070 comparetotmag  -1.0   2.0   ->  -1
dqctm071 comparetotmag   0.0  -2.0   ->  -1
dqctm072 comparetotmag   0.0  -1.0   ->  -1
dqctm073 comparetotmag   0.0   0.0   ->   0
dqctm074 comparetotmag   0.0   1.0   ->  -1
dqctm075 comparetotmag   0.0   2.0   ->  -1
dqctm076 comparetotmag   1.0  -2.0   ->  -1
dqctm077 comparetotmag   1.0  -1.0   ->   0
dqctm078 comparetotmag   1.0   0.0   ->   1
dqctm079 comparetotmag   1.0   1.0   ->   0
dqctm080 comparetotmag   1.0   2.0   ->  -1
dqctm081 comparetotmag   2.0  -2.0   ->   0
dqctm082 comparetotmag   2.0  -1.0   ->   1
dqctm083 comparetotmag   2.0   0.0   ->   1
dqctm085 comparetotmag   2.0   1.0   ->   1
dqctm086 comparetotmag   2.0   2.0   ->   0
-- now some cases which might overflow if subtract were used
dqctm090 comparetotmag  9.99999999999999999999999999999E+6144 9.99999999999999999999999999999E+6144   ->   0
dqctm091 comparetotmag -9.99999999999999999999999999999E+6144 9.99999999999999999999999999999E+6144   ->   0
dqctm092 comparetotmag  9.99999999999999999999999999999E+6144 -9.99999999999999999999999999999E+6144  ->   0
dqctm093 comparetotmag -9.99999999999999999999999999999E+6144 -9.99999999999999999999999999999E+6144  ->   0
-- some differing length/exponent cases
-- in this first group, compare would compare all equal
dqctm100 comparetotmag   7.0    7.0     ->   0
dqctm101 comparetotmag   7.0    7       ->  -1
dqctm102 comparetotmag   7      7.0     ->   1
dqctm103 comparetotmag   7E+0   7.0     ->   1
dqctm104 comparetotmag   70E-1  7.0     ->   0
dqctm105 comparetotmag   0.7E+1 7       ->   0
dqctm106 comparetotmag   70E-1  7       ->  -1
dqctm107 comparetotmag   7.0    7E+0    ->  -1
dqctm108 comparetotmag   7.0    70E-1   ->   0
dqctm109 comparetotmag   7      0.7E+1  ->   0
dqctm110 comparetotmag   7      70E-1   ->   1
dqctm120 comparetotmag   8.0    7.0     ->   1
dqctm121 comparetotmag   8.0    7       ->   1
dqctm122 comparetotmag   8      7.0     ->   1
dqctm123 comparetotmag   8E+0   7.0     ->   1
dqctm124 comparetotmag   80E-1  7.0     ->   1
dqctm125 comparetotmag   0.8E+1 7       ->   1
dqctm126 comparetotmag   80E-1  7       ->   1
dqctm127 comparetotmag   8.0    7E+0    ->   1
dqctm128 comparetotmag   8.0    70E-1   ->   1
dqctm129 comparetotmag   8      0.7E+1   ->   1
dqctm130 comparetotmag   8      70E-1   ->   1
dqctm140 comparetotmag   8.0    9.0     ->  -1
dqctm141 comparetotmag   8.0    9       ->  -1
dqctm142 comparetotmag   8      9.0     ->  -1
dqctm143 comparetotmag   8E+0   9.0     ->  -1
dqctm144 comparetotmag   80E-1  9.0     ->  -1
dqctm145 comparetotmag   0.8E+1 9       ->  -1
dqctm146 comparetotmag   80E-1  9       ->  -1
dqctm147 comparetotmag   8.0    9E+0    ->  -1
dqctm148 comparetotmag   8.0    90E-1   ->  -1
dqctm149 comparetotmag   8      0.9E+1  ->  -1
dqctm150 comparetotmag   8      90E-1   ->  -1
-- and again, with sign changes -+ ..
dqctm200 comparetotmag  -7.0    7.0     ->   0
dqctm201 comparetotmag  -7.0    7       ->  -1
dqctm202 comparetotmag  -7      7.0     ->   1
dqctm203 comparetotmag  -7E+0   7.0     ->   1
dqctm204 comparetotmag  -70E-1  7.0     ->   0
dqctm205 comparetotmag  -0.7E+1 7       ->   0
dqctm206 comparetotmag  -70E-1  7       ->  -1
dqctm207 comparetotmag  -7.0    7E+0    ->  -1
dqctm208 comparetotmag  -7.0    70E-1   ->   0
dqctm209 comparetotmag  -7      0.7E+1  ->   0
dqctm210 comparetotmag  -7      70E-1   ->   1
dqctm220 comparetotmag  -8.0    7.0     ->   1
dqctm221 comparetotmag  -8.0    7       ->   1
dqctm222 comparetotmag  -8      7.0     ->   1
dqctm223 comparetotmag  -8E+0   7.0     ->   1
dqctm224 comparetotmag  -80E-1  7.0     ->   1
dqctm225 comparetotmag  -0.8E+1 7       ->   1
dqctm226 comparetotmag  -80E-1  7       ->   1
dqctm227 comparetotmag  -8.0    7E+0    ->   1
dqctm228 comparetotmag  -8.0    70E-1   ->   1
dqctm229 comparetotmag  -8      0.7E+1  ->   1
dqctm230 comparetotmag  -8      70E-1   ->   1
dqctm240 comparetotmag  -8.0    9.0     ->  -1
dqctm241 comparetotmag  -8.0    9       ->  -1
dqctm242 comparetotmag  -8      9.0     ->  -1
dqctm243 comparetotmag  -8E+0   9.0     ->  -1
dqctm244 comparetotmag  -80E-1  9.0     ->  -1
dqctm245 comparetotmag  -0.8E+1 9       ->  -1
dqctm246 comparetotmag  -80E-1  9       ->  -1
dqctm247 comparetotmag  -8.0    9E+0    ->  -1
dqctm248 comparetotmag  -8.0    90E-1   ->  -1
dqctm249 comparetotmag  -8      0.9E+1  ->  -1
dqctm250 comparetotmag  -8      90E-1   ->  -1
-- and again, with sign changes +- ..
dqctm300 comparetotmag   7.0    -7.0     ->   0
dqctm301 comparetotmag   7.0    -7       ->  -1
dqctm302 comparetotmag   7      -7.0     ->   1
dqctm303 comparetotmag   7E+0   -7.0     ->   1
dqctm304 comparetotmag   70E-1  -7.0     ->   0
dqctm305 comparetotmag   .7E+1  -7       ->   0
dqctm306 comparetotmag   70E-1  -7       ->  -1
dqctm307 comparetotmag   7.0    -7E+0    ->  -1
dqctm308 comparetotmag   7.0    -70E-1   ->   0
dqctm309 comparetotmag   7      -.7E+1   ->   0
dqctm310 comparetotmag   7      -70E-1   ->   1
dqctm320 comparetotmag   8.0    -7.0     ->   1
dqctm321 comparetotmag   8.0    -7       ->   1
dqctm322 comparetotmag   8      -7.0     ->   1
dqctm323 comparetotmag   8E+0   -7.0     ->   1
dqctm324 comparetotmag   80E-1  -7.0     ->   1
dqctm325 comparetotmag   .8E+1  -7       ->   1
dqctm326 comparetotmag   80E-1  -7       ->   1
dqctm327 comparetotmag   8.0    -7E+0    ->   1
dqctm328 comparetotmag   8.0    -70E-1   ->   1
dqctm329 comparetotmag   8      -.7E+1   ->   1
dqctm330 comparetotmag   8      -70E-1   ->   1
dqctm340 comparetotmag   8.0    -9.0     ->  -1
dqctm341 comparetotmag   8.0    -9       ->  -1
dqctm342 comparetotmag   8      -9.0     ->  -1
dqctm343 comparetotmag   8E+0   -9.0     ->  -1
dqctm344 comparetotmag   80E-1  -9.0     ->  -1
dqctm345 comparetotmag   .8E+1  -9       ->  -1
dqctm346 comparetotmag   80E-1  -9       ->  -1
dqctm347 comparetotmag   8.0    -9E+0    ->  -1
dqctm348 comparetotmag   8.0    -90E-1   ->  -1
dqctm349 comparetotmag   8      -.9E+1   ->  -1
dqctm350 comparetotmag   8      -90E-1   ->  -1
-- and again, with sign changes -- ..
dqctm400 comparetotmag   -7.0    -7.0     ->   0
dqctm401 comparetotmag   -7.0    -7       ->  -1
dqctm402 comparetotmag   -7      -7.0     ->   1
dqctm403 comparetotmag   -7E+0   -7.0     ->   1
dqctm404 comparetotmag   -70E-1  -7.0     ->   0
dqctm405 comparetotmag   -.7E+1  -7       ->   0
dqctm406 comparetotmag   -70E-1  -7       ->  -1
dqctm407 comparetotmag   -7.0    -7E+0    ->  -1
dqctm408 comparetotmag   -7.0    -70E-1   ->   0
dqctm409 comparetotmag   -7      -.7E+1   ->   0
dqctm410 comparetotmag   -7      -70E-1   ->   1
dqctm420 comparetotmag   -8.0    -7.0     ->   1
dqctm421 comparetotmag   -8.0    -7       ->   1
dqctm422 comparetotmag   -8      -7.0     ->   1
dqctm423 comparetotmag   -8E+0   -7.0     ->   1
dqctm424 comparetotmag   -80E-1  -7.0     ->   1
dqctm425 comparetotmag   -.8E+1  -7       ->   1
dqctm426 comparetotmag   -80E-1  -7       ->   1
dqctm427 comparetotmag   -8.0    -7E+0    ->   1
dqctm428 comparetotmag   -8.0    -70E-1   ->   1
dqctm429 comparetotmag   -8      -.7E+1   ->   1
dqctm430 comparetotmag   -8      -70E-1   ->   1
dqctm440 comparetotmag   -8.0    -9.0     ->  -1
dqctm441 comparetotmag   -8.0    -9       ->  -1
dqctm442 comparetotmag   -8      -9.0     ->  -1
dqctm443 comparetotmag   -8E+0   -9.0     ->  -1
dqctm444 comparetotmag   -80E-1  -9.0     ->  -1
dqctm445 comparetotmag   -.8E+1  -9       ->  -1
dqctm446 comparetotmag   -80E-1  -9       ->  -1
dqctm447 comparetotmag   -8.0    -9E+0    ->  -1
dqctm448 comparetotmag   -8.0    -90E-1   ->  -1
dqctm449 comparetotmag   -8      -.9E+1   ->  -1
dqctm450 comparetotmag   -8      -90E-1   ->  -1
-- testcases that subtract to lots of zeros at boundaries [pgr]
dqctm473 comparetotmag 123.4560000000000E-89 123.456E-89  ->  -1
dqctm474 comparetotmag 123.456000000000E+89 123.456E+89  ->  -1
dqctm475 comparetotmag 123.45600000000E-89 123.456E-89  ->  -1
dqctm476 comparetotmag 123.4560000000E+89 123.456E+89  ->  -1
dqctm477 comparetotmag 123.456000000E-89 123.456E-89  ->  -1
dqctm478 comparetotmag 123.45600000E+89 123.456E+89  ->  -1
dqctm479 comparetotmag 123.4560000E-89 123.456E-89  ->  -1
dqctm480 comparetotmag 123.456000E+89 123.456E+89  ->  -1
dqctm481 comparetotmag 123.45600E-89 123.456E-89  ->  -1
dqctm482 comparetotmag 123.4560E+89 123.456E+89  ->  -1
dqctm483 comparetotmag 123.456E-89 123.456E-89  ->   0
dqctm487 comparetotmag 123.456E+89 123.4560000000000E+89  ->   1
dqctm488 comparetotmag 123.456E-89 123.456000000000E-89  ->   1
dqctm489 comparetotmag 123.456E+89 123.45600000000E+89  ->   1
dqctm490 comparetotmag 123.456E-89 123.4560000000E-89  ->   1
dqctm491 comparetotmag 123.456E+89 123.456000000E+89  ->   1
dqctm492 comparetotmag 123.456E-89 123.45600000E-89  ->   1
dqctm493 comparetotmag 123.456E+89 123.4560000E+89  ->   1
dqctm494 comparetotmag 123.456E-89 123.456000E-89  ->   1
dqctm495 comparetotmag 123.456E+89 123.45600E+89  ->   1
dqctm496 comparetotmag 123.456E-89 123.4560E-89  ->   1
dqctm497 comparetotmag 123.456E+89 123.456E+89  ->   0
-- wide-ranging, around precision; signs equal
dqctm498 comparetotmag    1     1E-17     ->   1
dqctm499 comparetotmag    1     1E-16     ->   1
dqctm500 comparetotmag    1     1E-15     ->   1
dqctm501 comparetotmag    1     1E-14     ->   1
dqctm502 comparetotmag    1     1E-13     ->   1
dqctm503 comparetotmag    1     1E-12     ->   1
dqctm504 comparetotmag    1     1E-11     ->   1
dqctm505 comparetotmag    1     1E-10     ->   1
dqctm506 comparetotmag    1     1E-9      ->   1
dqctm507 comparetotmag    1     1E-8      ->   1
dqctm508 comparetotmag    1     1E-7      ->   1
dqctm509 comparetotmag    1     1E-6      ->   1
dqctm510 comparetotmag    1     1E-5      ->   1
dqctm511 comparetotmag    1     1E-4      ->   1
dqctm512 comparetotmag    1     1E-3      ->   1
dqctm513 comparetotmag    1     1E-2      ->   1
dqctm514 comparetotmag    1     1E-1      ->   1
dqctm515 comparetotmag    1     1E-0      ->   0
dqctm516 comparetotmag    1     1E+1      ->  -1
dqctm517 comparetotmag    1     1E+2      ->  -1
dqctm518 comparetotmag    1     1E+3      ->  -1
dqctm519 comparetotmag    1     1E+4      ->  -1
dqctm521 comparetotmag    1     1E+5      ->  -1
dqctm522 comparetotmag    1     1E+6      ->  -1
dqctm523 comparetotmag    1     1E+7      ->  -1
dqctm524 comparetotmag    1     1E+8      ->  -1
dqctm525 comparetotmag    1     1E+9      ->  -1
dqctm526 comparetotmag    1     1E+10     ->  -1
dqctm527 comparetotmag    1     1E+11     ->  -1
dqctm528 comparetotmag    1     1E+12     ->  -1
dqctm529 comparetotmag    1     1E+13     ->  -1
dqctm530 comparetotmag    1     1E+14     ->  -1
dqctm531 comparetotmag    1     1E+15     ->  -1
dqctm532 comparetotmag    1     1E+16     ->  -1
dqctm533 comparetotmag    1     1E+17     ->  -1
-- LR swap
dqctm538 comparetotmag    1E-17  1        ->  -1
dqctm539 comparetotmag    1E-16  1        ->  -1
dqctm540 comparetotmag    1E-15  1        ->  -1
dqctm541 comparetotmag    1E-14  1        ->  -1
dqctm542 comparetotmag    1E-13  1        ->  -1
dqctm543 comparetotmag    1E-12  1        ->  -1
dqctm544 comparetotmag    1E-11  1        ->  -1
dqctm545 comparetotmag    1E-10  1        ->  -1
dqctm546 comparetotmag    1E-9   1        ->  -1
dqctm547 comparetotmag    1E-8   1        ->  -1
dqctm548 comparetotmag    1E-7   1        ->  -1
dqctm549 comparetotmag    1E-6   1        ->  -1
dqctm550 comparetotmag    1E-5   1        ->  -1
dqctm551 comparetotmag    1E-4   1        ->  -1
dqctm552 comparetotmag    1E-3   1        ->  -1
dqctm553 comparetotmag    1E-2   1        ->  -1
dqctm554 comparetotmag    1E-1   1        ->  -1
dqctm555 comparetotmag    1E-0   1        ->   0
dqctm556 comparetotmag    1E+1   1        ->   1
dqctm557 comparetotmag    1E+2   1        ->   1
dqctm558 comparetotmag    1E+3   1        ->   1
dqctm559 comparetotmag    1E+4   1        ->   1
dqctm561 comparetotmag    1E+5   1        ->   1
dqctm562 comparetotmag    1E+6   1        ->   1
dqctm563 comparetotmag    1E+7   1        ->   1
dqctm564 comparetotmag    1E+8   1        ->   1
dqctm565 comparetotmag    1E+9   1        ->   1
dqctm566 comparetotmag    1E+10  1        ->   1
dqctm567 comparetotmag    1E+11  1        ->   1
dqctm568 comparetotmag    1E+12  1        ->   1
dqctm569 comparetotmag    1E+13  1        ->   1
dqctm570 comparetotmag    1E+14  1        ->   1
dqctm571 comparetotmag    1E+15  1        ->   1
dqctm572 comparetotmag    1E+16  1        ->   1
dqctm573 comparetotmag    1E+17  1        ->   1
-- similar with a useful coefficient, one side only
dqctm578 comparetotmag  0.000000987654321     1E-17     ->   1
dqctm579 comparetotmag  0.000000987654321     1E-16     ->   1
dqctm580 comparetotmag  0.000000987654321     1E-15     ->   1
dqctm581 comparetotmag  0.000000987654321     1E-14     ->   1
dqctm582 comparetotmag  0.000000987654321     1E-13     ->   1
dqctm583 comparetotmag  0.000000987654321     1E-12     ->   1
dqctm584 comparetotmag  0.000000987654321     1E-11     ->   1
dqctm585 comparetotmag  0.000000987654321     1E-10     ->   1
dqctm586 comparetotmag  0.000000987654321     1E-9      ->   1
dqctm587 comparetotmag  0.000000987654321     1E-8      ->   1
dqctm588 comparetotmag  0.000000987654321     1E-7      ->   1
dqctm589 comparetotmag  0.000000987654321     1E-6      ->  -1
dqctm590 comparetotmag  0.000000987654321     1E-5      ->  -1
dqctm591 comparetotmag  0.000000987654321     1E-4      ->  -1
dqctm592 comparetotmag  0.000000987654321     1E-3      ->  -1
dqctm593 comparetotmag  0.000000987654321     1E-2      ->  -1
dqctm594 comparetotmag  0.000000987654321     1E-1      ->  -1
dqctm595 comparetotmag  0.000000987654321     1E-0      ->  -1
dqctm596 comparetotmag  0.000000987654321     1E+1      ->  -1
dqctm597 comparetotmag  0.000000987654321     1E+2      ->  -1
dqctm598 comparetotmag  0.000000987654321     1E+3      ->  -1
dqctm599 comparetotmag  0.000000987654321     1E+4      ->  -1
-- check some unit-y traps
dqctm600 comparetotmag   12            12.2345  ->  -1
dqctm601 comparetotmag   12.0          12.2345  ->  -1
dqctm602 comparetotmag   12.00         12.2345  ->  -1
dqctm603 comparetotmag   12.000        12.2345  ->  -1
dqctm604 comparetotmag   12.0000       12.2345  ->  -1
dqctm605 comparetotmag   12.00000      12.2345  ->  -1
dqctm606 comparetotmag   12.000000     12.2345  ->  -1
dqctm607 comparetotmag   12.0000000    12.2345  ->  -1
dqctm608 comparetotmag   12.00000000   12.2345  ->  -1
dqctm609 comparetotmag   12.000000000  12.2345  ->  -1
dqctm610 comparetotmag   12.1234 12             ->   1
dqctm611 comparetotmag   12.1234 12.0           ->   1
dqctm612 comparetotmag   12.1234 12.00          ->   1
dqctm613 comparetotmag   12.1234 12.000         ->   1
dqctm614 comparetotmag   12.1234 12.0000        ->   1
dqctm615 comparetotmag   12.1234 12.00000       ->   1
dqctm616 comparetotmag   12.1234 12.000000      ->   1
dqctm617 comparetotmag   12.1234 12.0000000     ->   1
dqctm618 comparetotmag   12.1234 12.00000000    ->   1
dqctm619 comparetotmag   12.1234 12.000000000   ->   1
dqctm620 comparetotmag  -12           -12.2345  ->  -1
dqctm621 comparetotmag  -12.0         -12.2345  ->  -1
dqctm622 comparetotmag  -12.00        -12.2345  ->  -1
dqctm623 comparetotmag  -12.000       -12.2345  ->  -1
dqctm624 comparetotmag  -12.0000      -12.2345  ->  -1
dqctm625 comparetotmag  -12.00000     -12.2345  ->  -1
dqctm626 comparetotmag  -12.000000    -12.2345  ->  -1
dqctm627 comparetotmag  -12.0000000   -12.2345  ->  -1
dqctm628 comparetotmag  -12.00000000  -12.2345  ->  -1
dqctm629 comparetotmag  -12.000000000 -12.2345  ->  -1
dqctm630 comparetotmag  -12.1234 -12            ->   1
dqctm631 comparetotmag  -12.1234 -12.0          ->   1
dqctm632 comparetotmag  -12.1234 -12.00         ->   1
dqctm633 comparetotmag  -12.1234 -12.000        ->   1
dqctm634 comparetotmag  -12.1234 -12.0000       ->   1
dqctm635 comparetotmag  -12.1234 -12.00000      ->   1
dqctm636 comparetotmag  -12.1234 -12.000000     ->   1
dqctm637 comparetotmag  -12.1234 -12.0000000    ->   1
dqctm638 comparetotmag  -12.1234 -12.00000000   ->   1
dqctm639 comparetotmag  -12.1234 -12.000000000  ->   1
-- extended zeros
dqctm640 comparetotmag   0     0    ->   0
dqctm641 comparetotmag   0    -0    ->   0
dqctm642 comparetotmag   0    -0.0  ->   1
dqctm643 comparetotmag   0     0.0  ->   1
dqctm644 comparetotmag  -0     0    ->   0
dqctm645 comparetotmag  -0    -0    ->   0
dqctm646 comparetotmag  -0    -0.0  ->   1
dqctm647 comparetotmag  -0     0.0  ->   1
dqctm648 comparetotmag   0.0   0    ->  -1
dqctm649 comparetotmag   0.0  -0    ->  -1
dqctm650 comparetotmag   0.0  -0.0  ->   0
dqctm651 comparetotmag   0.0   0.0  ->   0
dqctm652 comparetotmag  -0.0   0    ->  -1
dqctm653 comparetotmag  -0.0  -0    ->  -1
dqctm654 comparetotmag  -0.0  -0.0  ->   0
dqctm655 comparetotmag  -0.0   0.0  ->   0
dqctm656 comparetotmag  -0E1   0.0  ->   1
dqctm657 comparetotmag  -0E2   0.0  ->   1
dqctm658 comparetotmag   0E1   0.0  ->   1
dqctm659 comparetotmag   0E2   0.0  ->   1
dqctm660 comparetotmag  -0E1   0    ->   1
dqctm661 comparetotmag  -0E2   0    ->   1
dqctm662 comparetotmag   0E1   0    ->   1
dqctm663 comparetotmag   0E2   0    ->   1
dqctm664 comparetotmag  -0E1  -0E1  ->   0
dqctm665 comparetotmag  -0E2  -0E1  ->   1
dqctm666 comparetotmag   0E1  -0E1  ->   0
dqctm667 comparetotmag   0E2  -0E1  ->   1
dqctm668 comparetotmag  -0E1  -0E2  ->  -1
dqctm669 comparetotmag  -0E2  -0E2  ->   0
dqctm670 comparetotmag   0E1  -0E2  ->  -1
dqctm671 comparetotmag   0E2  -0E2  ->   0
dqctm672 comparetotmag  -0E1   0E1  ->   0
dqctm673 comparetotmag  -0E2   0E1  ->   1
dqctm674 comparetotmag   0E1   0E1  ->   0
dqctm675 comparetotmag   0E2   0E1  ->   1
dqctm676 comparetotmag  -0E1   0E2  ->  -1
dqctm677 comparetotmag  -0E2   0E2  ->   0
dqctm678 comparetotmag   0E1   0E2  ->  -1
dqctm679 comparetotmag   0E2   0E2  ->   0
-- trailing zeros; unit-y
dqctm680 comparetotmag   12    12            ->   0
dqctm681 comparetotmag   12    12.0          ->   1
dqctm682 comparetotmag   12    12.00         ->   1
dqctm683 comparetotmag   12    12.000        ->   1
dqctm684 comparetotmag   12    12.0000       ->   1
dqctm685 comparetotmag   12    12.00000      ->   1
dqctm686 comparetotmag   12    12.000000     ->   1
dqctm687 comparetotmag   12    12.0000000    ->   1
dqctm688 comparetotmag   12    12.00000000   ->   1
dqctm689 comparetotmag   12    12.000000000  ->   1
dqctm690 comparetotmag   12              12  ->   0
dqctm691 comparetotmag   12.0            12  ->  -1
dqctm692 comparetotmag   12.00           12  ->  -1
dqctm693 comparetotmag   12.000          12  ->  -1
dqctm694 comparetotmag   12.0000         12  ->  -1
dqctm695 comparetotmag   12.00000        12  ->  -1
dqctm696 comparetotmag   12.000000       12  ->  -1
dqctm697 comparetotmag   12.0000000      12  ->  -1
dqctm698 comparetotmag   12.00000000     12  ->  -1
dqctm699 comparetotmag   12.000000000    12  ->  -1
-- old long operand checks
dqctm701 comparetotmag 12345678000  1  ->   1
dqctm702 comparetotmag 1 12345678000   ->  -1
dqctm703 comparetotmag 1234567800   1  ->   1
dqctm704 comparetotmag 1 1234567800    ->  -1
dqctm705 comparetotmag 1234567890   1  ->   1
dqctm706 comparetotmag 1 1234567890    ->  -1
dqctm707 comparetotmag 1234567891   1  ->   1
dqctm708 comparetotmag 1 1234567891    ->  -1
dqctm709 comparetotmag 12345678901  1  ->   1
dqctm710 comparetotmag 1 12345678901   ->  -1
dqctm711 comparetotmag 1234567896   1  ->   1
dqctm712 comparetotmag 1 1234567896    ->  -1
dqctm713 comparetotmag -1234567891  1  ->   1
dqctm714 comparetotmag 1 -1234567891   ->  -1
dqctm715 comparetotmag -12345678901 1  ->   1
dqctm716 comparetotmag 1 -12345678901  ->  -1
dqctm717 comparetotmag -1234567896  1  ->   1
dqctm718 comparetotmag 1 -1234567896   ->  -1
-- old residue cases
dqctm740 comparetotmag  1  0.9999999   ->   1
dqctm741 comparetotmag  1  0.999999    ->   1
dqctm742 comparetotmag  1  0.99999     ->   1
dqctm743 comparetotmag  1  1.0000      ->   1
dqctm744 comparetotmag  1  1.00001     ->  -1
dqctm745 comparetotmag  1  1.000001    ->  -1
dqctm746 comparetotmag  1  1.0000001   ->  -1
dqctm750 comparetotmag  0.9999999  1   ->  -1
dqctm751 comparetotmag  0.999999   1   ->  -1
dqctm752 comparetotmag  0.99999    1   ->  -1
dqctm753 comparetotmag  1.0000     1   ->  -1
dqctm754 comparetotmag  1.00001    1   ->   1
dqctm755 comparetotmag  1.000001   1   ->   1
dqctm756 comparetotmag  1.0000001  1   ->   1
-- Specials
dqctm780 comparetotmag  Inf  -Inf   ->  0
dqctm781 comparetotmag  Inf  -1000  ->  1
dqctm782 comparetotmag  Inf  -1     ->  1
dqctm783 comparetotmag  Inf  -0     ->  1
dqctm784 comparetotmag  Inf   0     ->  1
dqctm785 comparetotmag  Inf   1     ->  1
dqctm786 comparetotmag  Inf   1000  ->  1
dqctm787 comparetotmag  Inf   Inf   ->  0
dqctm788 comparetotmag -1000  Inf   -> -1
dqctm789 comparetotmag -Inf   Inf   ->  0
dqctm790 comparetotmag -1     Inf   -> -1
dqctm791 comparetotmag -0     Inf   -> -1
dqctm792 comparetotmag  0     Inf   -> -1
dqctm793 comparetotmag  1     Inf   -> -1
dqctm794 comparetotmag  1000  Inf   -> -1
dqctm795 comparetotmag  Inf   Inf   ->  0
dqctm800 comparetotmag -Inf  -Inf   ->  0
dqctm801 comparetotmag -Inf  -1000  ->  1
dqctm802 comparetotmag -Inf  -1     ->  1
dqctm803 comparetotmag -Inf  -0     ->  1
dqctm804 comparetotmag -Inf   0     ->  1
dqctm805 comparetotmag -Inf   1     ->  1
dqctm806 comparetotmag -Inf   1000  ->  1
dqctm807 comparetotmag -Inf   Inf   ->  0
dqctm808 comparetotmag -Inf  -Inf   ->  0
dqctm809 comparetotmag -1000 -Inf   -> -1
dqctm810 comparetotmag -1    -Inf   -> -1
dqctm811 comparetotmag -0    -Inf   -> -1
dqctm812 comparetotmag  0    -Inf   -> -1
dqctm813 comparetotmag  1    -Inf   -> -1
dqctm814 comparetotmag  1000 -Inf   -> -1
dqctm815 comparetotmag  Inf  -Inf   ->  0
dqctm821 comparetotmag  NaN -Inf    ->  1
dqctm822 comparetotmag  NaN -1000   ->  1
dqctm823 comparetotmag  NaN -1      ->  1
dqctm824 comparetotmag  NaN -0      ->  1
dqctm825 comparetotmag  NaN  0      ->  1
dqctm826 comparetotmag  NaN  1      ->  1
dqctm827 comparetotmag  NaN  1000   ->  1
dqctm828 comparetotmag  NaN  Inf    ->  1
dqctm829 comparetotmag  NaN  NaN    ->  0
dqctm830 comparetotmag -Inf  NaN    ->  -1
dqctm831 comparetotmag -1000 NaN    ->  -1
dqctm832 comparetotmag -1    NaN    ->  -1
dqctm833 comparetotmag -0    NaN    ->  -1
dqctm834 comparetotmag  0    NaN    ->  -1
dqctm835 comparetotmag  1    NaN    ->  -1
dqctm836 comparetotmag  1000 NaN    ->  -1
dqctm837 comparetotmag  Inf  NaN    ->  -1
dqctm838 comparetotmag -NaN -NaN    ->  0
dqctm839 comparetotmag +NaN -NaN    ->  0
dqctm840 comparetotmag -NaN +NaN    ->  0
dqctm841 comparetotmag  sNaN -sNaN  ->  0
dqctm842 comparetotmag  sNaN -NaN   ->  -1
dqctm843 comparetotmag  sNaN -Inf   ->  1
dqctm844 comparetotmag  sNaN -1000  ->  1
dqctm845 comparetotmag  sNaN -1     ->  1
dqctm846 comparetotmag  sNaN -0     ->  1
dqctm847 comparetotmag  sNaN  0     ->  1
dqctm848 comparetotmag  sNaN  1     ->  1
dqctm849 comparetotmag  sNaN  1000  ->  1
dqctm850 comparetotmag  sNaN  NaN   ->  -1
dqctm851 comparetotmag  sNaN sNaN   ->  0
dqctm852 comparetotmag -sNaN sNaN   ->  0
dqctm853 comparetotmag -NaN  sNaN   ->  1
dqctm854 comparetotmag -Inf  sNaN   ->  -1
dqctm855 comparetotmag -1000 sNaN   ->  -1
dqctm856 comparetotmag -1    sNaN   ->  -1
dqctm857 comparetotmag -0    sNaN   ->  -1
dqctm858 comparetotmag  0    sNaN   ->  -1
dqctm859 comparetotmag  1    sNaN   ->  -1
dqctm860 comparetotmag  1000 sNaN   ->  -1
dqctm861 comparetotmag  Inf  sNaN   ->  -1
dqctm862 comparetotmag  NaN  sNaN   ->  1
dqctm863 comparetotmag  sNaN sNaN   ->  0
dqctm871 comparetotmag  -sNaN -sNaN  ->  0
dqctm872 comparetotmag  -sNaN -NaN   ->  -1
dqctm873 comparetotmag  -sNaN -Inf   ->  1
dqctm874 comparetotmag  -sNaN -1000  ->  1
dqctm875 comparetotmag  -sNaN -1     ->  1
dqctm876 comparetotmag  -sNaN -0     ->  1
dqctm877 comparetotmag  -sNaN  0     ->  1
dqctm878 comparetotmag  -sNaN  1     ->  1
dqctm879 comparetotmag  -sNaN  1000  ->  1
dqctm880 comparetotmag  -sNaN  NaN   ->  -1
dqctm881 comparetotmag  -sNaN sNaN   ->  0
dqctm882 comparetotmag -sNaN -sNaN   ->  0
dqctm883 comparetotmag -NaN  -sNaN   ->  1
dqctm884 comparetotmag -Inf  -sNaN   ->  -1
dqctm885 comparetotmag -1000 -sNaN   ->  -1
dqctm886 comparetotmag -1    -sNaN   ->  -1
dqctm887 comparetotmag -0    -sNaN   ->  -1
dqctm888 comparetotmag  0    -sNaN   ->  -1
dqctm889 comparetotmag  1    -sNaN   ->  -1
dqctm890 comparetotmag  1000 -sNaN   ->  -1
dqctm891 comparetotmag  Inf  -sNaN   ->  -1
dqctm892 comparetotmag  NaN  -sNaN   ->  1
dqctm893 comparetotmag  sNaN -sNaN   ->  0
-- NaNs with payload
dqctm960 comparetotmag  NaN9 -Inf   ->  1
dqctm961 comparetotmag  NaN8  999   ->  1
dqctm962 comparetotmag  NaN77 Inf   ->  1
dqctm963 comparetotmag -NaN67 NaN5  ->  1
dqctm964 comparetotmag -Inf  -NaN4  ->  -1
dqctm965 comparetotmag -999  -NaN33 ->  -1
dqctm966 comparetotmag  Inf   NaN2  ->  -1
dqctm970 comparetotmag -NaN41 -NaN42 -> -1
dqctm971 comparetotmag +NaN41 -NaN42 -> -1
dqctm972 comparetotmag -NaN41 +NaN42 -> -1
dqctm973 comparetotmag +NaN41 +NaN42 -> -1
dqctm974 comparetotmag -NaN42 -NaN01 ->  1
dqctm975 comparetotmag +NaN42 -NaN01 ->  1
dqctm976 comparetotmag -NaN42 +NaN01 ->  1
dqctm977 comparetotmag +NaN42 +NaN01 ->  1
dqctm980 comparetotmag -sNaN771 -sNaN772 -> -1
dqctm981 comparetotmag +sNaN771 -sNaN772 -> -1
dqctm982 comparetotmag -sNaN771 +sNaN772 -> -1
dqctm983 comparetotmag +sNaN771 +sNaN772 -> -1
dqctm984 comparetotmag -sNaN772 -sNaN771 ->  1
dqctm985 comparetotmag +sNaN772 -sNaN771 ->  1
dqctm986 comparetotmag -sNaN772 +sNaN771 ->  1
dqctm987 comparetotmag +sNaN772 +sNaN771 ->  1
dqctm991 comparetotmag -sNaN99 -Inf    ->  1
dqctm992 comparetotmag  sNaN98 -11     ->  1
dqctm993 comparetotmag  sNaN97  NaN    -> -1
dqctm994 comparetotmag  sNaN16 sNaN94  -> -1
dqctm995 comparetotmag  NaN85  sNaN83  ->  1
dqctm996 comparetotmag -Inf    sNaN92  -> -1
dqctm997 comparetotmag  088    sNaN81  -> -1
dqctm998 comparetotmag  Inf    sNaN90  -> -1
dqctm999 comparetotmag  NaN   -sNaN89  ->  1
-- spread zeros
dqctm1110 comparetotmag   0E-6143  0        ->  -1
dqctm1111 comparetotmag   0E-6143 -0        ->  -1
dqctm1112 comparetotmag  -0E-6143  0        ->  -1
dqctm1113 comparetotmag  -0E-6143 -0        ->  -1
dqctm1114 comparetotmag   0E-6143  0E+6144   ->  -1
dqctm1115 comparetotmag   0E-6143 -0E+6144   ->  -1
dqctm1116 comparetotmag  -0E-6143  0E+6144   ->  -1
dqctm1117 comparetotmag  -0E-6143 -0E+6144   ->  -1
dqctm1118 comparetotmag   0       0E+6144   ->  -1
dqctm1119 comparetotmag   0      -0E+6144   ->  -1
dqctm1120 comparetotmag  -0       0E+6144   ->  -1
dqctm1121 comparetotmag  -0      -0E+6144   ->  -1
dqctm1130 comparetotmag   0E+6144  0        ->   1
dqctm1131 comparetotmag   0E+6144 -0        ->   1
dqctm1132 comparetotmag  -0E+6144  0        ->   1
dqctm1133 comparetotmag  -0E+6144 -0        ->   1
dqctm1134 comparetotmag   0E+6144  0E-6143   ->   1
dqctm1135 comparetotmag   0E+6144 -0E-6143   ->   1
dqctm1136 comparetotmag  -0E+6144  0E-6143   ->   1
dqctm1137 comparetotmag  -0E+6144 -0E-6143   ->   1
dqctm1138 comparetotmag   0       0E-6143   ->   1
dqctm1139 comparetotmag   0      -0E-6143   ->   1
dqctm1140 comparetotmag  -0       0E-6143   ->   1
dqctm1141 comparetotmag  -0      -0E-6143   ->   1
-- Null tests
dqctm9990 comparetotmag 10  # -> NaN Invalid_operation
dqctm9991 comparetotmag  # 10 -> NaN Invalid_operation
 |