]> git.proxmox.com Git - mirror_edk2.git/blobdiff - AppPkg/Applications/Python/Python-2.7.2/Lib/test/decimaltestdata/dqMultiply.decTest
edk2: Remove AppPkg, StdLib, StdLibPrivateInternalFiles
[mirror_edk2.git] / AppPkg / Applications / Python / Python-2.7.2 / Lib / test / decimaltestdata / dqMultiply.decTest
diff --git a/AppPkg/Applications/Python/Python-2.7.2/Lib/test/decimaltestdata/dqMultiply.decTest b/AppPkg/Applications/Python/Python-2.7.2/Lib/test/decimaltestdata/dqMultiply.decTest
deleted file mode 100644 (file)
index 676c1f5..0000000
+++ /dev/null
@@ -1,589 +0,0 @@
-------------------------------------------------------------------------\r
--- dqMultiply.decTest -- decQuad multiplication                       --\r
--- Copyright (c) IBM Corporation, 1981, 2008.  All rights reserved.   --\r
-------------------------------------------------------------------------\r
--- Please see the document "General Decimal Arithmetic Testcases"     --\r
--- at http://www2.hursley.ibm.com/decimal for the description of      --\r
--- these testcases.                                                   --\r
---                                                                    --\r
--- These testcases are experimental ('beta' versions), and they       --\r
--- may contain errors.  They are offered on an as-is basis.  In       --\r
--- particular, achieving the same results as the tests here is not    --\r
--- a guarantee that an implementation complies with any Standard      --\r
--- or specification.  The tests are not exhaustive.                   --\r
---                                                                    --\r
--- Please send comments, suggestions, and corrections to the author:  --\r
---   Mike Cowlishaw, IBM Fellow                                       --\r
---   IBM UK, PO Box 31, Birmingham Road, Warwick CV34 5JL, UK         --\r
---   mfc@uk.ibm.com                                                   --\r
-------------------------------------------------------------------------\r
-version: 2.59\r
-\r
--- This set of tests are for decQuads only; all arguments are\r
--- representable in a decQuad\r
-extended:    1\r
-clamp:       1\r
-precision:   34\r
-maxExponent: 6144\r
-minExponent: -6143\r
-rounding:    half_even\r
-\r
--- sanity checks\r
-dqmul000 multiply 2      2 -> 4\r
-dqmul001 multiply 2      3 -> 6\r
-dqmul002 multiply 5      1 -> 5\r
-dqmul003 multiply 5      2 -> 10\r
-dqmul004 multiply 1.20   2 -> 2.40\r
-dqmul005 multiply 1.20   0 -> 0.00\r
-dqmul006 multiply 1.20  -2 -> -2.40\r
-dqmul007 multiply -1.20  2 -> -2.40\r
-dqmul008 multiply -1.20  0 -> -0.00\r
-dqmul009 multiply -1.20 -2 -> 2.40\r
-dqmul010 multiply 5.09 7.1 -> 36.139\r
-dqmul011 multiply 2.5    4 -> 10.0\r
-dqmul012 multiply 2.50   4 -> 10.00\r
-dqmul013 multiply 1.23456789 1.0000000000000000000000000000 -> 1.234567890000000000000000000000000 Rounded\r
-dqmul015 multiply 2.50   4 -> 10.00\r
-dqmul016 multiply  9.99999999999999999  9.99999999999999999 ->  99.99999999999999980000000000000000 Inexact Rounded\r
-dqmul017 multiply  9.99999999999999999 -9.99999999999999999 -> -99.99999999999999980000000000000000 Inexact Rounded\r
-dqmul018 multiply -9.99999999999999999  9.99999999999999999 -> -99.99999999999999980000000000000000 Inexact Rounded\r
-dqmul019 multiply -9.99999999999999999 -9.99999999999999999 ->  99.99999999999999980000000000000000 Inexact Rounded\r
-\r
--- zeros, etc.\r
-dqmul021 multiply  0      0     ->  0\r
-dqmul022 multiply  0     -0     -> -0\r
-dqmul023 multiply -0      0     -> -0\r
-dqmul024 multiply -0     -0     ->  0\r
-dqmul025 multiply -0.0   -0.0   ->  0.00\r
-dqmul026 multiply -0.0   -0.0   ->  0.00\r
-dqmul027 multiply -0.0   -0.0   ->  0.00\r
-dqmul028 multiply -0.0   -0.0   ->  0.00\r
-dqmul030 multiply  5.00   1E-3  ->  0.00500\r
-dqmul031 multiply  00.00  0.000 ->  0.00000\r
-dqmul032 multiply  00.00  0E-3  ->  0.00000     -- rhs is 0\r
-dqmul033 multiply  0E-3   00.00 ->  0.00000     -- lhs is 0\r
-dqmul034 multiply -5.00   1E-3  -> -0.00500\r
-dqmul035 multiply -00.00  0.000 -> -0.00000\r
-dqmul036 multiply -00.00  0E-3  -> -0.00000     -- rhs is 0\r
-dqmul037 multiply -0E-3   00.00 -> -0.00000     -- lhs is 0\r
-dqmul038 multiply  5.00  -1E-3  -> -0.00500\r
-dqmul039 multiply  00.00 -0.000 -> -0.00000\r
-dqmul040 multiply  00.00 -0E-3  -> -0.00000     -- rhs is 0\r
-dqmul041 multiply  0E-3  -00.00 -> -0.00000     -- lhs is 0\r
-dqmul042 multiply -5.00  -1E-3  ->  0.00500\r
-dqmul043 multiply -00.00 -0.000 ->  0.00000\r
-dqmul044 multiply -00.00 -0E-3  ->  0.00000     -- rhs is 0\r
-dqmul045 multiply -0E-3  -00.00 ->  0.00000     -- lhs is 0\r
-\r
--- examples from decarith\r
-dqmul050 multiply 1.20 3        -> 3.60\r
-dqmul051 multiply 7    3        -> 21\r
-dqmul052 multiply 0.9  0.8      -> 0.72\r
-dqmul053 multiply 0.9  -0       -> -0.0\r
-dqmul054 multiply 654321 654321 -> 428135971041\r
-\r
-dqmul060 multiply 123.45 1e7  ->  1.2345E+9\r
-dqmul061 multiply 123.45 1e8  ->  1.2345E+10\r
-dqmul062 multiply 123.45 1e+9 ->  1.2345E+11\r
-dqmul063 multiply 123.45 1e10 ->  1.2345E+12\r
-dqmul064 multiply 123.45 1e11 ->  1.2345E+13\r
-dqmul065 multiply 123.45 1e12 ->  1.2345E+14\r
-dqmul066 multiply 123.45 1e13 ->  1.2345E+15\r
-\r
-\r
--- test some intermediate lengths\r
---                    1234567890123456\r
-dqmul080 multiply 0.1 1230123456456789     -> 123012345645678.9\r
-dqmul084 multiply 0.1 1230123456456789     -> 123012345645678.9\r
-dqmul090 multiply 1230123456456789     0.1 -> 123012345645678.9\r
-dqmul094 multiply 1230123456456789     0.1 -> 123012345645678.9\r
-\r
--- test some more edge cases and carries\r
-dqmul101 multiply 9 9   -> 81\r
-dqmul102 multiply 9 90   -> 810\r
-dqmul103 multiply 9 900   -> 8100\r
-dqmul104 multiply 9 9000   -> 81000\r
-dqmul105 multiply 9 90000   -> 810000\r
-dqmul106 multiply 9 900000   -> 8100000\r
-dqmul107 multiply 9 9000000   -> 81000000\r
-dqmul108 multiply 9 90000000   -> 810000000\r
-dqmul109 multiply 9 900000000   -> 8100000000\r
-dqmul110 multiply 9 9000000000   -> 81000000000\r
-dqmul111 multiply 9 90000000000   -> 810000000000\r
-dqmul112 multiply 9 900000000000   -> 8100000000000\r
-dqmul113 multiply 9 9000000000000   -> 81000000000000\r
-dqmul114 multiply 9 90000000000000   -> 810000000000000\r
-dqmul115 multiply 9 900000000000000   -> 8100000000000000\r
---dqmul116 multiply 9 9000000000000000   -> 81000000000000000\r
---dqmul117 multiply 9 90000000000000000   -> 810000000000000000\r
---dqmul118 multiply 9 900000000000000000   -> 8100000000000000000\r
---dqmul119 multiply 9 9000000000000000000   -> 81000000000000000000\r
---dqmul120 multiply 9 90000000000000000000   -> 810000000000000000000\r
---dqmul121 multiply 9 900000000000000000000   -> 8100000000000000000000\r
---dqmul122 multiply 9 9000000000000000000000   -> 81000000000000000000000\r
---dqmul123 multiply 9 90000000000000000000000   -> 810000000000000000000000\r
--- test some more edge cases without carries\r
-dqmul131 multiply 3 3   -> 9\r
-dqmul132 multiply 3 30   -> 90\r
-dqmul133 multiply 3 300   -> 900\r
-dqmul134 multiply 3 3000   -> 9000\r
-dqmul135 multiply 3 30000   -> 90000\r
-dqmul136 multiply 3 300000   -> 900000\r
-dqmul137 multiply 3 3000000   -> 9000000\r
-dqmul138 multiply 3 30000000   -> 90000000\r
-dqmul139 multiply 3 300000000   -> 900000000\r
-dqmul140 multiply 3 3000000000   -> 9000000000\r
-dqmul141 multiply 3 30000000000   -> 90000000000\r
-dqmul142 multiply 3 300000000000   -> 900000000000\r
-dqmul143 multiply 3 3000000000000   -> 9000000000000\r
-dqmul144 multiply 3 30000000000000   -> 90000000000000\r
-dqmul145 multiply 3 300000000000000   -> 900000000000000\r
-dqmul146 multiply 3 3000000000000000   -> 9000000000000000\r
-dqmul147 multiply 3 30000000000000000   -> 90000000000000000\r
-dqmul148 multiply 3 300000000000000000   -> 900000000000000000\r
-dqmul149 multiply 3 3000000000000000000   -> 9000000000000000000\r
-dqmul150 multiply 3 30000000000000000000   -> 90000000000000000000\r
-dqmul151 multiply 3 300000000000000000000   -> 900000000000000000000\r
-dqmul152 multiply 3 3000000000000000000000   -> 9000000000000000000000\r
-dqmul153 multiply 3 30000000000000000000000   -> 90000000000000000000000\r
-\r
-dqmul263 multiply 30269.587755640502150977251770554 4.8046009735990873395936309640543 -> 145433.2908011933696719165119928296 Inexact Rounded\r
-\r
--- test some edge cases with exact rounding\r
-dqmul301 multiply 900000000000000000 9   -> 8100000000000000000\r
-dqmul302 multiply 900000000000000000 90   -> 81000000000000000000\r
-dqmul303 multiply 900000000000000000 900   -> 810000000000000000000\r
-dqmul304 multiply 900000000000000000 9000   -> 8100000000000000000000\r
-dqmul305 multiply 900000000000000000 90000   -> 81000000000000000000000\r
-dqmul306 multiply 900000000000000000 900000   -> 810000000000000000000000\r
-dqmul307 multiply 900000000000000000 9000000   -> 8100000000000000000000000\r
-dqmul308 multiply 900000000000000000 90000000   -> 81000000000000000000000000\r
-dqmul309 multiply 900000000000000000 900000000   -> 810000000000000000000000000\r
-dqmul310 multiply 900000000000000000 9000000000   -> 8100000000000000000000000000\r
-dqmul311 multiply 900000000000000000 90000000000   -> 81000000000000000000000000000\r
-dqmul312 multiply 900000000000000000 900000000000   -> 810000000000000000000000000000\r
-dqmul313 multiply 900000000000000000 9000000000000   -> 8100000000000000000000000000000\r
-dqmul314 multiply 900000000000000000 90000000000000   -> 81000000000000000000000000000000\r
-dqmul315 multiply 900000000000000000 900000000000000   -> 810000000000000000000000000000000\r
-dqmul316 multiply 900000000000000000 9000000000000000   -> 8100000000000000000000000000000000\r
-dqmul317 multiply 9000000000000000000 9000000000000000   -> 8.100000000000000000000000000000000E+34  Rounded\r
-dqmul318 multiply 90000000000000000000 9000000000000000   -> 8.100000000000000000000000000000000E+35  Rounded\r
-dqmul319 multiply 900000000000000000000 9000000000000000   -> 8.100000000000000000000000000000000E+36  Rounded\r
-dqmul320 multiply 9000000000000000000000 9000000000000000   -> 8.100000000000000000000000000000000E+37  Rounded\r
-dqmul321 multiply 90000000000000000000000 9000000000000000   -> 8.100000000000000000000000000000000E+38  Rounded\r
-dqmul322 multiply 900000000000000000000000 9000000000000000   -> 8.100000000000000000000000000000000E+39  Rounded\r
-dqmul323 multiply 9000000000000000000000000 9000000000000000   -> 8.100000000000000000000000000000000E+40  Rounded\r
-\r
--- tryzeros cases\r
-dqmul504  multiply  0E-4260 1000E-4260  -> 0E-6176 Clamped\r
-dqmul505  multiply  100E+4260 0E+4260   -> 0E+6111 Clamped\r
-\r
--- mixed with zeros\r
-dqmul541 multiply  0    -1     -> -0\r
-dqmul542 multiply -0    -1     ->  0\r
-dqmul543 multiply  0     1     ->  0\r
-dqmul544 multiply -0     1     -> -0\r
-dqmul545 multiply -1     0     -> -0\r
-dqmul546 multiply -1    -0     ->  0\r
-dqmul547 multiply  1     0     ->  0\r
-dqmul548 multiply  1    -0     -> -0\r
-\r
-dqmul551 multiply  0.0  -1     -> -0.0\r
-dqmul552 multiply -0.0  -1     ->  0.0\r
-dqmul553 multiply  0.0   1     ->  0.0\r
-dqmul554 multiply -0.0   1     -> -0.0\r
-dqmul555 multiply -1.0   0     -> -0.0\r
-dqmul556 multiply -1.0  -0     ->  0.0\r
-dqmul557 multiply  1.0   0     ->  0.0\r
-dqmul558 multiply  1.0  -0     -> -0.0\r
-\r
-dqmul561 multiply  0    -1.0   -> -0.0\r
-dqmul562 multiply -0    -1.0   ->  0.0\r
-dqmul563 multiply  0     1.0   ->  0.0\r
-dqmul564 multiply -0     1.0   -> -0.0\r
-dqmul565 multiply -1     0.0   -> -0.0\r
-dqmul566 multiply -1    -0.0   ->  0.0\r
-dqmul567 multiply  1     0.0   ->  0.0\r
-dqmul568 multiply  1    -0.0   -> -0.0\r
-\r
-dqmul571 multiply  0.0  -1.0   -> -0.00\r
-dqmul572 multiply -0.0  -1.0   ->  0.00\r
-dqmul573 multiply  0.0   1.0   ->  0.00\r
-dqmul574 multiply -0.0   1.0   -> -0.00\r
-dqmul575 multiply -1.0   0.0   -> -0.00\r
-dqmul576 multiply -1.0  -0.0   ->  0.00\r
-dqmul577 multiply  1.0   0.0   ->  0.00\r
-dqmul578 multiply  1.0  -0.0   -> -0.00\r
-\r
-\r
--- Specials\r
-dqmul580 multiply  Inf  -Inf   -> -Infinity\r
-dqmul581 multiply  Inf  -1000  -> -Infinity\r
-dqmul582 multiply  Inf  -1     -> -Infinity\r
-dqmul583 multiply  Inf  -0     ->  NaN  Invalid_operation\r
-dqmul584 multiply  Inf   0     ->  NaN  Invalid_operation\r
-dqmul585 multiply  Inf   1     ->  Infinity\r
-dqmul586 multiply  Inf   1000  ->  Infinity\r
-dqmul587 multiply  Inf   Inf   ->  Infinity\r
-dqmul588 multiply -1000  Inf   -> -Infinity\r
-dqmul589 multiply -Inf   Inf   -> -Infinity\r
-dqmul590 multiply -1     Inf   -> -Infinity\r
-dqmul591 multiply -0     Inf   ->  NaN  Invalid_operation\r
-dqmul592 multiply  0     Inf   ->  NaN  Invalid_operation\r
-dqmul593 multiply  1     Inf   ->  Infinity\r
-dqmul594 multiply  1000  Inf   ->  Infinity\r
-dqmul595 multiply  Inf   Inf   ->  Infinity\r
-\r
-dqmul600 multiply -Inf  -Inf   ->  Infinity\r
-dqmul601 multiply -Inf  -1000  ->  Infinity\r
-dqmul602 multiply -Inf  -1     ->  Infinity\r
-dqmul603 multiply -Inf  -0     ->  NaN  Invalid_operation\r
-dqmul604 multiply -Inf   0     ->  NaN  Invalid_operation\r
-dqmul605 multiply -Inf   1     -> -Infinity\r
-dqmul606 multiply -Inf   1000  -> -Infinity\r
-dqmul607 multiply -Inf   Inf   -> -Infinity\r
-dqmul608 multiply -1000  Inf   -> -Infinity\r
-dqmul609 multiply -Inf  -Inf   ->  Infinity\r
-dqmul610 multiply -1    -Inf   ->  Infinity\r
-dqmul611 multiply -0    -Inf   ->  NaN  Invalid_operation\r
-dqmul612 multiply  0    -Inf   ->  NaN  Invalid_operation\r
-dqmul613 multiply  1    -Inf   -> -Infinity\r
-dqmul614 multiply  1000 -Inf   -> -Infinity\r
-dqmul615 multiply  Inf  -Inf   -> -Infinity\r
-\r
-dqmul621 multiply  NaN -Inf    ->  NaN\r
-dqmul622 multiply  NaN -1000   ->  NaN\r
-dqmul623 multiply  NaN -1      ->  NaN\r
-dqmul624 multiply  NaN -0      ->  NaN\r
-dqmul625 multiply  NaN  0      ->  NaN\r
-dqmul626 multiply  NaN  1      ->  NaN\r
-dqmul627 multiply  NaN  1000   ->  NaN\r
-dqmul628 multiply  NaN  Inf    ->  NaN\r
-dqmul629 multiply  NaN  NaN    ->  NaN\r
-dqmul630 multiply -Inf  NaN    ->  NaN\r
-dqmul631 multiply -1000 NaN    ->  NaN\r
-dqmul632 multiply -1    NaN    ->  NaN\r
-dqmul633 multiply -0    NaN    ->  NaN\r
-dqmul634 multiply  0    NaN    ->  NaN\r
-dqmul635 multiply  1    NaN    ->  NaN\r
-dqmul636 multiply  1000 NaN    ->  NaN\r
-dqmul637 multiply  Inf  NaN    ->  NaN\r
-\r
-dqmul641 multiply  sNaN -Inf   ->  NaN  Invalid_operation\r
-dqmul642 multiply  sNaN -1000  ->  NaN  Invalid_operation\r
-dqmul643 multiply  sNaN -1     ->  NaN  Invalid_operation\r
-dqmul644 multiply  sNaN -0     ->  NaN  Invalid_operation\r
-dqmul645 multiply  sNaN  0     ->  NaN  Invalid_operation\r
-dqmul646 multiply  sNaN  1     ->  NaN  Invalid_operation\r
-dqmul647 multiply  sNaN  1000  ->  NaN  Invalid_operation\r
-dqmul648 multiply  sNaN  NaN   ->  NaN  Invalid_operation\r
-dqmul649 multiply  sNaN sNaN   ->  NaN  Invalid_operation\r
-dqmul650 multiply  NaN  sNaN   ->  NaN  Invalid_operation\r
-dqmul651 multiply -Inf  sNaN   ->  NaN  Invalid_operation\r
-dqmul652 multiply -1000 sNaN   ->  NaN  Invalid_operation\r
-dqmul653 multiply -1    sNaN   ->  NaN  Invalid_operation\r
-dqmul654 multiply -0    sNaN   ->  NaN  Invalid_operation\r
-dqmul655 multiply  0    sNaN   ->  NaN  Invalid_operation\r
-dqmul656 multiply  1    sNaN   ->  NaN  Invalid_operation\r
-dqmul657 multiply  1000 sNaN   ->  NaN  Invalid_operation\r
-dqmul658 multiply  Inf  sNaN   ->  NaN  Invalid_operation\r
-dqmul659 multiply  NaN  sNaN   ->  NaN  Invalid_operation\r
-\r
--- propagating NaNs\r
-dqmul661 multiply  NaN9 -Inf   ->  NaN9\r
-dqmul662 multiply  NaN8  999   ->  NaN8\r
-dqmul663 multiply  NaN71 Inf   ->  NaN71\r
-dqmul664 multiply  NaN6  NaN5  ->  NaN6\r
-dqmul665 multiply -Inf   NaN4  ->  NaN4\r
-dqmul666 multiply -999   NaN33 ->  NaN33\r
-dqmul667 multiply  Inf   NaN2  ->  NaN2\r
-\r
-dqmul671 multiply  sNaN99 -Inf    ->  NaN99 Invalid_operation\r
-dqmul672 multiply  sNaN98 -11     ->  NaN98 Invalid_operation\r
-dqmul673 multiply  sNaN97  NaN    ->  NaN97 Invalid_operation\r
-dqmul674 multiply  sNaN16 sNaN94  ->  NaN16 Invalid_operation\r
-dqmul675 multiply  NaN95  sNaN93  ->  NaN93 Invalid_operation\r
-dqmul676 multiply -Inf    sNaN92  ->  NaN92 Invalid_operation\r
-dqmul677 multiply  088    sNaN91  ->  NaN91 Invalid_operation\r
-dqmul678 multiply  Inf    sNaN90  ->  NaN90 Invalid_operation\r
-dqmul679 multiply  NaN    sNaN89  ->  NaN89 Invalid_operation\r
-\r
-dqmul681 multiply -NaN9 -Inf   -> -NaN9\r
-dqmul682 multiply -NaN8  999   -> -NaN8\r
-dqmul683 multiply -NaN71 Inf   -> -NaN71\r
-dqmul684 multiply -NaN6 -NaN5  -> -NaN6\r
-dqmul685 multiply -Inf  -NaN4  -> -NaN4\r
-dqmul686 multiply -999  -NaN33 -> -NaN33\r
-dqmul687 multiply  Inf  -NaN2  -> -NaN2\r
-\r
-dqmul691 multiply -sNaN99 -Inf    -> -NaN99 Invalid_operation\r
-dqmul692 multiply -sNaN98 -11     -> -NaN98 Invalid_operation\r
-dqmul693 multiply -sNaN97  NaN    -> -NaN97 Invalid_operation\r
-dqmul694 multiply -sNaN16 -sNaN94 -> -NaN16 Invalid_operation\r
-dqmul695 multiply -NaN95  -sNaN93 -> -NaN93 Invalid_operation\r
-dqmul696 multiply -Inf    -sNaN92 -> -NaN92 Invalid_operation\r
-dqmul697 multiply  088    -sNaN91 -> -NaN91 Invalid_operation\r
-dqmul698 multiply  Inf    -sNaN90 -> -NaN90 Invalid_operation\r
-dqmul699 multiply -NaN    -sNaN89 -> -NaN89 Invalid_operation\r
-\r
-dqmul701 multiply -NaN  -Inf   -> -NaN\r
-dqmul702 multiply -NaN   999   -> -NaN\r
-dqmul703 multiply -NaN   Inf   -> -NaN\r
-dqmul704 multiply -NaN  -NaN   -> -NaN\r
-dqmul705 multiply -Inf  -NaN0  -> -NaN\r
-dqmul706 multiply -999  -NaN   -> -NaN\r
-dqmul707 multiply  Inf  -NaN   -> -NaN\r
-\r
-dqmul711 multiply -sNaN   -Inf    -> -NaN Invalid_operation\r
-dqmul712 multiply -sNaN   -11     -> -NaN Invalid_operation\r
-dqmul713 multiply -sNaN00  NaN    -> -NaN Invalid_operation\r
-dqmul714 multiply -sNaN   -sNaN   -> -NaN Invalid_operation\r
-dqmul715 multiply -NaN    -sNaN   -> -NaN Invalid_operation\r
-dqmul716 multiply -Inf    -sNaN   -> -NaN Invalid_operation\r
-dqmul717 multiply  088    -sNaN   -> -NaN Invalid_operation\r
-dqmul718 multiply  Inf    -sNaN   -> -NaN Invalid_operation\r
-dqmul719 multiply -NaN    -sNaN   -> -NaN Invalid_operation\r
-\r
--- overflow and underflow tests .. note subnormal results\r
--- signs\r
-dqmul751 multiply  1e+4277  1e+3311 ->  Infinity Overflow Inexact Rounded\r
-dqmul752 multiply  1e+4277 -1e+3311 -> -Infinity Overflow Inexact Rounded\r
-dqmul753 multiply -1e+4277  1e+3311 -> -Infinity Overflow Inexact Rounded\r
-dqmul754 multiply -1e+4277 -1e+3311 ->  Infinity Overflow Inexact Rounded\r
-dqmul755 multiply  1e-4277  1e-3311 ->  0E-6176 Underflow Subnormal Inexact Rounded Clamped\r
-dqmul756 multiply  1e-4277 -1e-3311 -> -0E-6176 Underflow Subnormal Inexact Rounded Clamped\r
-dqmul757 multiply -1e-4277  1e-3311 -> -0E-6176 Underflow Subnormal Inexact Rounded Clamped\r
-dqmul758 multiply -1e-4277 -1e-3311 ->  0E-6176 Underflow Subnormal Inexact Rounded Clamped\r
-\r
--- 'subnormal' boundary (all hard underflow or overflow in base arithemtic)\r
-dqmul760 multiply 1e-6069 1e-101 -> 1E-6170 Subnormal\r
-dqmul761 multiply 1e-6069 1e-102 -> 1E-6171 Subnormal\r
-dqmul762 multiply 1e-6069 1e-103 -> 1E-6172 Subnormal\r
-dqmul763 multiply 1e-6069 1e-104 -> 1E-6173 Subnormal\r
-dqmul764 multiply 1e-6069 1e-105 -> 1E-6174 Subnormal\r
-dqmul765 multiply 1e-6069 1e-106 -> 1E-6175 Subnormal\r
-dqmul766 multiply 1e-6069 1e-107 -> 1E-6176 Subnormal\r
-dqmul767 multiply 1e-6069 1e-108 -> 0E-6176 Underflow Subnormal Inexact Rounded Clamped\r
-dqmul768 multiply 1e-6069 1e-109 -> 0E-6176 Underflow Subnormal Inexact Rounded Clamped\r
-dqmul769 multiply 1e-6069 1e-110 -> 0E-6176 Underflow Subnormal Inexact Rounded Clamped\r
--- [no equivalent of 'subnormal' for overflow]\r
-dqmul770 multiply 1e+40 1e+6101 -> 1.000000000000000000000000000000E+6141 Clamped\r
-dqmul771 multiply 1e+40 1e+6102 -> 1.0000000000000000000000000000000E+6142  Clamped\r
-dqmul772 multiply 1e+40 1e+6103 -> 1.00000000000000000000000000000000E+6143  Clamped\r
-dqmul773 multiply 1e+40 1e+6104 -> 1.000000000000000000000000000000000E+6144  Clamped\r
-dqmul774 multiply 1e+40 1e+6105 -> Infinity Overflow Inexact Rounded\r
-dqmul775 multiply 1e+40 1e+6106 -> Infinity Overflow Inexact Rounded\r
-dqmul776 multiply 1e+40 1e+6107 -> Infinity Overflow Inexact Rounded\r
-dqmul777 multiply 1e+40 1e+6108 -> Infinity Overflow Inexact Rounded\r
-dqmul778 multiply 1e+40 1e+6109 -> Infinity Overflow Inexact Rounded\r
-dqmul779 multiply 1e+40 1e+6110 -> Infinity Overflow Inexact Rounded\r
-\r
-dqmul801 multiply  1.0000E-6172  1     -> 1.0000E-6172 Subnormal\r
-dqmul802 multiply  1.000E-6172   1e-1  -> 1.000E-6173  Subnormal\r
-dqmul803 multiply  1.00E-6172    1e-2  -> 1.00E-6174   Subnormal\r
-dqmul804 multiply  1.0E-6172     1e-3  -> 1.0E-6175    Subnormal\r
-dqmul805 multiply  1.0E-6172     1e-4  -> 1E-6176     Subnormal Rounded\r
-dqmul806 multiply  1.3E-6172     1e-4  -> 1E-6176     Underflow Subnormal Inexact Rounded\r
-dqmul807 multiply  1.5E-6172     1e-4  -> 2E-6176     Underflow Subnormal Inexact Rounded\r
-dqmul808 multiply  1.7E-6172     1e-4  -> 2E-6176     Underflow Subnormal Inexact Rounded\r
-dqmul809 multiply  2.3E-6172     1e-4  -> 2E-6176     Underflow Subnormal Inexact Rounded\r
-dqmul810 multiply  2.5E-6172     1e-4  -> 2E-6176     Underflow Subnormal Inexact Rounded\r
-dqmul811 multiply  2.7E-6172     1e-4  -> 3E-6176     Underflow Subnormal Inexact Rounded\r
-dqmul812 multiply  1.49E-6172    1e-4  -> 1E-6176     Underflow Subnormal Inexact Rounded\r
-dqmul813 multiply  1.50E-6172    1e-4  -> 2E-6176     Underflow Subnormal Inexact Rounded\r
-dqmul814 multiply  1.51E-6172    1e-4  -> 2E-6176     Underflow Subnormal Inexact Rounded\r
-dqmul815 multiply  2.49E-6172    1e-4  -> 2E-6176     Underflow Subnormal Inexact Rounded\r
-dqmul816 multiply  2.50E-6172    1e-4  -> 2E-6176     Underflow Subnormal Inexact Rounded\r
-dqmul817 multiply  2.51E-6172    1e-4  -> 3E-6176     Underflow Subnormal Inexact Rounded\r
-\r
-dqmul818 multiply  1E-6172       1e-4  -> 1E-6176     Subnormal\r
-dqmul819 multiply  3E-6172       1e-5  -> 0E-6176     Underflow Subnormal Inexact Rounded Clamped\r
-dqmul820 multiply  5E-6172       1e-5  -> 0E-6176     Underflow Subnormal Inexact Rounded Clamped\r
-dqmul821 multiply  7E-6172       1e-5  -> 1E-6176     Underflow Subnormal Inexact Rounded\r
-dqmul822 multiply  9E-6172       1e-5  -> 1E-6176     Underflow Subnormal Inexact Rounded\r
-dqmul823 multiply  9.9E-6172     1e-5  -> 1E-6176     Underflow Subnormal Inexact Rounded\r
-\r
-dqmul824 multiply  1E-6172      -1e-4  -> -1E-6176    Subnormal\r
-dqmul825 multiply  3E-6172      -1e-5  -> -0E-6176    Underflow Subnormal Inexact Rounded Clamped\r
-dqmul826 multiply -5E-6172       1e-5  -> -0E-6176    Underflow Subnormal Inexact Rounded Clamped\r
-dqmul827 multiply  7E-6172      -1e-5  -> -1E-6176    Underflow Subnormal Inexact Rounded\r
-dqmul828 multiply -9E-6172       1e-5  -> -1E-6176    Underflow Subnormal Inexact Rounded\r
-dqmul829 multiply  9.9E-6172    -1e-5  -> -1E-6176    Underflow Subnormal Inexact Rounded\r
-dqmul830 multiply  3.0E-6172    -1e-5  -> -0E-6176    Underflow Subnormal Inexact Rounded Clamped\r
-\r
-dqmul831 multiply  1.0E-5977     1e-200 -> 0E-6176 Underflow Subnormal Inexact Rounded Clamped\r
-dqmul832 multiply  1.0E-5977     1e-199 -> 1E-6176    Subnormal Rounded\r
-dqmul833 multiply  1.0E-5977     1e-198 -> 1.0E-6175    Subnormal\r
-dqmul834 multiply  2.0E-5977     2e-198 -> 4.0E-6175    Subnormal\r
-dqmul835 multiply  4.0E-5977     4e-198 -> 1.60E-6174   Subnormal\r
-dqmul836 multiply 10.0E-5977    10e-198 -> 1.000E-6173  Subnormal\r
-dqmul837 multiply 30.0E-5977    30e-198 -> 9.000E-6173  Subnormal\r
-dqmul838 multiply 40.0E-5982    40e-166 -> 1.6000E-6145 Subnormal\r
-dqmul839 multiply 40.0E-5982    40e-165 -> 1.6000E-6144 Subnormal\r
-dqmul840 multiply 40.0E-5982    40e-164 -> 1.6000E-6143\r
-\r
--- Long operand overflow may be a different path\r
-dqmul870 multiply 100  9.999E+6143     ->  Infinity Inexact Overflow Rounded\r
-dqmul871 multiply 100 -9.999E+6143     -> -Infinity Inexact Overflow Rounded\r
-dqmul872 multiply      9.999E+6143 100 ->  Infinity Inexact Overflow Rounded\r
-dqmul873 multiply     -9.999E+6143 100 -> -Infinity Inexact Overflow Rounded\r
-\r
--- check for double-rounded subnormals\r
-dqmul881 multiply  1.2347E-6133 1.2347E-40  ->  1.524E-6173 Inexact Rounded Subnormal Underflow\r
-dqmul882 multiply  1.234E-6133 1.234E-40    ->  1.523E-6173 Inexact Rounded Subnormal Underflow\r
-dqmul883 multiply  1.23E-6133  1.23E-40     ->  1.513E-6173 Inexact Rounded Subnormal Underflow\r
-dqmul884 multiply  1.2E-6133   1.2E-40      ->  1.44E-6173  Subnormal\r
-dqmul885 multiply  1.2E-6133   1.2E-41      ->  1.44E-6174  Subnormal\r
-dqmul886 multiply  1.2E-6133   1.2E-42      ->  1.4E-6175   Subnormal Inexact Rounded Underflow\r
-dqmul887 multiply  1.2E-6133   1.3E-42      ->  1.6E-6175   Subnormal Inexact Rounded Underflow\r
-dqmul888 multiply  1.3E-6133   1.3E-42      ->  1.7E-6175   Subnormal Inexact Rounded Underflow\r
-dqmul889 multiply  1.3E-6133   1.3E-43      ->    2E-6176   Subnormal Inexact Rounded Underflow\r
-dqmul890 multiply  1.3E-6134   1.3E-43      ->    0E-6176   Clamped Subnormal Inexact Rounded Underflow\r
-\r
-dqmul891 multiply  1.2345E-39    1.234E-6133 ->  1.5234E-6172 Inexact Rounded Subnormal Underflow\r
-dqmul892 multiply  1.23456E-39   1.234E-6133 ->  1.5234E-6172 Inexact Rounded Subnormal Underflow\r
-dqmul893 multiply  1.2345E-40   1.234E-6133 ->  1.523E-6173  Inexact Rounded Subnormal Underflow\r
-dqmul894 multiply  1.23456E-40  1.234E-6133 ->  1.523E-6173  Inexact Rounded Subnormal Underflow\r
-dqmul895 multiply  1.2345E-41   1.234E-6133 ->  1.52E-6174   Inexact Rounded Subnormal Underflow\r
-dqmul896 multiply  1.23456E-41  1.234E-6133 ->  1.52E-6174   Inexact Rounded Subnormal Underflow\r
-\r
--- Now explore the case where we get a normal result with Underflow\r
--- prove operands are exact\r
-dqmul906 multiply  9.999999999999999999999999999999999E-6143  1                       -> 9.999999999999999999999999999999999E-6143\r
-dqmul907 multiply                       1  0.09999999999999999999999999999999999     -> 0.09999999999999999999999999999999999\r
--- the next rounds to Nmin\r
-dqmul908 multiply  9.999999999999999999999999999999999E-6143  0.09999999999999999999999999999999999     -> 1.000000000000000000000000000000000E-6143 Underflow Inexact Subnormal Rounded\r
-\r
--- hugest\r
-dqmul909 multiply 9999999999999999999999999999999999 9999999999999999999999999999999999 -> 9.999999999999999999999999999999998E+67 Inexact Rounded\r
--- VG case\r
-dqmul910 multiply 8.81125000000001349436E-1548 8.000000000000000000E-1550 -> 7.049000000000010795488000000000000E-3097 Rounded\r
-\r
--- Examples from SQL proposal (Krishna Kulkarni)\r
-precision:   34\r
-rounding:    half_up\r
-maxExponent: 6144\r
-minExponent: -6143\r
-dqmul911  multiply 130E-2  120E-2 -> 1.5600\r
-dqmul912  multiply 130E-2  12E-1  -> 1.560\r
-dqmul913  multiply 130E-2  1E0    -> 1.30\r
-dqmul914  multiply 1E2     1E4    -> 1E+6\r
-\r
--- power-of-ten edge cases\r
-dqmul1001 multiply  1      10               -> 10\r
-dqmul1002 multiply  1      100              -> 100\r
-dqmul1003 multiply  1      1000             -> 1000\r
-dqmul1004 multiply  1      10000            -> 10000\r
-dqmul1005 multiply  1      100000           -> 100000\r
-dqmul1006 multiply  1      1000000          -> 1000000\r
-dqmul1007 multiply  1      10000000         -> 10000000\r
-dqmul1008 multiply  1      100000000        -> 100000000\r
-dqmul1009 multiply  1      1000000000       -> 1000000000\r
-dqmul1010 multiply  1      10000000000      -> 10000000000\r
-dqmul1011 multiply  1      100000000000     -> 100000000000\r
-dqmul1012 multiply  1      1000000000000    -> 1000000000000\r
-dqmul1013 multiply  1      10000000000000   -> 10000000000000\r
-dqmul1014 multiply  1      100000000000000  -> 100000000000000\r
-dqmul1015 multiply  1      1000000000000000 -> 1000000000000000\r
-\r
-dqmul1016 multiply  1      1000000000000000000 -> 1000000000000000000\r
-dqmul1017 multiply  1      100000000000000000000000000 -> 100000000000000000000000000\r
-dqmul1018 multiply  1      1000000000000000000000000000 -> 1000000000000000000000000000\r
-dqmul1019 multiply  1      10000000000000000000000000000 -> 10000000000000000000000000000\r
-dqmul1020 multiply  1      1000000000000000000000000000000000 -> 1000000000000000000000000000000000\r
-\r
-dqmul1021 multiply  10     1                -> 10\r
-dqmul1022 multiply  10     10               -> 100\r
-dqmul1023 multiply  10     100              -> 1000\r
-dqmul1024 multiply  10     1000             -> 10000\r
-dqmul1025 multiply  10     10000            -> 100000\r
-dqmul1026 multiply  10     100000           -> 1000000\r
-dqmul1027 multiply  10     1000000          -> 10000000\r
-dqmul1028 multiply  10     10000000         -> 100000000\r
-dqmul1029 multiply  10     100000000        -> 1000000000\r
-dqmul1030 multiply  10     1000000000       -> 10000000000\r
-dqmul1031 multiply  10     10000000000      -> 100000000000\r
-dqmul1032 multiply  10     100000000000     -> 1000000000000\r
-dqmul1033 multiply  10     1000000000000    -> 10000000000000\r
-dqmul1034 multiply  10     10000000000000   -> 100000000000000\r
-dqmul1035 multiply  10     100000000000000  -> 1000000000000000\r
-\r
-dqmul1036 multiply  10     100000000000000000 -> 1000000000000000000\r
-dqmul1037 multiply  10     10000000000000000000000000 -> 100000000000000000000000000\r
-dqmul1038 multiply  10     100000000000000000000000000 -> 1000000000000000000000000000\r
-dqmul1039 multiply  10     1000000000000000000000000000 -> 10000000000000000000000000000\r
-dqmul1040 multiply  10     100000000000000000000000000000000 -> 1000000000000000000000000000000000\r
-\r
-dqmul1041 multiply  100    0.1              -> 10.0\r
-dqmul1042 multiply  100    1                -> 100\r
-dqmul1043 multiply  100    10               -> 1000\r
-dqmul1044 multiply  100    100              -> 10000\r
-dqmul1045 multiply  100    1000             -> 100000\r
-dqmul1046 multiply  100    10000            -> 1000000\r
-dqmul1047 multiply  100    100000           -> 10000000\r
-dqmul1048 multiply  100    1000000          -> 100000000\r
-dqmul1049 multiply  100    10000000         -> 1000000000\r
-dqmul1050 multiply  100    100000000        -> 10000000000\r
-dqmul1051 multiply  100    1000000000       -> 100000000000\r
-dqmul1052 multiply  100    10000000000      -> 1000000000000\r
-dqmul1053 multiply  100    100000000000     -> 10000000000000\r
-dqmul1054 multiply  100    1000000000000    -> 100000000000000\r
-dqmul1055 multiply  100    10000000000000   -> 1000000000000000\r
-\r
-dqmul1056 multiply  100    10000000000000000 -> 1000000000000000000\r
-dqmul1057 multiply  100    1000000000000000000000000 -> 100000000000000000000000000\r
-dqmul1058 multiply  100    10000000000000000000000000 -> 1000000000000000000000000000\r
-dqmul1059 multiply  100    100000000000000000000000000 -> 10000000000000000000000000000\r
-dqmul1060 multiply  100    10000000000000000000000000000000 -> 1000000000000000000000000000000000\r
-\r
-dqmul1061 multiply  1000   0.01             -> 10.00\r
-dqmul1062 multiply  1000   0.1              -> 100.0\r
-dqmul1063 multiply  1000   1                -> 1000\r
-dqmul1064 multiply  1000   10               -> 10000\r
-dqmul1065 multiply  1000   100              -> 100000\r
-dqmul1066 multiply  1000   1000             -> 1000000\r
-dqmul1067 multiply  1000   10000            -> 10000000\r
-dqmul1068 multiply  1000   100000           -> 100000000\r
-dqmul1069 multiply  1000   1000000          -> 1000000000\r
-dqmul1070 multiply  1000   10000000         -> 10000000000\r
-dqmul1071 multiply  1000   100000000        -> 100000000000\r
-dqmul1072 multiply  1000   1000000000       -> 1000000000000\r
-dqmul1073 multiply  1000   10000000000      -> 10000000000000\r
-dqmul1074 multiply  1000   100000000000     -> 100000000000000\r
-dqmul1075 multiply  1000   1000000000000    -> 1000000000000000\r
-\r
-dqmul1076 multiply  1000   1000000000000000 -> 1000000000000000000\r
-dqmul1077 multiply  1000   100000000000000000000000 -> 100000000000000000000000000\r
-dqmul1078 multiply  1000   1000000000000000000000000 -> 1000000000000000000000000000\r
-dqmul1079 multiply  1000   10000000000000000000000000 -> 10000000000000000000000000000\r
-dqmul1080 multiply  1000   1000000000000000000000000000000 -> 1000000000000000000000000000000000\r
-\r
-dqmul1081 multiply  10000  0.001            -> 10.000\r
-dqmul1082 multiply  10000  0.01             -> 100.00\r
-dqmul1083 multiply  10000  0.1              -> 1000.0\r
-dqmul1084 multiply  10000  1                -> 10000\r
-dqmul1085 multiply  10000  10               -> 100000\r
-dqmul1086 multiply  10000  100              -> 1000000\r
-dqmul1087 multiply  10000  1000             -> 10000000\r
-dqmul1088 multiply  10000  10000            -> 100000000\r
-dqmul1089 multiply  10000  100000           -> 1000000000\r
-dqmul1090 multiply  10000  1000000          -> 10000000000\r
-dqmul1091 multiply  10000  10000000         -> 100000000000\r
-dqmul1092 multiply  10000  100000000        -> 1000000000000\r
-dqmul1093 multiply  10000  1000000000       -> 10000000000000\r
-dqmul1094 multiply  10000  10000000000      -> 100000000000000\r
-dqmul1095 multiply  10000  100000000000     -> 1000000000000000\r
-\r
-dqmul1096 multiply  10000  100000000000000 -> 1000000000000000000\r
-dqmul1097 multiply  10000  10000000000000000000000 -> 100000000000000000000000000\r
-dqmul1098 multiply  10000  100000000000000000000000 -> 1000000000000000000000000000\r
-dqmul1099 multiply  10000  1000000000000000000000000 -> 10000000000000000000000000000\r
-dqmul1100 multiply  10000  100000000000000000000000000000 -> 1000000000000000000000000000000000\r
-\r
-dqmul1107 multiply  10000   99999999999     ->  999999999990000\r
-dqmul1108 multiply  10000   99999999999     ->  999999999990000\r
-\r
--- Null tests\r
-dqmul9990 multiply 10  # -> NaN Invalid_operation\r
-dqmul9991 multiply  # 10 -> NaN Invalid_operation\r
-\r