17db96d56Sopenharmony_ci------------------------------------------------------------------------
27db96d56Sopenharmony_ci-- copysign.decTest -- quiet copy with sign from rhs                  --
37db96d56Sopenharmony_ci-- Copyright (c) IBM Corporation, 1981, 2008.  All rights reserved.   --
47db96d56Sopenharmony_ci------------------------------------------------------------------------
57db96d56Sopenharmony_ci-- Please see the document "General Decimal Arithmetic Testcases"     --
67db96d56Sopenharmony_ci-- at http://www2.hursley.ibm.com/decimal for the description of      --
77db96d56Sopenharmony_ci-- these testcases.                                                   --
87db96d56Sopenharmony_ci--                                                                    --
97db96d56Sopenharmony_ci-- These testcases are experimental ('beta' versions), and they       --
107db96d56Sopenharmony_ci-- may contain errors.  They are offered on an as-is basis.  In       --
117db96d56Sopenharmony_ci-- particular, achieving the same results as the tests here is not    --
127db96d56Sopenharmony_ci-- a guarantee that an implementation complies with any Standard      --
137db96d56Sopenharmony_ci-- or specification.  The tests are not exhaustive.                   --
147db96d56Sopenharmony_ci--                                                                    --
157db96d56Sopenharmony_ci-- Please send comments, suggestions, and corrections to the author:  --
167db96d56Sopenharmony_ci--   Mike Cowlishaw, IBM Fellow                                       --
177db96d56Sopenharmony_ci--   IBM UK, PO Box 31, Birmingham Road, Warwick CV34 5JL, UK         --
187db96d56Sopenharmony_ci--   mfc@uk.ibm.com                                                   --
197db96d56Sopenharmony_ci------------------------------------------------------------------------
207db96d56Sopenharmony_civersion: 2.59
217db96d56Sopenharmony_ci
227db96d56Sopenharmony_ciextended:    1
237db96d56Sopenharmony_ciprecision:   9
247db96d56Sopenharmony_cirounding:    half_up
257db96d56Sopenharmony_cimaxExponent: 999
267db96d56Sopenharmony_ciminExponent: -999
277db96d56Sopenharmony_ci
287db96d56Sopenharmony_ci-- Sanity check, and examples from decArith
297db96d56Sopenharmony_cicpsx001 copysign   +7.50       11  -> 7.50
307db96d56Sopenharmony_cicpsx002 copysign   '1.50'   '7.33' -> 1.50
317db96d56Sopenharmony_cicpsx003 copysign  '-1.50'   '7.33' -> 1.50
327db96d56Sopenharmony_cicpsx004 copysign   '1.50'  '-7.33' -> -1.50
337db96d56Sopenharmony_cicpsx005 copysign  '-1.50'  '-7.33' -> -1.50
347db96d56Sopenharmony_ci
357db96d56Sopenharmony_ci-- Infinities
367db96d56Sopenharmony_cicpsx011 copysign  Infinity       11 -> Infinity
377db96d56Sopenharmony_cicpsx012 copysign  -Infinity      11 -> Infinity
387db96d56Sopenharmony_ci
397db96d56Sopenharmony_ci-- NaNs, 0 payload
407db96d56Sopenharmony_cicpsx021 copysign         NaN     11 -> NaN
417db96d56Sopenharmony_cicpsx022 copysign        -NaN     11 -> NaN
427db96d56Sopenharmony_cicpsx023 copysign        sNaN     11 -> sNaN
437db96d56Sopenharmony_cicpsx024 copysign       -sNaN     11 -> sNaN
447db96d56Sopenharmony_ci
457db96d56Sopenharmony_ci-- NaNs, non-0 payload
467db96d56Sopenharmony_cicpsx031 copysign       NaN10     11 -> NaN10
477db96d56Sopenharmony_cicpsx032 copysign      -NaN10     11 -> NaN10
487db96d56Sopenharmony_cicpsx033 copysign      sNaN10     11 -> sNaN10
497db96d56Sopenharmony_cicpsx034 copysign     -sNaN10     11 -> sNaN10
507db96d56Sopenharmony_cicpsx035 copysign       NaN7      11 -> NaN7
517db96d56Sopenharmony_cicpsx036 copysign      -NaN7      11 -> NaN7
527db96d56Sopenharmony_cicpsx037 copysign      sNaN101    11 -> sNaN101
537db96d56Sopenharmony_cicpsx038 copysign     -sNaN101    11 -> sNaN101
547db96d56Sopenharmony_ci
557db96d56Sopenharmony_ci-- finites
567db96d56Sopenharmony_cicpsx101 copysign          7      11 -> 7
577db96d56Sopenharmony_cicpsx102 copysign         -7      11 -> 7
587db96d56Sopenharmony_cicpsx103 copysign         75      11 -> 75
597db96d56Sopenharmony_cicpsx104 copysign        -75      11 -> 75
607db96d56Sopenharmony_cicpsx105 copysign       7.50      11 -> 7.50
617db96d56Sopenharmony_cicpsx106 copysign      -7.50      11 -> 7.50
627db96d56Sopenharmony_cicpsx107 copysign       7.500     11 -> 7.500
637db96d56Sopenharmony_cicpsx108 copysign      -7.500     11 -> 7.500
647db96d56Sopenharmony_ci
657db96d56Sopenharmony_ci-- zeros
667db96d56Sopenharmony_cicpsx111 copysign          0      11 -> 0
677db96d56Sopenharmony_cicpsx112 copysign         -0      11 -> 0
687db96d56Sopenharmony_cicpsx113 copysign       0E+4      11 -> 0E+4
697db96d56Sopenharmony_cicpsx114 copysign      -0E+4      11 -> 0E+4
707db96d56Sopenharmony_cicpsx115 copysign     0.0000      11 -> 0.0000
717db96d56Sopenharmony_cicpsx116 copysign    -0.0000      11 -> 0.0000
727db96d56Sopenharmony_cicpsx117 copysign      0E-141     11 -> 0E-141
737db96d56Sopenharmony_cicpsx118 copysign     -0E-141     11 -> 0E-141
747db96d56Sopenharmony_ci
757db96d56Sopenharmony_ci-- full coefficients, alternating bits
767db96d56Sopenharmony_cicpsx121 copysign   268268268           11 -> 268268268
777db96d56Sopenharmony_cicpsx122 copysign  -268268268           11 -> 268268268
787db96d56Sopenharmony_cicpsx123 copysign   134134134           11 -> 134134134
797db96d56Sopenharmony_cicpsx124 copysign  -134134134           11 -> 134134134
807db96d56Sopenharmony_ci
817db96d56Sopenharmony_ci-- Nmax, Nmin, Ntiny
827db96d56Sopenharmony_cicpsx131 copysign  9.99999999E+999      11 -> 9.99999999E+999
837db96d56Sopenharmony_cicpsx132 copysign  1E-999               11 -> 1E-999
847db96d56Sopenharmony_cicpsx133 copysign  1.00000000E-999      11 -> 1.00000000E-999
857db96d56Sopenharmony_cicpsx134 copysign  1E-1007              11 -> 1E-1007
867db96d56Sopenharmony_ci
877db96d56Sopenharmony_cicpsx135 copysign  -1E-1007             11 -> 1E-1007
887db96d56Sopenharmony_cicpsx136 copysign  -1.00000000E-999     11 -> 1.00000000E-999
897db96d56Sopenharmony_cicpsx137 copysign  -1E-999              11 -> 1E-999
907db96d56Sopenharmony_cicpsx138 copysign  -9.99999999E+999     11 -> 9.99999999E+999
917db96d56Sopenharmony_ci
927db96d56Sopenharmony_ci-- repeat with negative RHS
937db96d56Sopenharmony_ci
947db96d56Sopenharmony_ci-- Infinities
957db96d56Sopenharmony_cicpsx211 copysign  Infinity       -34 -> -Infinity
967db96d56Sopenharmony_cicpsx212 copysign  -Infinity      -34 -> -Infinity
977db96d56Sopenharmony_ci
987db96d56Sopenharmony_ci-- NaNs, 0 payload
997db96d56Sopenharmony_cicpsx221 copysign         NaN     -34 -> -NaN
1007db96d56Sopenharmony_cicpsx222 copysign        -NaN     -34 -> -NaN
1017db96d56Sopenharmony_cicpsx223 copysign        sNaN     -34 -> -sNaN
1027db96d56Sopenharmony_cicpsx224 copysign       -sNaN     -34 -> -sNaN
1037db96d56Sopenharmony_ci
1047db96d56Sopenharmony_ci-- NaNs, non-0 payload
1057db96d56Sopenharmony_cicpsx231 copysign       NaN10     -34 -> -NaN10
1067db96d56Sopenharmony_cicpsx232 copysign      -NaN10     -34 -> -NaN10
1077db96d56Sopenharmony_cicpsx233 copysign      sNaN10     -34 -> -sNaN10
1087db96d56Sopenharmony_cicpsx234 copysign     -sNaN10     -34 -> -sNaN10
1097db96d56Sopenharmony_cicpsx235 copysign       NaN7      -34 -> -NaN7
1107db96d56Sopenharmony_cicpsx236 copysign      -NaN7      -34 -> -NaN7
1117db96d56Sopenharmony_cicpsx237 copysign      sNaN101    -34 -> -sNaN101
1127db96d56Sopenharmony_cicpsx238 copysign     -sNaN101    -34 -> -sNaN101
1137db96d56Sopenharmony_ci
1147db96d56Sopenharmony_ci-- finites
1157db96d56Sopenharmony_cicpsx301 copysign          7      -34 -> -7
1167db96d56Sopenharmony_cicpsx302 copysign         -7      -34 -> -7
1177db96d56Sopenharmony_cicpsx303 copysign         75      -34 -> -75
1187db96d56Sopenharmony_cicpsx304 copysign        -75      -34 -> -75
1197db96d56Sopenharmony_cicpsx305 copysign       7.50      -34 -> -7.50
1207db96d56Sopenharmony_cicpsx306 copysign      -7.50      -34 -> -7.50
1217db96d56Sopenharmony_cicpsx307 copysign       7.500     -34 -> -7.500
1227db96d56Sopenharmony_cicpsx308 copysign      -7.500     -34 -> -7.500
1237db96d56Sopenharmony_ci
1247db96d56Sopenharmony_ci-- zeros
1257db96d56Sopenharmony_cicpsx311 copysign          0      -34 -> -0
1267db96d56Sopenharmony_cicpsx312 copysign         -0      -34 -> -0
1277db96d56Sopenharmony_cicpsx313 copysign       0E+4      -34 -> -0E+4
1287db96d56Sopenharmony_cicpsx314 copysign      -0E+4      -34 -> -0E+4
1297db96d56Sopenharmony_cicpsx315 copysign     0.0000      -34 -> -0.0000
1307db96d56Sopenharmony_cicpsx316 copysign    -0.0000      -34 -> -0.0000
1317db96d56Sopenharmony_cicpsx317 copysign      0E-141     -34 -> -0E-141
1327db96d56Sopenharmony_cicpsx318 copysign     -0E-141     -34 -> -0E-141
1337db96d56Sopenharmony_ci
1347db96d56Sopenharmony_ci-- full coefficients, alternating bits
1357db96d56Sopenharmony_cicpsx321 copysign   268268268          -18 -> -268268268
1367db96d56Sopenharmony_cicpsx322 copysign  -268268268          -18 -> -268268268
1377db96d56Sopenharmony_cicpsx323 copysign   134134134          -18 -> -134134134
1387db96d56Sopenharmony_cicpsx324 copysign  -134134134          -18 -> -134134134
1397db96d56Sopenharmony_ci
1407db96d56Sopenharmony_ci-- Nmax, Nmin, Ntiny
1417db96d56Sopenharmony_cicpsx331 copysign  9.99999999E+999     -18 -> -9.99999999E+999
1427db96d56Sopenharmony_cicpsx332 copysign  1E-999              -18 -> -1E-999
1437db96d56Sopenharmony_cicpsx333 copysign  1.00000000E-999     -18 -> -1.00000000E-999
1447db96d56Sopenharmony_cicpsx334 copysign  1E-1007             -18 -> -1E-1007
1457db96d56Sopenharmony_ci
1467db96d56Sopenharmony_cicpsx335 copysign  -1E-1007            -18 -> -1E-1007
1477db96d56Sopenharmony_cicpsx336 copysign  -1.00000000E-999    -18 -> -1.00000000E-999
1487db96d56Sopenharmony_cicpsx337 copysign  -1E-999             -18 -> -1E-999
1497db96d56Sopenharmony_cicpsx338 copysign  -9.99999999E+999    -18 -> -9.99999999E+999
1507db96d56Sopenharmony_ci
1517db96d56Sopenharmony_ci-- Other kinds of RHS
1527db96d56Sopenharmony_cicpsx401 copysign          701    -34 -> -701
1537db96d56Sopenharmony_cicpsx402 copysign         -720    -34 -> -720
1547db96d56Sopenharmony_cicpsx403 copysign          701    -0  -> -701
1557db96d56Sopenharmony_cicpsx404 copysign         -720    -0  -> -720
1567db96d56Sopenharmony_cicpsx405 copysign          701    +0  ->  701
1577db96d56Sopenharmony_cicpsx406 copysign         -720    +0  ->  720
1587db96d56Sopenharmony_cicpsx407 copysign          701    +34 ->  701
1597db96d56Sopenharmony_cicpsx408 copysign         -720    +34 ->  720
1607db96d56Sopenharmony_ci
1617db96d56Sopenharmony_cicpsx413 copysign          701    -Inf  -> -701
1627db96d56Sopenharmony_cicpsx414 copysign         -720    -Inf  -> -720
1637db96d56Sopenharmony_cicpsx415 copysign          701    +Inf  ->  701
1647db96d56Sopenharmony_cicpsx416 copysign         -720    +Inf  ->  720
1657db96d56Sopenharmony_ci
1667db96d56Sopenharmony_cicpsx420 copysign          701    -NaN  -> -701
1677db96d56Sopenharmony_cicpsx421 copysign         -720    -NaN  -> -720
1687db96d56Sopenharmony_cicpsx422 copysign          701    +NaN  ->  701
1697db96d56Sopenharmony_cicpsx423 copysign         -720    +NaN  ->  720
1707db96d56Sopenharmony_cicpsx425 copysign         -720    +NaN8 ->  720
1717db96d56Sopenharmony_ci
1727db96d56Sopenharmony_cicpsx426 copysign          701    -sNaN  -> -701
1737db96d56Sopenharmony_cicpsx427 copysign         -720    -sNaN  -> -720
1747db96d56Sopenharmony_cicpsx428 copysign          701    +sNaN  ->  701
1757db96d56Sopenharmony_cicpsx429 copysign         -720    +sNaN  ->  720
1767db96d56Sopenharmony_cicpsx430 copysign         -720    +sNaN3 ->  720
1777db96d56Sopenharmony_ci
178