123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647 |
- ------------------------------------------------------------------------
- -- dqCompareSig.decTest -- decQuad comparison; all NaNs signal --
- -- 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).
- -- All operands and results are decQuads.
- extended: 1
- clamp: 1
- precision: 34
- maxExponent: 6144
- minExponent: -6143
- rounding: half_even
- -- sanity checks
- dqcms001 comparesig -2 -2 -> 0
- dqcms002 comparesig -2 -1 -> -1
- dqcms003 comparesig -2 0 -> -1
- dqcms004 comparesig -2 1 -> -1
- dqcms005 comparesig -2 2 -> -1
- dqcms006 comparesig -1 -2 -> 1
- dqcms007 comparesig -1 -1 -> 0
- dqcms008 comparesig -1 0 -> -1
- dqcms009 comparesig -1 1 -> -1
- dqcms010 comparesig -1 2 -> -1
- dqcms011 comparesig 0 -2 -> 1
- dqcms012 comparesig 0 -1 -> 1
- dqcms013 comparesig 0 0 -> 0
- dqcms014 comparesig 0 1 -> -1
- dqcms015 comparesig 0 2 -> -1
- dqcms016 comparesig 1 -2 -> 1
- dqcms017 comparesig 1 -1 -> 1
- dqcms018 comparesig 1 0 -> 1
- dqcms019 comparesig 1 1 -> 0
- dqcms020 comparesig 1 2 -> -1
- dqcms021 comparesig 2 -2 -> 1
- dqcms022 comparesig 2 -1 -> 1
- dqcms023 comparesig 2 0 -> 1
- dqcms025 comparesig 2 1 -> 1
- dqcms026 comparesig 2 2 -> 0
- dqcms031 comparesig -20 -20 -> 0
- dqcms032 comparesig -20 -10 -> -1
- dqcms033 comparesig -20 00 -> -1
- dqcms034 comparesig -20 10 -> -1
- dqcms035 comparesig -20 20 -> -1
- dqcms036 comparesig -10 -20 -> 1
- dqcms037 comparesig -10 -10 -> 0
- dqcms038 comparesig -10 00 -> -1
- dqcms039 comparesig -10 10 -> -1
- dqcms040 comparesig -10 20 -> -1
- dqcms041 comparesig 00 -20 -> 1
- dqcms042 comparesig 00 -10 -> 1
- dqcms043 comparesig 00 00 -> 0
- dqcms044 comparesig 00 10 -> -1
- dqcms045 comparesig 00 20 -> -1
- dqcms046 comparesig 10 -20 -> 1
- dqcms047 comparesig 10 -10 -> 1
- dqcms048 comparesig 10 00 -> 1
- dqcms049 comparesig 10 10 -> 0
- dqcms050 comparesig 10 20 -> -1
- dqcms051 comparesig 20 -20 -> 1
- dqcms052 comparesig 20 -10 -> 1
- dqcms053 comparesig 20 00 -> 1
- dqcms055 comparesig 20 10 -> 1
- dqcms056 comparesig 20 20 -> 0
- dqcms061 comparesig -2.0 -2.0 -> 0
- dqcms062 comparesig -2.0 -1.0 -> -1
- dqcms063 comparesig -2.0 0.0 -> -1
- dqcms064 comparesig -2.0 1.0 -> -1
- dqcms065 comparesig -2.0 2.0 -> -1
- dqcms066 comparesig -1.0 -2.0 -> 1
- dqcms067 comparesig -1.0 -1.0 -> 0
- dqcms068 comparesig -1.0 0.0 -> -1
- dqcms069 comparesig -1.0 1.0 -> -1
- dqcms070 comparesig -1.0 2.0 -> -1
- dqcms071 comparesig 0.0 -2.0 -> 1
- dqcms072 comparesig 0.0 -1.0 -> 1
- dqcms073 comparesig 0.0 0.0 -> 0
- dqcms074 comparesig 0.0 1.0 -> -1
- dqcms075 comparesig 0.0 2.0 -> -1
- dqcms076 comparesig 1.0 -2.0 -> 1
- dqcms077 comparesig 1.0 -1.0 -> 1
- dqcms078 comparesig 1.0 0.0 -> 1
- dqcms079 comparesig 1.0 1.0 -> 0
- dqcms080 comparesig 1.0 2.0 -> -1
- dqcms081 comparesig 2.0 -2.0 -> 1
- dqcms082 comparesig 2.0 -1.0 -> 1
- dqcms083 comparesig 2.0 0.0 -> 1
- dqcms085 comparesig 2.0 1.0 -> 1
- dqcms086 comparesig 2.0 2.0 -> 0
- -- now some cases which might overflow if subtract were used
- dqcms090 comparesig 9.999999999999999999999999999999999E+6144 9.999999999999999999999999999999999E+6144 -> 0
- dqcms091 comparesig -9.999999999999999999999999999999999E+6144 9.999999999999999999999999999999999E+6144 -> -1
- dqcms092 comparesig 9.999999999999999999999999999999999E+6144 -9.999999999999999999999999999999999E+6144 -> 1
- dqcms093 comparesig -9.999999999999999999999999999999999E+6144 -9.999999999999999999999999999999999E+6144 -> 0
- -- some differing length/exponent cases
- dqcms100 comparesig 7.0 7.0 -> 0
- dqcms101 comparesig 7.0 7 -> 0
- dqcms102 comparesig 7 7.0 -> 0
- dqcms103 comparesig 7E+0 7.0 -> 0
- dqcms104 comparesig 70E-1 7.0 -> 0
- dqcms105 comparesig 0.7E+1 7 -> 0
- dqcms106 comparesig 70E-1 7 -> 0
- dqcms107 comparesig 7.0 7E+0 -> 0
- dqcms108 comparesig 7.0 70E-1 -> 0
- dqcms109 comparesig 7 0.7E+1 -> 0
- dqcms110 comparesig 7 70E-1 -> 0
- dqcms120 comparesig 8.0 7.0 -> 1
- dqcms121 comparesig 8.0 7 -> 1
- dqcms122 comparesig 8 7.0 -> 1
- dqcms123 comparesig 8E+0 7.0 -> 1
- dqcms124 comparesig 80E-1 7.0 -> 1
- dqcms125 comparesig 0.8E+1 7 -> 1
- dqcms126 comparesig 80E-1 7 -> 1
- dqcms127 comparesig 8.0 7E+0 -> 1
- dqcms128 comparesig 8.0 70E-1 -> 1
- dqcms129 comparesig 8 0.7E+1 -> 1
- dqcms130 comparesig 8 70E-1 -> 1
- dqcms140 comparesig 8.0 9.0 -> -1
- dqcms141 comparesig 8.0 9 -> -1
- dqcms142 comparesig 8 9.0 -> -1
- dqcms143 comparesig 8E+0 9.0 -> -1
- dqcms144 comparesig 80E-1 9.0 -> -1
- dqcms145 comparesig 0.8E+1 9 -> -1
- dqcms146 comparesig 80E-1 9 -> -1
- dqcms147 comparesig 8.0 9E+0 -> -1
- dqcms148 comparesig 8.0 90E-1 -> -1
- dqcms149 comparesig 8 0.9E+1 -> -1
- dqcms150 comparesig 8 90E-1 -> -1
- -- and again, with sign changes -+ ..
- dqcms200 comparesig -7.0 7.0 -> -1
- dqcms201 comparesig -7.0 7 -> -1
- dqcms202 comparesig -7 7.0 -> -1
- dqcms203 comparesig -7E+0 7.0 -> -1
- dqcms204 comparesig -70E-1 7.0 -> -1
- dqcms205 comparesig -0.7E+1 7 -> -1
- dqcms206 comparesig -70E-1 7 -> -1
- dqcms207 comparesig -7.0 7E+0 -> -1
- dqcms208 comparesig -7.0 70E-1 -> -1
- dqcms209 comparesig -7 0.7E+1 -> -1
- dqcms210 comparesig -7 70E-1 -> -1
- dqcms220 comparesig -8.0 7.0 -> -1
- dqcms221 comparesig -8.0 7 -> -1
- dqcms222 comparesig -8 7.0 -> -1
- dqcms223 comparesig -8E+0 7.0 -> -1
- dqcms224 comparesig -80E-1 7.0 -> -1
- dqcms225 comparesig -0.8E+1 7 -> -1
- dqcms226 comparesig -80E-1 7 -> -1
- dqcms227 comparesig -8.0 7E+0 -> -1
- dqcms228 comparesig -8.0 70E-1 -> -1
- dqcms229 comparesig -8 0.7E+1 -> -1
- dqcms230 comparesig -8 70E-1 -> -1
- dqcms240 comparesig -8.0 9.0 -> -1
- dqcms241 comparesig -8.0 9 -> -1
- dqcms242 comparesig -8 9.0 -> -1
- dqcms243 comparesig -8E+0 9.0 -> -1
- dqcms244 comparesig -80E-1 9.0 -> -1
- dqcms245 comparesig -0.8E+1 9 -> -1
- dqcms246 comparesig -80E-1 9 -> -1
- dqcms247 comparesig -8.0 9E+0 -> -1
- dqcms248 comparesig -8.0 90E-1 -> -1
- dqcms249 comparesig -8 0.9E+1 -> -1
- dqcms250 comparesig -8 90E-1 -> -1
- -- and again, with sign changes +- ..
- dqcms300 comparesig 7.0 -7.0 -> 1
- dqcms301 comparesig 7.0 -7 -> 1
- dqcms302 comparesig 7 -7.0 -> 1
- dqcms303 comparesig 7E+0 -7.0 -> 1
- dqcms304 comparesig 70E-1 -7.0 -> 1
- dqcms305 comparesig .7E+1 -7 -> 1
- dqcms306 comparesig 70E-1 -7 -> 1
- dqcms307 comparesig 7.0 -7E+0 -> 1
- dqcms308 comparesig 7.0 -70E-1 -> 1
- dqcms309 comparesig 7 -.7E+1 -> 1
- dqcms310 comparesig 7 -70E-1 -> 1
- dqcms320 comparesig 8.0 -7.0 -> 1
- dqcms321 comparesig 8.0 -7 -> 1
- dqcms322 comparesig 8 -7.0 -> 1
- dqcms323 comparesig 8E+0 -7.0 -> 1
- dqcms324 comparesig 80E-1 -7.0 -> 1
- dqcms325 comparesig .8E+1 -7 -> 1
- dqcms326 comparesig 80E-1 -7 -> 1
- dqcms327 comparesig 8.0 -7E+0 -> 1
- dqcms328 comparesig 8.0 -70E-1 -> 1
- dqcms329 comparesig 8 -.7E+1 -> 1
- dqcms330 comparesig 8 -70E-1 -> 1
- dqcms340 comparesig 8.0 -9.0 -> 1
- dqcms341 comparesig 8.0 -9 -> 1
- dqcms342 comparesig 8 -9.0 -> 1
- dqcms343 comparesig 8E+0 -9.0 -> 1
- dqcms344 comparesig 80E-1 -9.0 -> 1
- dqcms345 comparesig .8E+1 -9 -> 1
- dqcms346 comparesig 80E-1 -9 -> 1
- dqcms347 comparesig 8.0 -9E+0 -> 1
- dqcms348 comparesig 8.0 -90E-1 -> 1
- dqcms349 comparesig 8 -.9E+1 -> 1
- dqcms350 comparesig 8 -90E-1 -> 1
- -- and again, with sign changes -- ..
- dqcms400 comparesig -7.0 -7.0 -> 0
- dqcms401 comparesig -7.0 -7 -> 0
- dqcms402 comparesig -7 -7.0 -> 0
- dqcms403 comparesig -7E+0 -7.0 -> 0
- dqcms404 comparesig -70E-1 -7.0 -> 0
- dqcms405 comparesig -.7E+1 -7 -> 0
- dqcms406 comparesig -70E-1 -7 -> 0
- dqcms407 comparesig -7.0 -7E+0 -> 0
- dqcms408 comparesig -7.0 -70E-1 -> 0
- dqcms409 comparesig -7 -.7E+1 -> 0
- dqcms410 comparesig -7 -70E-1 -> 0
- dqcms420 comparesig -8.0 -7.0 -> -1
- dqcms421 comparesig -8.0 -7 -> -1
- dqcms422 comparesig -8 -7.0 -> -1
- dqcms423 comparesig -8E+0 -7.0 -> -1
- dqcms424 comparesig -80E-1 -7.0 -> -1
- dqcms425 comparesig -.8E+1 -7 -> -1
- dqcms426 comparesig -80E-1 -7 -> -1
- dqcms427 comparesig -8.0 -7E+0 -> -1
- dqcms428 comparesig -8.0 -70E-1 -> -1
- dqcms429 comparesig -8 -.7E+1 -> -1
- dqcms430 comparesig -8 -70E-1 -> -1
- dqcms440 comparesig -8.0 -9.0 -> 1
- dqcms441 comparesig -8.0 -9 -> 1
- dqcms442 comparesig -8 -9.0 -> 1
- dqcms443 comparesig -8E+0 -9.0 -> 1
- dqcms444 comparesig -80E-1 -9.0 -> 1
- dqcms445 comparesig -.8E+1 -9 -> 1
- dqcms446 comparesig -80E-1 -9 -> 1
- dqcms447 comparesig -8.0 -9E+0 -> 1
- dqcms448 comparesig -8.0 -90E-1 -> 1
- dqcms449 comparesig -8 -.9E+1 -> 1
- dqcms450 comparesig -8 -90E-1 -> 1
- -- testcases that subtract to lots of zeros at boundaries [pgr]
- dqcms473 comparesig 123.9999999999999999994560000000000E-89 123.999999999999999999456E-89 -> 0
- dqcms474 comparesig 123.999999999999999999456000000000E+89 123.999999999999999999456E+89 -> 0
- dqcms475 comparesig 123.99999999999999999945600000000E-89 123.999999999999999999456E-89 -> 0
- dqcms476 comparesig 123.9999999999999999994560000000E+89 123.999999999999999999456E+89 -> 0
- dqcms477 comparesig 123.999999999999999999456000000E-89 123.999999999999999999456E-89 -> 0
- dqcms478 comparesig 123.99999999999999999945600000E+89 123.999999999999999999456E+89 -> 0
- dqcms479 comparesig 123.9999999999999999994560000E-89 123.999999999999999999456E-89 -> 0
- dqcms480 comparesig 123.999999999999999999456000E+89 123.999999999999999999456E+89 -> 0
- dqcms481 comparesig 123.99999999999999999945600E-89 123.999999999999999999456E-89 -> 0
- dqcms482 comparesig 123.9999999999999999994560E+89 123.999999999999999999456E+89 -> 0
- dqcms483 comparesig 123.999999999999999999456E-89 123.999999999999999999456E-89 -> 0
- dqcms487 comparesig 123.999999999999999999456E+89 123.9999999999999999994560000000000E+89 -> 0
- dqcms488 comparesig 123.999999999999999999456E-89 123.999999999999999999456000000000E-89 -> 0
- dqcms489 comparesig 123.999999999999999999456E+89 123.99999999999999999945600000000E+89 -> 0
- dqcms490 comparesig 123.999999999999999999456E-89 123.9999999999999999994560000000E-89 -> 0
- dqcms491 comparesig 123.999999999999999999456E+89 123.999999999999999999456000000E+89 -> 0
- dqcms492 comparesig 123.999999999999999999456E-89 123.99999999999999999945600000E-89 -> 0
- dqcms493 comparesig 123.999999999999999999456E+89 123.9999999999999999994560000E+89 -> 0
- dqcms494 comparesig 123.999999999999999999456E-89 123.999999999999999999456000E-89 -> 0
- dqcms495 comparesig 123.999999999999999999456E+89 123.99999999999999999945600E+89 -> 0
- dqcms496 comparesig 123.999999999999999999456E-89 123.9999999999999999994560E-89 -> 0
- dqcms497 comparesig 123.999999999999999999456E+89 123.999999999999999999456E+89 -> 0
- -- wide-ranging, around precision; signs equal
- dqcms500 comparesig 1 1E-15 -> 1
- dqcms501 comparesig 1 1E-14 -> 1
- dqcms502 comparesig 1 1E-13 -> 1
- dqcms503 comparesig 1 1E-12 -> 1
- dqcms504 comparesig 1 1E-11 -> 1
- dqcms505 comparesig 1 1E-10 -> 1
- dqcms506 comparesig 1 1E-9 -> 1
- dqcms507 comparesig 1 1E-8 -> 1
- dqcms508 comparesig 1 1E-7 -> 1
- dqcms509 comparesig 1 1E-6 -> 1
- dqcms510 comparesig 1 1E-5 -> 1
- dqcms511 comparesig 1 1E-4 -> 1
- dqcms512 comparesig 1 1E-3 -> 1
- dqcms513 comparesig 1 1E-2 -> 1
- dqcms514 comparesig 1 1E-1 -> 1
- dqcms515 comparesig 1 1E-0 -> 0
- dqcms516 comparesig 1 1E+1 -> -1
- dqcms517 comparesig 1 1E+2 -> -1
- dqcms518 comparesig 1 1E+3 -> -1
- dqcms519 comparesig 1 1E+4 -> -1
- dqcms521 comparesig 1 1E+5 -> -1
- dqcms522 comparesig 1 1E+6 -> -1
- dqcms523 comparesig 1 1E+7 -> -1
- dqcms524 comparesig 1 1E+8 -> -1
- dqcms525 comparesig 1 1E+9 -> -1
- dqcms526 comparesig 1 1E+10 -> -1
- dqcms527 comparesig 1 1E+11 -> -1
- dqcms528 comparesig 1 1E+12 -> -1
- dqcms529 comparesig 1 1E+13 -> -1
- dqcms530 comparesig 1 1E+14 -> -1
- dqcms531 comparesig 1 1E+15 -> -1
- -- LR swap
- dqcms540 comparesig 1E-15 1 -> -1
- dqcms541 comparesig 1E-14 1 -> -1
- dqcms542 comparesig 1E-13 1 -> -1
- dqcms543 comparesig 1E-12 1 -> -1
- dqcms544 comparesig 1E-11 1 -> -1
- dqcms545 comparesig 1E-10 1 -> -1
- dqcms546 comparesig 1E-9 1 -> -1
- dqcms547 comparesig 1E-8 1 -> -1
- dqcms548 comparesig 1E-7 1 -> -1
- dqcms549 comparesig 1E-6 1 -> -1
- dqcms550 comparesig 1E-5 1 -> -1
- dqcms551 comparesig 1E-4 1 -> -1
- dqcms552 comparesig 1E-3 1 -> -1
- dqcms553 comparesig 1E-2 1 -> -1
- dqcms554 comparesig 1E-1 1 -> -1
- dqcms555 comparesig 1E-0 1 -> 0
- dqcms556 comparesig 1E+1 1 -> 1
- dqcms557 comparesig 1E+2 1 -> 1
- dqcms558 comparesig 1E+3 1 -> 1
- dqcms559 comparesig 1E+4 1 -> 1
- dqcms561 comparesig 1E+5 1 -> 1
- dqcms562 comparesig 1E+6 1 -> 1
- dqcms563 comparesig 1E+7 1 -> 1
- dqcms564 comparesig 1E+8 1 -> 1
- dqcms565 comparesig 1E+9 1 -> 1
- dqcms566 comparesig 1E+10 1 -> 1
- dqcms567 comparesig 1E+11 1 -> 1
- dqcms568 comparesig 1E+12 1 -> 1
- dqcms569 comparesig 1E+13 1 -> 1
- dqcms570 comparesig 1E+14 1 -> 1
- dqcms571 comparesig 1E+15 1 -> 1
- -- similar with a useful coefficient, one side only
- dqcms580 comparesig 0.000000987654321 1E-15 -> 1
- dqcms581 comparesig 0.000000987654321 1E-14 -> 1
- dqcms582 comparesig 0.000000987654321 1E-13 -> 1
- dqcms583 comparesig 0.000000987654321 1E-12 -> 1
- dqcms584 comparesig 0.000000987654321 1E-11 -> 1
- dqcms585 comparesig 0.000000987654321 1E-10 -> 1
- dqcms586 comparesig 0.000000987654321 1E-9 -> 1
- dqcms587 comparesig 0.000000987654321 1E-8 -> 1
- dqcms588 comparesig 0.000000987654321 1E-7 -> 1
- dqcms589 comparesig 0.000000987654321 1E-6 -> -1
- dqcms590 comparesig 0.000000987654321 1E-5 -> -1
- dqcms591 comparesig 0.000000987654321 1E-4 -> -1
- dqcms592 comparesig 0.000000987654321 1E-3 -> -1
- dqcms593 comparesig 0.000000987654321 1E-2 -> -1
- dqcms594 comparesig 0.000000987654321 1E-1 -> -1
- dqcms595 comparesig 0.000000987654321 1E-0 -> -1
- dqcms596 comparesig 0.000000987654321 1E+1 -> -1
- dqcms597 comparesig 0.000000987654321 1E+2 -> -1
- dqcms598 comparesig 0.000000987654321 1E+3 -> -1
- dqcms599 comparesig 0.000000987654321 1E+4 -> -1
- -- check some unit-y traps
- dqcms600 comparesig 12 12.2345 -> -1
- dqcms601 comparesig 12.0 12.2345 -> -1
- dqcms602 comparesig 12.00 12.2345 -> -1
- dqcms603 comparesig 12.000 12.2345 -> -1
- dqcms604 comparesig 12.0000 12.2345 -> -1
- dqcms605 comparesig 12.00000 12.2345 -> -1
- dqcms606 comparesig 12.000000 12.2345 -> -1
- dqcms607 comparesig 12.0000000 12.2345 -> -1
- dqcms608 comparesig 12.00000000 12.2345 -> -1
- dqcms609 comparesig 12.000000000 12.2345 -> -1
- dqcms610 comparesig 12.1234 12 -> 1
- dqcms611 comparesig 12.1234 12.0 -> 1
- dqcms612 comparesig 12.1234 12.00 -> 1
- dqcms613 comparesig 12.1234 12.000 -> 1
- dqcms614 comparesig 12.1234 12.0000 -> 1
- dqcms615 comparesig 12.1234 12.00000 -> 1
- dqcms616 comparesig 12.1234 12.000000 -> 1
- dqcms617 comparesig 12.1234 12.0000000 -> 1
- dqcms618 comparesig 12.1234 12.00000000 -> 1
- dqcms619 comparesig 12.1234 12.000000000 -> 1
- dqcms620 comparesig -12 -12.2345 -> 1
- dqcms621 comparesig -12.0 -12.2345 -> 1
- dqcms622 comparesig -12.00 -12.2345 -> 1
- dqcms623 comparesig -12.000 -12.2345 -> 1
- dqcms624 comparesig -12.0000 -12.2345 -> 1
- dqcms625 comparesig -12.00000 -12.2345 -> 1
- dqcms626 comparesig -12.000000 -12.2345 -> 1
- dqcms627 comparesig -12.0000000 -12.2345 -> 1
- dqcms628 comparesig -12.00000000 -12.2345 -> 1
- dqcms629 comparesig -12.000000000 -12.2345 -> 1
- dqcms630 comparesig -12.1234 -12 -> -1
- dqcms631 comparesig -12.1234 -12.0 -> -1
- dqcms632 comparesig -12.1234 -12.00 -> -1
- dqcms633 comparesig -12.1234 -12.000 -> -1
- dqcms634 comparesig -12.1234 -12.0000 -> -1
- dqcms635 comparesig -12.1234 -12.00000 -> -1
- dqcms636 comparesig -12.1234 -12.000000 -> -1
- dqcms637 comparesig -12.1234 -12.0000000 -> -1
- dqcms638 comparesig -12.1234 -12.00000000 -> -1
- dqcms639 comparesig -12.1234 -12.000000000 -> -1
- -- extended zeros
- dqcms640 comparesig 0 0 -> 0
- dqcms641 comparesig 0 -0 -> 0
- dqcms642 comparesig 0 -0.0 -> 0
- dqcms643 comparesig 0 0.0 -> 0
- dqcms644 comparesig -0 0 -> 0
- dqcms645 comparesig -0 -0 -> 0
- dqcms646 comparesig -0 -0.0 -> 0
- dqcms647 comparesig -0 0.0 -> 0
- dqcms648 comparesig 0.0 0 -> 0
- dqcms649 comparesig 0.0 -0 -> 0
- dqcms650 comparesig 0.0 -0.0 -> 0
- dqcms651 comparesig 0.0 0.0 -> 0
- dqcms652 comparesig -0.0 0 -> 0
- dqcms653 comparesig -0.0 -0 -> 0
- dqcms654 comparesig -0.0 -0.0 -> 0
- dqcms655 comparesig -0.0 0.0 -> 0
- dqcms656 comparesig -0E1 0.0 -> 0
- dqcms657 comparesig -0E2 0.0 -> 0
- dqcms658 comparesig 0E1 0.0 -> 0
- dqcms659 comparesig 0E2 0.0 -> 0
- dqcms660 comparesig -0E1 0 -> 0
- dqcms661 comparesig -0E2 0 -> 0
- dqcms662 comparesig 0E1 0 -> 0
- dqcms663 comparesig 0E2 0 -> 0
- dqcms664 comparesig -0E1 -0E1 -> 0
- dqcms665 comparesig -0E2 -0E1 -> 0
- dqcms666 comparesig 0E1 -0E1 -> 0
- dqcms667 comparesig 0E2 -0E1 -> 0
- dqcms668 comparesig -0E1 -0E2 -> 0
- dqcms669 comparesig -0E2 -0E2 -> 0
- dqcms670 comparesig 0E1 -0E2 -> 0
- dqcms671 comparesig 0E2 -0E2 -> 0
- dqcms672 comparesig -0E1 0E1 -> 0
- dqcms673 comparesig -0E2 0E1 -> 0
- dqcms674 comparesig 0E1 0E1 -> 0
- dqcms675 comparesig 0E2 0E1 -> 0
- dqcms676 comparesig -0E1 0E2 -> 0
- dqcms677 comparesig -0E2 0E2 -> 0
- dqcms678 comparesig 0E1 0E2 -> 0
- dqcms679 comparesig 0E2 0E2 -> 0
- -- trailing zeros; unit-y
- dqcms680 comparesig 12 12 -> 0
- dqcms681 comparesig 12 12.0 -> 0
- dqcms682 comparesig 12 12.00 -> 0
- dqcms683 comparesig 12 12.000 -> 0
- dqcms684 comparesig 12 12.0000 -> 0
- dqcms685 comparesig 12 12.00000 -> 0
- dqcms686 comparesig 12 12.000000 -> 0
- dqcms687 comparesig 12 12.0000000 -> 0
- dqcms688 comparesig 12 12.00000000 -> 0
- dqcms689 comparesig 12 12.000000000 -> 0
- dqcms690 comparesig 12 12 -> 0
- dqcms691 comparesig 12.0 12 -> 0
- dqcms692 comparesig 12.00 12 -> 0
- dqcms693 comparesig 12.000 12 -> 0
- dqcms694 comparesig 12.0000 12 -> 0
- dqcms695 comparesig 12.00000 12 -> 0
- dqcms696 comparesig 12.000000 12 -> 0
- dqcms697 comparesig 12.0000000 12 -> 0
- dqcms698 comparesig 12.00000000 12 -> 0
- dqcms699 comparesig 12.000000000 12 -> 0
- -- first, second, & last digit
- dqcms700 comparesig 1234567899999999999999999990123456 1234567899999999999999999990123455 -> 1
- dqcms701 comparesig 1234567899999999999999999990123456 1234567899999999999999999990123456 -> 0
- dqcms702 comparesig 1234567899999999999999999990123456 1234567899999999999999999990123457 -> -1
- dqcms703 comparesig 1234567899999999999999999990123456 0234567899999999999999999990123456 -> 1
- dqcms704 comparesig 1234567899999999999999999990123456 1234567899999999999999999990123456 -> 0
- dqcms705 comparesig 1234567899999999999999999990123456 2234567899999999999999999990123456 -> -1
- dqcms706 comparesig 1134567899999999999999999990123456 1034567899999999999999999990123456 -> 1
- dqcms707 comparesig 1134567899999999999999999990123456 1134567899999999999999999990123456 -> 0
- dqcms708 comparesig 1134567899999999999999999990123456 1234567899999999999999999990123456 -> -1
- -- miscellaneous
- dqcms721 comparesig 12345678000 1 -> 1
- dqcms722 comparesig 1 12345678000 -> -1
- dqcms723 comparesig 1234567800 1 -> 1
- dqcms724 comparesig 1 1234567800 -> -1
- dqcms725 comparesig 1234567890 1 -> 1
- dqcms726 comparesig 1 1234567890 -> -1
- dqcms727 comparesig 1234567891 1 -> 1
- dqcms728 comparesig 1 1234567891 -> -1
- dqcms729 comparesig 12345678901 1 -> 1
- dqcms730 comparesig 1 12345678901 -> -1
- dqcms731 comparesig 1234567896 1 -> 1
- dqcms732 comparesig 1 1234567896 -> -1
- -- residue cases at lower precision
- dqcms740 comparesig 1 0.9999999 -> 1
- dqcms741 comparesig 1 0.999999 -> 1
- dqcms742 comparesig 1 0.99999 -> 1
- dqcms743 comparesig 1 1.0000 -> 0
- dqcms744 comparesig 1 1.00001 -> -1
- dqcms745 comparesig 1 1.000001 -> -1
- dqcms746 comparesig 1 1.0000001 -> -1
- dqcms750 comparesig 0.9999999 1 -> -1
- dqcms751 comparesig 0.999999 1 -> -1
- dqcms752 comparesig 0.99999 1 -> -1
- dqcms753 comparesig 1.0000 1 -> 0
- dqcms754 comparesig 1.00001 1 -> 1
- dqcms755 comparesig 1.000001 1 -> 1
- dqcms756 comparesig 1.0000001 1 -> 1
- -- Specials
- dqcms780 comparesig Inf -Inf -> 1
- dqcms781 comparesig Inf -1000 -> 1
- dqcms782 comparesig Inf -1 -> 1
- dqcms783 comparesig Inf -0 -> 1
- dqcms784 comparesig Inf 0 -> 1
- dqcms785 comparesig Inf 1 -> 1
- dqcms786 comparesig Inf 1000 -> 1
- dqcms787 comparesig Inf Inf -> 0
- dqcms788 comparesig -1000 Inf -> -1
- dqcms789 comparesig -Inf Inf -> -1
- dqcms790 comparesig -1 Inf -> -1
- dqcms791 comparesig -0 Inf -> -1
- dqcms792 comparesig 0 Inf -> -1
- dqcms793 comparesig 1 Inf -> -1
- dqcms794 comparesig 1000 Inf -> -1
- dqcms795 comparesig Inf Inf -> 0
- dqcms800 comparesig -Inf -Inf -> 0
- dqcms801 comparesig -Inf -1000 -> -1
- dqcms802 comparesig -Inf -1 -> -1
- dqcms803 comparesig -Inf -0 -> -1
- dqcms804 comparesig -Inf 0 -> -1
- dqcms805 comparesig -Inf 1 -> -1
- dqcms806 comparesig -Inf 1000 -> -1
- dqcms807 comparesig -Inf Inf -> -1
- dqcms808 comparesig -Inf -Inf -> 0
- dqcms809 comparesig -1000 -Inf -> 1
- dqcms810 comparesig -1 -Inf -> 1
- dqcms811 comparesig -0 -Inf -> 1
- dqcms812 comparesig 0 -Inf -> 1
- dqcms813 comparesig 1 -Inf -> 1
- dqcms814 comparesig 1000 -Inf -> 1
- dqcms815 comparesig Inf -Inf -> 1
- dqcms821 comparesig NaN -Inf -> NaN Invalid_operation
- dqcms822 comparesig NaN -1000 -> NaN Invalid_operation
- dqcms823 comparesig NaN -1 -> NaN Invalid_operation
- dqcms824 comparesig NaN -0 -> NaN Invalid_operation
- dqcms825 comparesig NaN 0 -> NaN Invalid_operation
- dqcms826 comparesig NaN 1 -> NaN Invalid_operation
- dqcms827 comparesig NaN 1000 -> NaN Invalid_operation
- dqcms828 comparesig NaN Inf -> NaN Invalid_operation
- dqcms829 comparesig NaN NaN -> NaN Invalid_operation
- dqcms830 comparesig -Inf NaN -> NaN Invalid_operation
- dqcms831 comparesig -1000 NaN -> NaN Invalid_operation
- dqcms832 comparesig -1 NaN -> NaN Invalid_operation
- dqcms833 comparesig -0 NaN -> NaN Invalid_operation
- dqcms834 comparesig 0 NaN -> NaN Invalid_operation
- dqcms835 comparesig 1 NaN -> NaN Invalid_operation
- dqcms836 comparesig 1000 NaN -> NaN Invalid_operation
- dqcms837 comparesig Inf NaN -> NaN Invalid_operation
- dqcms838 comparesig -NaN -NaN -> -NaN Invalid_operation
- dqcms839 comparesig +NaN -NaN -> NaN Invalid_operation
- dqcms840 comparesig -NaN +NaN -> -NaN Invalid_operation
- dqcms841 comparesig sNaN -Inf -> NaN Invalid_operation
- dqcms842 comparesig sNaN -1000 -> NaN Invalid_operation
- dqcms843 comparesig sNaN -1 -> NaN Invalid_operation
- dqcms844 comparesig sNaN -0 -> NaN Invalid_operation
- dqcms845 comparesig sNaN 0 -> NaN Invalid_operation
- dqcms846 comparesig sNaN 1 -> NaN Invalid_operation
- dqcms847 comparesig sNaN 1000 -> NaN Invalid_operation
- dqcms848 comparesig sNaN NaN -> NaN Invalid_operation
- dqcms849 comparesig sNaN sNaN -> NaN Invalid_operation
- dqcms850 comparesig NaN sNaN -> NaN Invalid_operation
- dqcms851 comparesig -Inf sNaN -> NaN Invalid_operation
- dqcms852 comparesig -1000 sNaN -> NaN Invalid_operation
- dqcms853 comparesig -1 sNaN -> NaN Invalid_operation
- dqcms854 comparesig -0 sNaN -> NaN Invalid_operation
- dqcms855 comparesig 0 sNaN -> NaN Invalid_operation
- dqcms856 comparesig 1 sNaN -> NaN Invalid_operation
- dqcms857 comparesig 1000 sNaN -> NaN Invalid_operation
- dqcms858 comparesig Inf sNaN -> NaN Invalid_operation
- dqcms859 comparesig NaN sNaN -> NaN Invalid_operation
- -- propagating NaNs
- dqcms860 comparesig NaN9 -Inf -> NaN9 Invalid_operation
- dqcms861 comparesig NaN8 999 -> NaN8 Invalid_operation
- dqcms862 comparesig NaN77 Inf -> NaN77 Invalid_operation
- dqcms863 comparesig -NaN67 NaN5 -> -NaN67 Invalid_operation
- dqcms864 comparesig -Inf -NaN4 -> -NaN4 Invalid_operation
- dqcms865 comparesig -999 -NaN33 -> -NaN33 Invalid_operation
- dqcms866 comparesig Inf NaN2 -> NaN2 Invalid_operation
- dqcms867 comparesig -NaN41 -NaN42 -> -NaN41 Invalid_operation
- dqcms868 comparesig +NaN41 -NaN42 -> NaN41 Invalid_operation
- dqcms869 comparesig -NaN41 +NaN42 -> -NaN41 Invalid_operation
- dqcms870 comparesig +NaN41 +NaN42 -> NaN41 Invalid_operation
- dqcms871 comparesig -sNaN99 -Inf -> -NaN99 Invalid_operation
- dqcms872 comparesig sNaN98 -11 -> NaN98 Invalid_operation
- dqcms873 comparesig sNaN97 NaN -> NaN97 Invalid_operation
- dqcms874 comparesig sNaN16 sNaN94 -> NaN16 Invalid_operation
- dqcms875 comparesig NaN85 sNaN83 -> NaN83 Invalid_operation
- dqcms876 comparesig -Inf sNaN92 -> NaN92 Invalid_operation
- dqcms877 comparesig 088 sNaN81 -> NaN81 Invalid_operation
- dqcms878 comparesig Inf sNaN90 -> NaN90 Invalid_operation
- dqcms879 comparesig NaN -sNaN89 -> -NaN89 Invalid_operation
- -- wide range
- dqcms880 comparesig +1.23456789012345E-0 9E+6144 -> -1
- dqcms881 comparesig 9E+6144 +1.23456789012345E-0 -> 1
- dqcms882 comparesig +0.100 9E-6143 -> 1
- dqcms883 comparesig 9E-6143 +0.100 -> -1
- dqcms885 comparesig -1.23456789012345E-0 9E+6144 -> -1
- dqcms886 comparesig 9E+6144 -1.23456789012345E-0 -> 1
- dqcms887 comparesig -0.100 9E-6143 -> -1
- dqcms888 comparesig 9E-6143 -0.100 -> 1
- -- signs
- dqcms901 comparesig 1e+77 1e+11 -> 1
- dqcms902 comparesig 1e+77 -1e+11 -> 1
- dqcms903 comparesig -1e+77 1e+11 -> -1
- dqcms904 comparesig -1e+77 -1e+11 -> -1
- dqcms905 comparesig 1e-77 1e-11 -> -1
- dqcms906 comparesig 1e-77 -1e-11 -> 1
- dqcms907 comparesig -1e-77 1e-11 -> -1
- dqcms908 comparesig -1e-77 -1e-11 -> 1
- -- Null tests
- dqcms990 comparesig 10 # -> NaN Invalid_operation
- dqcms991 comparesig # 10 -> NaN Invalid_operation
|