Lines Matching defs:d7
81 #define d7 REG (d7)
371 | It expects the exception type in d7, the format (SINGLE_FLOAT,
386 movew d7,a0@(EBITS) | set __exception_bits
388 orw d7,a0@(STICK) | and __sticky_bits
391 orl d7,d4
414 andw a0@(TRAPE),d7 | is exception trap-enabled?
418 andl d6,d7
424 1: moveml sp@+,d2-d7 | restore data registers
426 1: moveml sp@,d2-d7
687 orl d7,d0
688 movew IMM (INEXACT_RESULT+UNDERFLOW),d7
697 orl d7,d0
698 movew IMM (INEXACT_RESULT+OVERFLOW),d7
706 movew IMM (INEXACT_RESULT+UNDERFLOW),d7
714 movew IMM (INEXACT_RESULT+INVALID_OPERATION),d7
722 orl d7,d0
723 movew IMM (INEXACT_RESULT+DIVIDE_BY_ZERO),d7
765 moveml d2-d7,sp@- | save all data registers and a2 (but d0-d1)
768 moveml d2-d7,sp@
775 movel d0,d7 | get d0's sign bit in d7 '
785 andl IMM (0x80000000),d7 | isolate a's sign bit '
789 orw d6,d7 | and combine them into d7, so that a's sign '
794 orl d6,d7
796 movel d7,a0 | now save d7 into a0, so d7 is free to
802 movel IMM (0x00200000),d7 | mask to put hidden bit back
811 orl d7,d0 | and put hidden bit back
827 orl d7,d2 | and put hidden bit back
842 | and d4-d5-d6-d7 for the second. To do this we store (temporarily) the
856 movel IMM (0),d7 | and move the numbers around
857 movel d7,d6 |
860 movel d7,d3 |
861 movel d7,d2 |
924 roxrl IMM (1),d7
926 lsrl IMM (1),d7
929 bset IMM (31),d7
951 movel d6,d7
962 movew d6,d7
963 swap d7
1046 movel IMM (0),d7
1047 movel d7,d6
1088 | Now we have the numbers in d0--d3 and d4--d7, the exponent in a2, and
1093 exg d7,a0 | get the signs
1096 movel d7,a4
1097 movel a0,d7
1103 movel d7,d6 |
1104 movew IMM (0),d7 | get a's sign in d7 '
1107 eorl d7,d6 | compare the signs
1111 exg d7,a0 | else we add the numbers
1114 movel d7,a4
1115 movel a0,d7
1121 addl d7,d3 |
1127 movel a0,d7 |
1128 andl IMM (0x80000000),d7 | d7 now has the sign
1211 exg d7,a0 | put sign back in a0
1214 movel d7,a4
1215 movel a0,d7
1221 subl d7,d3 |
1227 movel a0,d7 |
1228 bchg IMM (31),d7 | change sign bit in d7
1229 movel d7,a0 |
1236 movel a0,d7
1237 andl IMM (0x80000000),d7 | isolate sign bit
1323 moveml sp@+,d2-d7 | restore data registers
1325 moveml sp@,d2-d7
1345 moveml sp@+,d2-d7 | restore data registers
1347 moveml sp@,d2-d7
1355 movel d7,d4 | d7 contains 0x00200000
1359 movel d7,d5 | d7 contains 0x00200000
1370 andl IMM (0x80000000),d7 | Use the sign of a
1379 movel d0,d7 |
1380 andl IMM (0x80000000),d7 |
1386 bclr IMM (31),d7 |
1407 orl d7,d0 | put sign bit back
1409 moveml sp@+,d2-d7
1411 moveml sp@,d2-d7
1441 movel d0,d7 | save sign bits
1461 eorl d7,d6 | to check sign bits
1463 andl IMM (0x80000000),d7 | get (common) sign bit
1474 andl IMM (0x80000000),d7 | get a's sign bit '
1477 bchg IMM (31),d7 | else we know b is INFINITY and has
1489 moveml d2-d7,sp@-
1492 moveml d2-d7,sp@
1498 movel d0,d7 | d7 will hold the sign of the product
1499 eorl d2,d7 |
1500 andl IMM (0x80000000),d7 |
1501 movel d7,a0 | save sign bit into a0
1502 movel IMM (0x7ff00000),d7 | useful constant (+INFINITY)
1503 movel d7,d6 | another (mask for fraction)
1515 cmpl d7,d0 | is a big?
1518 cmpl d7,d2 | now compare b with INFINITY
1523 andl d7,d4 | isolate exponent in d4
1534 andl d7,d5 |
1584 moveq IMM (11),d7 | left shift d2 11 bits
1585 lsll d7,d2
1587 lsll d7,d3 | left shift d3 11 bits
1589 moveq IMM (21),d7 | right shift them 21 bits
1590 lsrl d7,d6
1594 movel d2,d6 | move b into d6-d7
1595 movel d3,d7 | move a into d4-d5
1606 exg d7,a1
1608 movel d7,a4
1609 movel a1,d7
1615 exg d7,a1 | put counter back in a1
1617 movel d7,a4
1618 movel a1,d7
1625 addl d7,d7 |
1629 exg d7,a2 |
1631 movel d7,a4
1632 movel a2,d7
1637 addxl d7,d1 |
1638 addxl d7,d0 |
1640 exg d7,a2 |
1642 movel d7,a4
1643 movel a2,d7
1648 exg d7,a1 | put counter in d7
1649 dbf d7,1b | decrement and branch
1651 movel d7,a4
1652 movel a1,d7
1654 subql IMM (1),d7
1694 movel d2,d7
1695 lsll d6,d7
1696 orl d7,d3
1698 movel d1,d7
1699 lsll d6,d7
1700 orl d7,d2
1702 movel d0,d7
1703 lsll d6,d7
1704 orl d7,d1
1709 movel a0,d7 | get sign bit back into d7
1734 movel a0,d7 | get sign bit back into d7
1741 movel a0,d7 | get sign bit back into d7
1771 moveml sp@+,d2-d7
1773 moveml sp@,d2-d7
1822 moveml d2-d7,sp@-
1825 moveml d2-d7,sp@
1831 movel d0,d7 | d7 will hold the sign of the result
1832 eorl d2,d7 |
1833 andl IMM (0x80000000),d7
1834 movel d7,a0 | save sign into a0
1835 movel IMM (0x7ff00000),d7 | useful constant (+INFINITY)
1836 movel d7,d6 | another (mask for fraction)
1848 cmpl d7,d0 | is a big?
1851 cmpl d7,d2 | now compare b with INFINITY
1860 andl d7,d4 | and isolate exponent in d4
1871 andl d7,d5 |
1905 movel IMM (0),d6 | d6-d7 will hold the result
1906 movel d6,d7 |
1938 bset d5,d7 | set the corresponding bit in d7
1997 movel d7,d1
2030 movel a0,d7 | restore sign bit to d7
2057 moveml sp@+,d2-d7 |
2059 moveml sp@,d2-d7 |
2071 movel a0,d7 | put a's sign bit back in d7 '
2091 cmpl d7,d2 | compare b with INFINITY
2129 | this point the sign of the result is in d7, the result in d0-d1, normalized
2143 movel d7,a0 |
2144 movel IMM (0),d6 | use d6-d7 to collect bits flushed right
2145 movel d6,d7 | use d6-d7 to collect bits flushed right
2160 roxrl IMM (1),d7 |
2164 lsrl IMM (1),d7
2167 bset IMM (31),d7
2191 orl d7,d3 | the bits which were flushed right
2192 movel a0,d7 | get back sign bit into d7
2241 orl d7,d0 | and sign also
2246 moveml sp@+,d2-d7
2248 moveml sp@,d2-d7
2264 moveml d2-d7,sp@-
2267 moveml d2-d7,sp@
2283 movel d0,d7 | else get sign and return INFINITY
2284 andl IMM (0x80000000),d7
2289 moveml sp@+,d2-d7
2291 moveml sp@,d2-d7
2312 moveml d2-d7,sp@- | save registers
2315 moveml d2-d7,sp@
2324 movel d0,d6 | copy signs into d6 (a) and d7(b)
2326 movel d2,d7 |
2343 eorl d6,d7
2358 movel d0,d7
2360 movel d7,d2
2361 movel d1,d7
2363 movel d7,d3
2378 moveml sp@+,d2-d7 | put back the registers
2380 moveml sp@,d2-d7
2389 moveml sp@+,d2-d7 | put back the registers
2391 moveml sp@,d2-d7
2400 moveml sp@+,d2-d7 | put back the registers
2402 moveml sp@,d2-d7
2413 bclr IMM (31),d7
2428 moveq IMM (INEXACT_RESULT+INVALID_OPERATION),d7
2602 orl d7,d0
2603 moveq IMM (INEXACT_RESULT+UNDERFLOW),d7
2611 orl d7,d0
2612 moveq IMM (INEXACT_RESULT+OVERFLOW),d7
2619 moveq IMM (INEXACT_RESULT+UNDERFLOW),d7
2626 moveq IMM (INEXACT_RESULT+INVALID_OPERATION),d7
2633 orl d7,d0
2634 moveq IMM (INEXACT_RESULT+DIVIDE_BY_ZERO),d7
2676 moveml d2-d7,sp@- | save all data registers but d0-d1
2679 moveml d2-d7,sp@
2706 movel d1,d7 | get exponent in d7
2707 andl d4,d7 |
2709 cmpl d4,d7 | check for INFINITY or NaN
2711 swap d7 | put exponent into first word
2716 | Now we have b's exponent in d7 (second byte) and the mantissa in d1. '
2732 cmpw d6,d7 | compare exponents
2734 cmpl d6,d7 | compare exponents
2739 subl d6,d7 | keep the largest exponent
2740 negl d7
2742 lsrw IMM (8),d7 | put difference in lower byte
2744 lsrl IMM (8),d7 | put difference in lower byte
2748 cmpw IMM (FLT_MANT_DIG+2),d7
2750 cmpl IMM (FLT_MANT_DIG+2),d7
2754 cmpw IMM (16),d7 | if difference >= 16 swap
2756 cmpl IMM (16),d7 | if difference >= 16 swap
2761 subw IMM (1),d7
2763 subql IMM (1), d7
2769 dbra d7,3b
2776 subql IMM (1), d7
2786 subw IMM (16),d7
2788 subl IMM (16),d7
2794 exg d6,d7 | exchange the exponents
2796 eorl d6,d7
2797 eorl d7,d6
2798 eorl d6,d7
2800 subl d6,d7 | keep the largest exponent
2801 negl d7 |
2803 lsrw IMM (8),d7 | put difference in lower byte
2805 lsrl IMM (8),d7 | put difference in lower byte
2809 cmpw IMM (FLT_MANT_DIG+2),d7
2811 cmpl IMM (FLT_MANT_DIG+2),d7
2815 cmpw IMM (16),d7 | if difference >= 16 swap
2817 cmpl IMM (16),d7 | if difference >= 16 swap
2822 subw IMM (1),d7
2824 subl IMM (1),d7
2830 dbra d7,7b
2837 subql IMM (1),d7
2847 subw IMM (16),d7
2849 subl IMM (16),d7
2861 exg d7,a1 | and save the exponents
2866 movel d7,d4
2867 movel a1,d7
2870 eorl d6,d7 | combine sign bits
2883 movel a0,d7 | and sign in d7
2884 andl IMM (0x80000000),d7
2956 movel d6,d7 | put sign in d7
2957 andl IMM (0x80000000),d7
2963 bchg IMM (31),d7 | change sign bit in d7
2977 | Now d0-d1 is positive and the sign bit is in d7.
3017 moveml sp@+,d2-d7 | restore data registers
3019 moveml sp@,d2-d7
3031 moveml sp@+,d2-d7 | restore data registers
3033 moveml sp@,d2-d7
3048 movel d5,d7
3049 swap d7
3062 movel a0,d7
3063 andl IMM (0x80000000),d7 | Use the sign of a
3072 movel d0,d7
3073 andl IMM (0x80000000),d7 | put sign in d7
3079 bclr IMM (31),d7 | if zero be sure to clear sign
3092 orl d7,d0 | put sign bit
3094 moveml sp@+,d2-d7 | restore data registers
3096 moveml sp@,d2-d7
3123 movel d0,d7 | into d7 as well as we may need the sign
3139 andl IMM (0x80000000),d7 | get (common) sign bit
3148 andl IMM (0x80000000),d7 | get a's sign bit '
3151 bchg IMM (31),d7 | else we know b is INFINITY and has
3163 moveml d2-d7,sp@-
3166 moveml d2-d7,sp@
3170 movel d0,d7 | d7 will hold the sign of the product
3171 eorl d1,d7 |
3172 andl IMM (0x80000000),d7
3310 | return INFINITY with the correct sign (which is in d7).
3326 movel d7,d0 | else return signed zero
3330 moveml sp@+,d2-d7 |
3332 moveml sp@,d2-d7
3378 moveml d2-d7,sp@-
3381 moveml d2-d7,sp@
3385 movel d0,d7 | d7 will hold the sign of the result
3386 eorl d1,d7 |
3387 andl IMM (0x80000000),d7 |
3444 | d7 holds the sign of the ratio
3446 movel d7,a0 | d6-d7 will hold the ratio of the fractions
3448 movel d6,d7
3488 movel a0,d7 | get sign back
3527 movel d7,d0 | else return signed zero
3531 moveml sp@+,d2-d7 |
3533 moveml sp@,d2-d7 |
3678 orl d7,d0 | and sign also
3683 moveml sp@+,d2-d7
3685 moveml sp@,d2-d7
3704 moveml d2-d7,sp@-
3707 moveml d2-d7,sp@
3719 movel d0,d7 | else get sign and return INFINITY
3720 andl IMM (0x80000000),d7
3725 moveml sp@+,d2-d7
3727 moveml sp@,d2-d7
3748 moveml d2-d7,sp@- | save registers
3751 moveml d2-d7,sp@
3765 movel d1,d7
3772 eorl d6,d7
3786 movel d0,d7
3788 movel d7,d1
3799 moveml sp@+,d2-d7 | put back the registers
3801 moveml sp@,d2-d7
3808 moveml sp@+,d2-d7 | put back the registers
3810 moveml sp@,d2-d7
3819 moveml sp@+,d2-d7 | put back the registers
3821 moveml sp@,d2-d7
3832 bclr IMM (31),d7
3837 moveq IMM (INEXACT_RESULT+INVALID_OPERATION),d7