17db96d56Sopenharmony_ci------------------------------------------------------------------------
27db96d56Sopenharmony_ci-- dqXor.decTest -- digitwise logical XOR for decQuads                --
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_ciclamp:       1
247db96d56Sopenharmony_ciprecision:   34
257db96d56Sopenharmony_cimaxExponent: 6144
267db96d56Sopenharmony_ciminExponent: -6143
277db96d56Sopenharmony_cirounding:    half_even
287db96d56Sopenharmony_ci
297db96d56Sopenharmony_ci-- Sanity check (truth table)
307db96d56Sopenharmony_cidqxor001 xor             0    0 ->    0
317db96d56Sopenharmony_cidqxor002 xor             0    1 ->    1
327db96d56Sopenharmony_cidqxor003 xor             1    0 ->    1
337db96d56Sopenharmony_cidqxor004 xor             1    1 ->    0
347db96d56Sopenharmony_cidqxor005 xor          1100 1010 ->  110
357db96d56Sopenharmony_ci-- and at msd and msd-1
367db96d56Sopenharmony_cidqxor006 xor 0000000000000000000000000000000000 0000000000000000000000000000000000 ->           0
377db96d56Sopenharmony_cidqxor007 xor 0000000000000000000000000000000000 1000000000000000000000000000000000 ->   1000000000000000000000000000000000
387db96d56Sopenharmony_cidqxor008 xor 1000000000000000000000000000000000 0000000000000000000000000000000000 ->   1000000000000000000000000000000000
397db96d56Sopenharmony_cidqxor009 xor 1000000000000000000000000000000000 1000000000000000000000000000000000 ->           0
407db96d56Sopenharmony_cidqxor010 xor 0000000000000000000000000000000000 0000000000000000000000000000000000 ->           0
417db96d56Sopenharmony_cidqxor011 xor 0000000000000000000000000000000000 0100000000000000000000000000000000 ->    100000000000000000000000000000000
427db96d56Sopenharmony_cidqxor012 xor 0100000000000000000000000000000000 0000000000000000000000000000000000 ->    100000000000000000000000000000000
437db96d56Sopenharmony_cidqxor013 xor 0100000000000000000000000000000000 0100000000000000000000000000000000 ->           0
447db96d56Sopenharmony_ci
457db96d56Sopenharmony_ci-- Various lengths
467db96d56Sopenharmony_ci--           1234567890123456789012345678901234
477db96d56Sopenharmony_cidqxor601 xor 0111111111111111111111111111111111 1111111111111111111111111111111111  -> 1000000000000000000000000000000000
487db96d56Sopenharmony_cidqxor602 xor 1011111111111111111111111111111111 1111111111111111111111111111111111  ->  100000000000000000000000000000000
497db96d56Sopenharmony_cidqxor603 xor 1101111111111111111111111111111111 1111111111111111111111111111111111  ->   10000000000000000000000000000000
507db96d56Sopenharmony_cidqxor604 xor 1110111111111111111111111111111111 1111111111111111111111111111111111  ->    1000000000000000000000000000000
517db96d56Sopenharmony_cidqxor605 xor 1111011111111111111111111111111111 1111111111111111111111111111111111  ->     100000000000000000000000000000
527db96d56Sopenharmony_cidqxor606 xor 1111101111111111111111111111111111 1111111111111111111111111111111111  ->      10000000000000000000000000000
537db96d56Sopenharmony_cidqxor607 xor 1111110111111111111111111111111111 1111111111111111111111111111111111  ->       1000000000000000000000000000
547db96d56Sopenharmony_cidqxor608 xor 1111111011111111111111111111111111 1111111111111111111111111111111111  ->        100000000000000000000000000
557db96d56Sopenharmony_cidqxor609 xor 1111111101111111111111111111111111 1111111111111111111111111111111111  ->         10000000000000000000000000
567db96d56Sopenharmony_cidqxor610 xor 1111111110111111111111111111111111 1111111111111111111111111111111111  ->          1000000000000000000000000
577db96d56Sopenharmony_cidqxor611 xor 1111111111011111111111111111111111 1111111111111111111111111111111111  ->           100000000000000000000000
587db96d56Sopenharmony_cidqxor612 xor 1111111111101111111111111111111111 1111111111111111111111111111111111  ->            10000000000000000000000
597db96d56Sopenharmony_cidqxor613 xor 1111111111110111111111111111111111 1111111111111111111111111111111111  ->             1000000000000000000000
607db96d56Sopenharmony_cidqxor614 xor 1111111111111011111111111111111111 1111111111111111111111111111111111  ->              100000000000000000000
617db96d56Sopenharmony_cidqxor615 xor 1111111111111101111111111111111111 1111111111111111111111111111111111  ->               10000000000000000000
627db96d56Sopenharmony_cidqxor616 xor 1111111111111110111111111111111111 1111111111111111111111111111111111  ->                1000000000000000000
637db96d56Sopenharmony_cidqxor617 xor 1111111111111111011111111111111111 1111111111111111111111111111111111  ->                 100000000000000000
647db96d56Sopenharmony_cidqxor618 xor 1111111111111111101111111111111111 1111111111111111111111111111111111  ->                  10000000000000000
657db96d56Sopenharmony_cidqxor619 xor 1111111111111111110111111111111111 1111111111111111111111111111111111  ->                   1000000000000000
667db96d56Sopenharmony_cidqxor620 xor 1111111111111111111011111111111111 1111111111111111111111111111111111  ->                    100000000000000
677db96d56Sopenharmony_cidqxor621 xor 1111111111111111111101111111111111 1111111111111111111111111111111111  ->                     10000000000000
687db96d56Sopenharmony_cidqxor622 xor 1111111111111111111110111111111111 1111111111111111111111111111111111  ->                      1000000000000
697db96d56Sopenharmony_cidqxor623 xor 1111111111111111111111011111111111 1111111111111111111111111111111111  ->                       100000000000
707db96d56Sopenharmony_cidqxor624 xor 1111111111111111111111101111111111 1111111111111111111111111111111111  ->                        10000000000
717db96d56Sopenharmony_cidqxor625 xor 1111111111111111111111110111111111 1111111111111111111111111111111111  ->                         1000000000
727db96d56Sopenharmony_cidqxor626 xor 1111111111111111111111111011111111 1111111111111111111111111111111111  ->                          100000000
737db96d56Sopenharmony_cidqxor627 xor 1111111111111111111111111101111111 1111111111111111111111111111111111  ->                           10000000
747db96d56Sopenharmony_cidqxor628 xor 1111111111111111111111111110111111 1111111111111111111111111111111111  ->                            1000000
757db96d56Sopenharmony_cidqxor629 xor 1111111111111111111111111111011111 1111111111111111111111111111111111  ->                             100000
767db96d56Sopenharmony_cidqxor630 xor 1111111111111111111111111111101111 1111111111111111111111111111111111  ->                              10000
777db96d56Sopenharmony_cidqxor631 xor 1111111111111111111111111111110111 1111111111111111111111111111111111  ->                               1000
787db96d56Sopenharmony_cidqxor632 xor 1111111111111111111111111111111011 1111111111111111111111111111111111  ->                                100
797db96d56Sopenharmony_cidqxor633 xor 1111111111111111111111111111111101 1111111111111111111111111111111111  ->                                 10
807db96d56Sopenharmony_cidqxor634 xor 1111111111111111111111111111111110 1111111111111111111111111111111111  ->                                  1
817db96d56Sopenharmony_ci
827db96d56Sopenharmony_cidqxor641 xor 1111111111111111111111111111111111 0111111111111111111111111111111111  -> 1000000000000000000000000000000000
837db96d56Sopenharmony_cidqxor642 xor 1111111111111111111111111111111111 1011111111111111111111111111111111  ->  100000000000000000000000000000000
847db96d56Sopenharmony_cidqxor643 xor 1111111111111111111111111111111111 1101111111111111111111111111111111  ->   10000000000000000000000000000000
857db96d56Sopenharmony_cidqxor644 xor 1111111111111111111111111111111111 1110111111111111111111111111111111  ->    1000000000000000000000000000000
867db96d56Sopenharmony_cidqxor645 xor 1111111111111111111111111111111111 1111011111111111111111111111111111  ->     100000000000000000000000000000
877db96d56Sopenharmony_cidqxor646 xor 1111111111111111111111111111111111 1111101111111111111111111111111111  ->      10000000000000000000000000000
887db96d56Sopenharmony_cidqxor647 xor 1111111111111111111111111111111111 1111110111111111111111111111111111  ->       1000000000000000000000000000
897db96d56Sopenharmony_cidqxor648 xor 1111111111111111111111111111111111 1111111011111111111111111111111111  ->        100000000000000000000000000
907db96d56Sopenharmony_cidqxor649 xor 1111111111111111111111111111111111 1111111101111111111111111111111111  ->         10000000000000000000000000
917db96d56Sopenharmony_cidqxor650 xor 1111111111111111111111111111111111 1111111110111111111111111111111111  ->          1000000000000000000000000
927db96d56Sopenharmony_cidqxor651 xor 1111111111111111111111111111111111 1111111111011111111111111111111111  ->           100000000000000000000000
937db96d56Sopenharmony_cidqxor652 xor 1111111111111111111111111111111111 1111111111101111111111111111111111  ->            10000000000000000000000
947db96d56Sopenharmony_cidqxor653 xor 1111111111111111111111111111111111 1111111111110111111111111111111111  ->             1000000000000000000000
957db96d56Sopenharmony_cidqxor654 xor 1111111111111111111111111111111111 1111111111111011111111111111111111  ->              100000000000000000000
967db96d56Sopenharmony_cidqxor655 xor 1111111111111111111111111111111111 1111111111111101111111111111111111  ->               10000000000000000000
977db96d56Sopenharmony_cidqxor656 xor 1111111111111111111111111111111111 1111111111111110111111111111111111  ->                1000000000000000000
987db96d56Sopenharmony_cidqxor657 xor 1111111111111111111111111111111111 1111111111111111011111111111111111  ->                 100000000000000000
997db96d56Sopenharmony_cidqxor658 xor 1111111111111111111111111111111111 1111111111111111101111111111111111  ->                  10000000000000000
1007db96d56Sopenharmony_cidqxor659 xor 1111111111111111111111111111111111 1111111111111111110111111111111111  ->                   1000000000000000
1017db96d56Sopenharmony_cidqxor660 xor 1111111111111111111111111111111111 1111111111111111111011111111111111  ->                    100000000000000
1027db96d56Sopenharmony_cidqxor661 xor 1111111111111111111111111111111111 1111111111111111111101111111111111  ->                     10000000000000
1037db96d56Sopenharmony_cidqxor662 xor 1111111111111111111111111111111111 1111111111111111111110111111111111  ->                      1000000000000
1047db96d56Sopenharmony_cidqxor663 xor 1111111111111111111111111111111111 1111111111111111111111011111111111  ->                       100000000000
1057db96d56Sopenharmony_cidqxor664 xor 1111111111111111111111111111111111 1111111111111111111111101111111111  ->                        10000000000
1067db96d56Sopenharmony_cidqxor665 xor 1111111111111111111111111111111111 1111111111111111111111110111111111  ->                         1000000000
1077db96d56Sopenharmony_cidqxor666 xor 1111111111111111111111111111111111 1111111111111111111111111011111111  ->                          100000000
1087db96d56Sopenharmony_cidqxor667 xor 1111111111111111111111111111111111 1111111111111111111111111101111111  ->                           10000000
1097db96d56Sopenharmony_cidqxor668 xor 1111111111111111111111111111111111 1111111111111111111111111110111111  ->                            1000000
1107db96d56Sopenharmony_cidqxor669 xor 1111111111111111111111111111111111 1111111111111111111111111111011111  ->                             100000
1117db96d56Sopenharmony_cidqxor670 xor 1111111111111111111111111111111111 1111111111111111111111111111101111  ->                              10000
1127db96d56Sopenharmony_cidqxor671 xor 1111111111111111111111111111111111 1111111111111111111111111111110111  ->                               1000
1137db96d56Sopenharmony_cidqxor672 xor 1111111111111111111111111111111111 1111111111111111111111111111111011  ->                                100
1147db96d56Sopenharmony_cidqxor673 xor 1111111111111111111111111111111111 1111111111111111111111111111111101  ->                                 10
1157db96d56Sopenharmony_cidqxor674 xor 1111111111111111111111111111111111 1111111111111111111111111111111110  ->                                  1
1167db96d56Sopenharmony_cidqxor675 xor 0111111111111111111111111111111111 1111111111111111111111111111111110  -> 1000000000000000000000000000000001
1177db96d56Sopenharmony_cidqxor676 xor 1111111111111111111111111111111111 1111111111111111111111111111111110  ->                                  1
1187db96d56Sopenharmony_ci
1197db96d56Sopenharmony_ci
1207db96d56Sopenharmony_cidqxor021 xor 1111111110000000     1111111110000000  ->  0
1217db96d56Sopenharmony_cidqxor022 xor  111111110000000      111111110000000  ->  0
1227db96d56Sopenharmony_cidqxor023 xor   11111110000000       11111110000000  ->  0
1237db96d56Sopenharmony_cidqxor024 xor    1111110000000        1111110000000  ->  0
1247db96d56Sopenharmony_cidqxor025 xor     111110000000         111110000000  ->  0
1257db96d56Sopenharmony_cidqxor026 xor      11110000000          11110000000  ->  0
1267db96d56Sopenharmony_cidqxor027 xor       1110000000           1110000000  ->  0
1277db96d56Sopenharmony_cidqxor028 xor        110000000            110000000  ->  0
1287db96d56Sopenharmony_cidqxor029 xor         10000000             10000000  ->  0
1297db96d56Sopenharmony_cidqxor030 xor          1000000              1000000  ->  0
1307db96d56Sopenharmony_cidqxor031 xor           100000               100000  ->  0
1317db96d56Sopenharmony_cidqxor032 xor            10000                10000  ->  0
1327db96d56Sopenharmony_cidqxor033 xor             1000                 1000  ->  0
1337db96d56Sopenharmony_cidqxor034 xor              100                  100  ->  0
1347db96d56Sopenharmony_cidqxor035 xor               10                   10  ->  0
1357db96d56Sopenharmony_cidqxor036 xor                1                    1  ->  0
1367db96d56Sopenharmony_ci
1377db96d56Sopenharmony_cidqxor040 xor 111111111  111111111111  ->  111000000000
1387db96d56Sopenharmony_cidqxor041 xor  11111111  111111111111  ->  111100000000
1397db96d56Sopenharmony_cidqxor042 xor  11111111     111111111  ->  100000000
1407db96d56Sopenharmony_cidqxor043 xor   1111111     100000010  ->  101111101
1417db96d56Sopenharmony_cidqxor044 xor    111111     100000100  ->  100111011
1427db96d56Sopenharmony_cidqxor045 xor     11111     100001000  ->  100010111
1437db96d56Sopenharmony_cidqxor046 xor      1111     100010000  ->  100011111
1447db96d56Sopenharmony_cidqxor047 xor       111     100100000  ->  100100111
1457db96d56Sopenharmony_cidqxor048 xor        11     101000000  ->  101000011
1467db96d56Sopenharmony_cidqxor049 xor         1     110000000  ->  110000001
1477db96d56Sopenharmony_ci
1487db96d56Sopenharmony_cidqxor050 xor 1111111111  1  ->  1111111110
1497db96d56Sopenharmony_cidqxor051 xor  111111111  1  ->  111111110
1507db96d56Sopenharmony_cidqxor052 xor   11111111  1  ->  11111110
1517db96d56Sopenharmony_cidqxor053 xor    1111111  1  ->  1111110
1527db96d56Sopenharmony_cidqxor054 xor     111111  1  ->  111110
1537db96d56Sopenharmony_cidqxor055 xor      11111  1  ->  11110
1547db96d56Sopenharmony_cidqxor056 xor       1111  1  ->  1110
1557db96d56Sopenharmony_cidqxor057 xor        111  1  ->  110
1567db96d56Sopenharmony_cidqxor058 xor         11  1  ->  10
1577db96d56Sopenharmony_cidqxor059 xor          1  1  ->  0
1587db96d56Sopenharmony_ci
1597db96d56Sopenharmony_cidqxor060 xor 1111111111  0  ->  1111111111
1607db96d56Sopenharmony_cidqxor061 xor  111111111  0  ->  111111111
1617db96d56Sopenharmony_cidqxor062 xor   11111111  0  ->  11111111
1627db96d56Sopenharmony_cidqxor063 xor    1111111  0  ->  1111111
1637db96d56Sopenharmony_cidqxor064 xor     111111  0  ->  111111
1647db96d56Sopenharmony_cidqxor065 xor      11111  0  ->  11111
1657db96d56Sopenharmony_cidqxor066 xor       1111  0  ->  1111
1667db96d56Sopenharmony_cidqxor067 xor        111  0  ->  111
1677db96d56Sopenharmony_cidqxor068 xor         11  0  ->  11
1687db96d56Sopenharmony_cidqxor069 xor          1  0  ->  1
1697db96d56Sopenharmony_ci
1707db96d56Sopenharmony_cidqxor070 xor 1  1111111111  ->  1111111110
1717db96d56Sopenharmony_cidqxor071 xor 1   111111111  ->  111111110
1727db96d56Sopenharmony_cidqxor072 xor 1    11111111  ->  11111110
1737db96d56Sopenharmony_cidqxor073 xor 1     1111111  ->  1111110
1747db96d56Sopenharmony_cidqxor074 xor 1      111111  ->  111110
1757db96d56Sopenharmony_cidqxor075 xor 1       11111  ->  11110
1767db96d56Sopenharmony_cidqxor076 xor 1        1111  ->  1110
1777db96d56Sopenharmony_cidqxor077 xor 1         111  ->  110
1787db96d56Sopenharmony_cidqxor078 xor 1          11  ->  10
1797db96d56Sopenharmony_cidqxor079 xor 1           1  ->  0
1807db96d56Sopenharmony_ci
1817db96d56Sopenharmony_cidqxor080 xor 0  1111111111  ->  1111111111
1827db96d56Sopenharmony_cidqxor081 xor 0   111111111  ->  111111111
1837db96d56Sopenharmony_cidqxor082 xor 0    11111111  ->  11111111
1847db96d56Sopenharmony_cidqxor083 xor 0     1111111  ->  1111111
1857db96d56Sopenharmony_cidqxor084 xor 0      111111  ->  111111
1867db96d56Sopenharmony_cidqxor085 xor 0       11111  ->  11111
1877db96d56Sopenharmony_cidqxor086 xor 0        1111  ->  1111
1887db96d56Sopenharmony_cidqxor087 xor 0         111  ->  111
1897db96d56Sopenharmony_cidqxor088 xor 0          11  ->  11
1907db96d56Sopenharmony_cidqxor089 xor 0           1  ->  1
1917db96d56Sopenharmony_ci
1927db96d56Sopenharmony_cidqxor090 xor 011111111  111101111  ->  100010000
1937db96d56Sopenharmony_cidqxor091 xor 101111111  111101111  ->   10010000
1947db96d56Sopenharmony_cidqxor092 xor 110111111  111101111  ->    1010000
1957db96d56Sopenharmony_cidqxor093 xor 111011111  111101111  ->     110000
1967db96d56Sopenharmony_cidqxor094 xor 111101111  111101111  ->          0
1977db96d56Sopenharmony_cidqxor095 xor 111110111  111101111  ->      11000
1987db96d56Sopenharmony_cidqxor096 xor 111111011  111101111  ->      10100
1997db96d56Sopenharmony_cidqxor097 xor 111111101  111101111  ->      10010
2007db96d56Sopenharmony_cidqxor098 xor 111111110  111101111  ->      10001
2017db96d56Sopenharmony_ci
2027db96d56Sopenharmony_cidqxor100 xor 111101111  011111111  ->  100010000
2037db96d56Sopenharmony_cidqxor101 xor 111101111  101111111  ->   10010000
2047db96d56Sopenharmony_cidqxor102 xor 111101111  110111111  ->    1010000
2057db96d56Sopenharmony_cidqxor103 xor 111101111  111011111  ->     110000
2067db96d56Sopenharmony_cidqxor104 xor 111101111  111101111  ->          0
2077db96d56Sopenharmony_cidqxor105 xor 111101111  111110111  ->      11000
2087db96d56Sopenharmony_cidqxor106 xor 111101111  111111011  ->      10100
2097db96d56Sopenharmony_cidqxor107 xor 111101111  111111101  ->      10010
2107db96d56Sopenharmony_cidqxor108 xor 111101111  111111110  ->      10001
2117db96d56Sopenharmony_ci
2127db96d56Sopenharmony_ci-- non-0/1 should not be accepted, nor should signs
2137db96d56Sopenharmony_cidqxor220 xor 111111112  111111111  ->  NaN Invalid_operation
2147db96d56Sopenharmony_cidqxor221 xor 333333333  333333333  ->  NaN Invalid_operation
2157db96d56Sopenharmony_cidqxor222 xor 555555555  555555555  ->  NaN Invalid_operation
2167db96d56Sopenharmony_cidqxor223 xor 777777777  777777777  ->  NaN Invalid_operation
2177db96d56Sopenharmony_cidqxor224 xor 999999999  999999999  ->  NaN Invalid_operation
2187db96d56Sopenharmony_cidqxor225 xor 222222222  999999999  ->  NaN Invalid_operation
2197db96d56Sopenharmony_cidqxor226 xor 444444444  999999999  ->  NaN Invalid_operation
2207db96d56Sopenharmony_cidqxor227 xor 666666666  999999999  ->  NaN Invalid_operation
2217db96d56Sopenharmony_cidqxor228 xor 888888888  999999999  ->  NaN Invalid_operation
2227db96d56Sopenharmony_cidqxor229 xor 999999999  222222222  ->  NaN Invalid_operation
2237db96d56Sopenharmony_cidqxor230 xor 999999999  444444444  ->  NaN Invalid_operation
2247db96d56Sopenharmony_cidqxor231 xor 999999999  666666666  ->  NaN Invalid_operation
2257db96d56Sopenharmony_cidqxor232 xor 999999999  888888888  ->  NaN Invalid_operation
2267db96d56Sopenharmony_ci-- a few randoms
2277db96d56Sopenharmony_cidqxor240 xor  567468689 -934981942 ->  NaN Invalid_operation
2287db96d56Sopenharmony_cidqxor241 xor  567367689  934981942 ->  NaN Invalid_operation
2297db96d56Sopenharmony_cidqxor242 xor -631917772 -706014634 ->  NaN Invalid_operation
2307db96d56Sopenharmony_cidqxor243 xor -756253257  138579234 ->  NaN Invalid_operation
2317db96d56Sopenharmony_cidqxor244 xor  835590149  567435400 ->  NaN Invalid_operation
2327db96d56Sopenharmony_ci-- test MSD
2337db96d56Sopenharmony_cidqxor250 xor  2000000111000111000111000000000000 1000000111000111000111000000000000 ->  NaN Invalid_operation
2347db96d56Sopenharmony_cidqxor251 xor  7000000111000111000111000000000000 1000000111000111000111000000000000 ->  NaN Invalid_operation
2357db96d56Sopenharmony_cidqxor252 xor  8000000111000111000111000000000000 1000000111000111000111000000000000 ->  NaN Invalid_operation
2367db96d56Sopenharmony_cidqxor253 xor  9000000111000111000111000000000000 1000000111000111000111000000000000 ->  NaN Invalid_operation
2377db96d56Sopenharmony_cidqxor254 xor  2000000111000111000111000000000000 0000000111000111000111000000000000 ->  NaN Invalid_operation
2387db96d56Sopenharmony_cidqxor255 xor  7000000111000111000111000000000000 0000000111000111000111000000000000 ->  NaN Invalid_operation
2397db96d56Sopenharmony_cidqxor256 xor  8000000111000111000111000000000000 0000000111000111000111000000000000 ->  NaN Invalid_operation
2407db96d56Sopenharmony_cidqxor257 xor  9000000111000111000111000000000000 0000000111000111000111000000000000 ->  NaN Invalid_operation
2417db96d56Sopenharmony_cidqxor258 xor  1000000111000111000111000000000000 2000000111000111000111000000000000 ->  NaN Invalid_operation
2427db96d56Sopenharmony_cidqxor259 xor  1000000111000111000111000000000000 7000000111000111000111000000000000 ->  NaN Invalid_operation
2437db96d56Sopenharmony_cidqxor260 xor  1000000111000111000111000000000000 8000000111000111000111000000000000 ->  NaN Invalid_operation
2447db96d56Sopenharmony_cidqxor261 xor  1000000111000111000111000000000000 9000000111000111000111000000000000 ->  NaN Invalid_operation
2457db96d56Sopenharmony_cidqxor262 xor  0000000111000111000111000000000000 2000000111000111000111000000000000 ->  NaN Invalid_operation
2467db96d56Sopenharmony_cidqxor263 xor  0000000111000111000111000000000000 7000000111000111000111000000000000 ->  NaN Invalid_operation
2477db96d56Sopenharmony_cidqxor264 xor  0000000111000111000111000000000000 8000000111000111000111000000000000 ->  NaN Invalid_operation
2487db96d56Sopenharmony_cidqxor265 xor  0000000111000111000111000000000000 9000000111000111000111000000000000 ->  NaN Invalid_operation
2497db96d56Sopenharmony_ci-- test MSD-1
2507db96d56Sopenharmony_cidqxor270 xor  0200000111000111000111001000000000 1000000111000111000111100000000010 ->  NaN Invalid_operation
2517db96d56Sopenharmony_cidqxor271 xor  0700000111000111000111000100000000 1000000111000111000111010000000100 ->  NaN Invalid_operation
2527db96d56Sopenharmony_cidqxor272 xor  0800000111000111000111000010000000 1000000111000111000111001000001000 ->  NaN Invalid_operation
2537db96d56Sopenharmony_cidqxor273 xor  0900000111000111000111000001000000 1000000111000111000111000100010000 ->  NaN Invalid_operation
2547db96d56Sopenharmony_cidqxor274 xor  1000000111000111000111000000100000 0200000111000111000111000010100000 ->  NaN Invalid_operation
2557db96d56Sopenharmony_cidqxor275 xor  1000000111000111000111000000010000 0700000111000111000111000001000000 ->  NaN Invalid_operation
2567db96d56Sopenharmony_cidqxor276 xor  1000000111000111000111000000001000 0800000111000111000111000010100000 ->  NaN Invalid_operation
2577db96d56Sopenharmony_cidqxor277 xor  1000000111000111000111000000000100 0900000111000111000111000000010000 ->  NaN Invalid_operation
2587db96d56Sopenharmony_ci-- test LSD
2597db96d56Sopenharmony_cidqxor280 xor  0010000111000111000111000000000002 1000000111000111000111000100000001 ->  NaN Invalid_operation
2607db96d56Sopenharmony_cidqxor281 xor  0001000111000111000111000000000007 1000000111000111000111001000000011 ->  NaN Invalid_operation
2617db96d56Sopenharmony_cidqxor282 xor  0000000111000111000111100000000008 1000000111000111000111010000000001 ->  NaN Invalid_operation
2627db96d56Sopenharmony_cidqxor283 xor  0000000111000111000111010000000009 1000000111000111000111100000000001 ->  NaN Invalid_operation
2637db96d56Sopenharmony_cidqxor284 xor  1000000111000111000111001000000000 0001000111000111000111000000000002 ->  NaN Invalid_operation
2647db96d56Sopenharmony_cidqxor285 xor  1000000111000111000111000100000000 0010000111000111000111000000000007 ->  NaN Invalid_operation
2657db96d56Sopenharmony_cidqxor286 xor  1000000111000111000111000010000000 0100000111000111000111000000000008 ->  NaN Invalid_operation
2667db96d56Sopenharmony_cidqxor287 xor  1000000111000111000111000001000000 1000000111000111000111000000000009 ->  NaN Invalid_operation
2677db96d56Sopenharmony_ci-- test Middie
2687db96d56Sopenharmony_cidqxor288 xor  0010000111000111000111000020000000 1000000111000111000111001000000000 ->  NaN Invalid_operation
2697db96d56Sopenharmony_cidqxor289 xor  0001000111000111000111000070000001 1000000111000111000111000100000000 ->  NaN Invalid_operation
2707db96d56Sopenharmony_cidqxor290 xor  0000000111000111000111100080000010 1000000111000111000111000010000000 ->  NaN Invalid_operation
2717db96d56Sopenharmony_cidqxor291 xor  0000000111000111000111010090000100 1000000111000111000111000001000000 ->  NaN Invalid_operation
2727db96d56Sopenharmony_cidqxor292 xor  1000000111000111000111001000001000 0000000111000111000111000020100000 ->  NaN Invalid_operation
2737db96d56Sopenharmony_cidqxor293 xor  1000000111000111000111000100010000 0000000111000111000111000070010000 ->  NaN Invalid_operation
2747db96d56Sopenharmony_cidqxor294 xor  1000000111000111000111000010100000 0000000111000111000111000080001000 ->  NaN Invalid_operation
2757db96d56Sopenharmony_cidqxor295 xor  1000000111000111000111000001000000 0000000111000111000111000090000100 ->  NaN Invalid_operation
2767db96d56Sopenharmony_ci-- signs
2777db96d56Sopenharmony_cidqxor296 xor -1000000111000111000111000001000000 -0000001110001110001110010000000100 ->  NaN Invalid_operation
2787db96d56Sopenharmony_cidqxor297 xor -1000000111000111000111000001000000  0000001110001110001110000010000100 ->  NaN Invalid_operation
2797db96d56Sopenharmony_cidqxor298 xor  1000000111000111000111000001000000 -0000001110001110001110001000000100 ->  NaN Invalid_operation
2807db96d56Sopenharmony_cidqxor299 xor  1000000111000111000111000001000000  0000001110001110001110000011000100 ->  1000001001001001001001000010000100
2817db96d56Sopenharmony_ci
2827db96d56Sopenharmony_ci-- Nmax, Nmin, Ntiny-like
2837db96d56Sopenharmony_cidqxor331 xor  2   9.99999999E+999     -> NaN Invalid_operation
2847db96d56Sopenharmony_cidqxor332 xor  3   1E-999              -> NaN Invalid_operation
2857db96d56Sopenharmony_cidqxor333 xor  4   1.00000000E-2821    -> NaN Invalid_operation
2867db96d56Sopenharmony_cidqxor334 xor  5   1E-900              -> NaN Invalid_operation
2877db96d56Sopenharmony_cidqxor335 xor  6   -1E-900             -> NaN Invalid_operation
2887db96d56Sopenharmony_cidqxor336 xor  7   -1.00000000E-999    -> NaN Invalid_operation
2897db96d56Sopenharmony_cidqxor337 xor  8   -1E-999             -> NaN Invalid_operation
2907db96d56Sopenharmony_cidqxor338 xor  9   -9.99999999E+999    -> NaN Invalid_operation
2917db96d56Sopenharmony_cidqxor341 xor  9.99999999E+999     -18 -> NaN Invalid_operation
2927db96d56Sopenharmony_cidqxor342 xor  1E-999               01 -> NaN Invalid_operation
2937db96d56Sopenharmony_cidqxor343 xor  1.00000000E-999     -18 -> NaN Invalid_operation
2947db96d56Sopenharmony_cidqxor344 xor  1E-908               18 -> NaN Invalid_operation
2957db96d56Sopenharmony_cidqxor345 xor  -1E-907             -10 -> NaN Invalid_operation
2967db96d56Sopenharmony_cidqxor346 xor  -1.00000000E-999     18 -> NaN Invalid_operation
2977db96d56Sopenharmony_cidqxor347 xor  -1E-999              10 -> NaN Invalid_operation
2987db96d56Sopenharmony_cidqxor348 xor  -9.99999999E+2991   -18 -> NaN Invalid_operation
2997db96d56Sopenharmony_ci
3007db96d56Sopenharmony_ci-- A few other non-integers
3017db96d56Sopenharmony_cidqxor361 xor  1.0                  1  -> NaN Invalid_operation
3027db96d56Sopenharmony_cidqxor362 xor  1E+1                 1  -> NaN Invalid_operation
3037db96d56Sopenharmony_cidqxor363 xor  0.0                  1  -> NaN Invalid_operation
3047db96d56Sopenharmony_cidqxor364 xor  0E+1                 1  -> NaN Invalid_operation
3057db96d56Sopenharmony_cidqxor365 xor  9.9                  1  -> NaN Invalid_operation
3067db96d56Sopenharmony_cidqxor366 xor  9E+1                 1  -> NaN Invalid_operation
3077db96d56Sopenharmony_cidqxor371 xor  0 1.0                   -> NaN Invalid_operation
3087db96d56Sopenharmony_cidqxor372 xor  0 1E+1                  -> NaN Invalid_operation
3097db96d56Sopenharmony_cidqxor373 xor  0 0.0                   -> NaN Invalid_operation
3107db96d56Sopenharmony_cidqxor374 xor  0 0E+1                  -> NaN Invalid_operation
3117db96d56Sopenharmony_cidqxor375 xor  0 9.9                   -> NaN Invalid_operation
3127db96d56Sopenharmony_cidqxor376 xor  0 9E+1                  -> NaN Invalid_operation
3137db96d56Sopenharmony_ci
3147db96d56Sopenharmony_ci-- All Specials are in error
3157db96d56Sopenharmony_cidqxor780 xor -Inf  -Inf   -> NaN Invalid_operation
3167db96d56Sopenharmony_cidqxor781 xor -Inf  -1000  -> NaN Invalid_operation
3177db96d56Sopenharmony_cidqxor782 xor -Inf  -1     -> NaN Invalid_operation
3187db96d56Sopenharmony_cidqxor783 xor -Inf  -0     -> NaN Invalid_operation
3197db96d56Sopenharmony_cidqxor784 xor -Inf   0     -> NaN Invalid_operation
3207db96d56Sopenharmony_cidqxor785 xor -Inf   1     -> NaN Invalid_operation
3217db96d56Sopenharmony_cidqxor786 xor -Inf   1000  -> NaN Invalid_operation
3227db96d56Sopenharmony_cidqxor787 xor -1000 -Inf   -> NaN Invalid_operation
3237db96d56Sopenharmony_cidqxor788 xor -Inf  -Inf   -> NaN Invalid_operation
3247db96d56Sopenharmony_cidqxor789 xor -1    -Inf   -> NaN Invalid_operation
3257db96d56Sopenharmony_cidqxor790 xor -0    -Inf   -> NaN Invalid_operation
3267db96d56Sopenharmony_cidqxor791 xor  0    -Inf   -> NaN Invalid_operation
3277db96d56Sopenharmony_cidqxor792 xor  1    -Inf   -> NaN Invalid_operation
3287db96d56Sopenharmony_cidqxor793 xor  1000 -Inf   -> NaN Invalid_operation
3297db96d56Sopenharmony_cidqxor794 xor  Inf  -Inf   -> NaN Invalid_operation
3307db96d56Sopenharmony_ci
3317db96d56Sopenharmony_cidqxor800 xor  Inf  -Inf   -> NaN Invalid_operation
3327db96d56Sopenharmony_cidqxor801 xor  Inf  -1000  -> NaN Invalid_operation
3337db96d56Sopenharmony_cidqxor802 xor  Inf  -1     -> NaN Invalid_operation
3347db96d56Sopenharmony_cidqxor803 xor  Inf  -0     -> NaN Invalid_operation
3357db96d56Sopenharmony_cidqxor804 xor  Inf   0     -> NaN Invalid_operation
3367db96d56Sopenharmony_cidqxor805 xor  Inf   1     -> NaN Invalid_operation
3377db96d56Sopenharmony_cidqxor806 xor  Inf   1000  -> NaN Invalid_operation
3387db96d56Sopenharmony_cidqxor807 xor  Inf   Inf   -> NaN Invalid_operation
3397db96d56Sopenharmony_cidqxor808 xor -1000  Inf   -> NaN Invalid_operation
3407db96d56Sopenharmony_cidqxor809 xor -Inf   Inf   -> NaN Invalid_operation
3417db96d56Sopenharmony_cidqxor810 xor -1     Inf   -> NaN Invalid_operation
3427db96d56Sopenharmony_cidqxor811 xor -0     Inf   -> NaN Invalid_operation
3437db96d56Sopenharmony_cidqxor812 xor  0     Inf   -> NaN Invalid_operation
3447db96d56Sopenharmony_cidqxor813 xor  1     Inf   -> NaN Invalid_operation
3457db96d56Sopenharmony_cidqxor814 xor  1000  Inf   -> NaN Invalid_operation
3467db96d56Sopenharmony_cidqxor815 xor  Inf   Inf   -> NaN Invalid_operation
3477db96d56Sopenharmony_ci
3487db96d56Sopenharmony_cidqxor821 xor  NaN -Inf    -> NaN Invalid_operation
3497db96d56Sopenharmony_cidqxor822 xor  NaN -1000   -> NaN Invalid_operation
3507db96d56Sopenharmony_cidqxor823 xor  NaN -1      -> NaN Invalid_operation
3517db96d56Sopenharmony_cidqxor824 xor  NaN -0      -> NaN Invalid_operation
3527db96d56Sopenharmony_cidqxor825 xor  NaN  0      -> NaN Invalid_operation
3537db96d56Sopenharmony_cidqxor826 xor  NaN  1      -> NaN Invalid_operation
3547db96d56Sopenharmony_cidqxor827 xor  NaN  1000   -> NaN Invalid_operation
3557db96d56Sopenharmony_cidqxor828 xor  NaN  Inf    -> NaN Invalid_operation
3567db96d56Sopenharmony_cidqxor829 xor  NaN  NaN    -> NaN Invalid_operation
3577db96d56Sopenharmony_cidqxor830 xor -Inf  NaN    -> NaN Invalid_operation
3587db96d56Sopenharmony_cidqxor831 xor -1000 NaN    -> NaN Invalid_operation
3597db96d56Sopenharmony_cidqxor832 xor -1    NaN    -> NaN Invalid_operation
3607db96d56Sopenharmony_cidqxor833 xor -0    NaN    -> NaN Invalid_operation
3617db96d56Sopenharmony_cidqxor834 xor  0    NaN    -> NaN Invalid_operation
3627db96d56Sopenharmony_cidqxor835 xor  1    NaN    -> NaN Invalid_operation
3637db96d56Sopenharmony_cidqxor836 xor  1000 NaN    -> NaN Invalid_operation
3647db96d56Sopenharmony_cidqxor837 xor  Inf  NaN    -> NaN Invalid_operation
3657db96d56Sopenharmony_ci
3667db96d56Sopenharmony_cidqxor841 xor  sNaN -Inf   ->  NaN  Invalid_operation
3677db96d56Sopenharmony_cidqxor842 xor  sNaN -1000  ->  NaN  Invalid_operation
3687db96d56Sopenharmony_cidqxor843 xor  sNaN -1     ->  NaN  Invalid_operation
3697db96d56Sopenharmony_cidqxor844 xor  sNaN -0     ->  NaN  Invalid_operation
3707db96d56Sopenharmony_cidqxor845 xor  sNaN  0     ->  NaN  Invalid_operation
3717db96d56Sopenharmony_cidqxor846 xor  sNaN  1     ->  NaN  Invalid_operation
3727db96d56Sopenharmony_cidqxor847 xor  sNaN  1000  ->  NaN  Invalid_operation
3737db96d56Sopenharmony_cidqxor848 xor  sNaN  NaN   ->  NaN  Invalid_operation
3747db96d56Sopenharmony_cidqxor849 xor  sNaN sNaN   ->  NaN  Invalid_operation
3757db96d56Sopenharmony_cidqxor850 xor  NaN  sNaN   ->  NaN  Invalid_operation
3767db96d56Sopenharmony_cidqxor851 xor -Inf  sNaN   ->  NaN  Invalid_operation
3777db96d56Sopenharmony_cidqxor852 xor -1000 sNaN   ->  NaN  Invalid_operation
3787db96d56Sopenharmony_cidqxor853 xor -1    sNaN   ->  NaN  Invalid_operation
3797db96d56Sopenharmony_cidqxor854 xor -0    sNaN   ->  NaN  Invalid_operation
3807db96d56Sopenharmony_cidqxor855 xor  0    sNaN   ->  NaN  Invalid_operation
3817db96d56Sopenharmony_cidqxor856 xor  1    sNaN   ->  NaN  Invalid_operation
3827db96d56Sopenharmony_cidqxor857 xor  1000 sNaN   ->  NaN  Invalid_operation
3837db96d56Sopenharmony_cidqxor858 xor  Inf  sNaN   ->  NaN  Invalid_operation
3847db96d56Sopenharmony_cidqxor859 xor  NaN  sNaN   ->  NaN  Invalid_operation
3857db96d56Sopenharmony_ci
3867db96d56Sopenharmony_ci-- propagating NaNs
3877db96d56Sopenharmony_cidqxor861 xor  NaN1   -Inf    -> NaN Invalid_operation
3887db96d56Sopenharmony_cidqxor862 xor +NaN2   -1000   -> NaN Invalid_operation
3897db96d56Sopenharmony_cidqxor863 xor  NaN3    1000   -> NaN Invalid_operation
3907db96d56Sopenharmony_cidqxor864 xor  NaN4    Inf    -> NaN Invalid_operation
3917db96d56Sopenharmony_cidqxor865 xor  NaN5   +NaN6   -> NaN Invalid_operation
3927db96d56Sopenharmony_cidqxor866 xor -Inf     NaN7   -> NaN Invalid_operation
3937db96d56Sopenharmony_cidqxor867 xor -1000    NaN8   -> NaN Invalid_operation
3947db96d56Sopenharmony_cidqxor868 xor  1000    NaN9   -> NaN Invalid_operation
3957db96d56Sopenharmony_cidqxor869 xor  Inf    +NaN10  -> NaN Invalid_operation
3967db96d56Sopenharmony_cidqxor871 xor  sNaN11  -Inf   -> NaN Invalid_operation
3977db96d56Sopenharmony_cidqxor872 xor  sNaN12  -1000  -> NaN Invalid_operation
3987db96d56Sopenharmony_cidqxor873 xor  sNaN13   1000  -> NaN Invalid_operation
3997db96d56Sopenharmony_cidqxor874 xor  sNaN14   NaN17 -> NaN Invalid_operation
4007db96d56Sopenharmony_cidqxor875 xor  sNaN15  sNaN18 -> NaN Invalid_operation
4017db96d56Sopenharmony_cidqxor876 xor  NaN16   sNaN19 -> NaN Invalid_operation
4027db96d56Sopenharmony_cidqxor877 xor -Inf    +sNaN20 -> NaN Invalid_operation
4037db96d56Sopenharmony_cidqxor878 xor -1000    sNaN21 -> NaN Invalid_operation
4047db96d56Sopenharmony_cidqxor879 xor  1000    sNaN22 -> NaN Invalid_operation
4057db96d56Sopenharmony_cidqxor880 xor  Inf     sNaN23 -> NaN Invalid_operation
4067db96d56Sopenharmony_cidqxor881 xor +NaN25  +sNaN24 -> NaN Invalid_operation
4077db96d56Sopenharmony_cidqxor882 xor -NaN26    NaN28 -> NaN Invalid_operation
4087db96d56Sopenharmony_cidqxor883 xor -sNaN27  sNaN29 -> NaN Invalid_operation
4097db96d56Sopenharmony_cidqxor884 xor  1000    -NaN30 -> NaN Invalid_operation
4107db96d56Sopenharmony_cidqxor885 xor  1000   -sNaN31 -> NaN Invalid_operation
411