diff options
Diffstat (limited to 'arch/m68k/ifpsp060/src')
-rw-r--r-- | arch/m68k/ifpsp060/src/fpsp.S | 28 | ||||
-rw-r--r-- | arch/m68k/ifpsp060/src/pfpsp.S | 26 |
2 files changed, 27 insertions, 27 deletions
diff --git a/arch/m68k/ifpsp060/src/fpsp.S b/arch/m68k/ifpsp060/src/fpsp.S index 6c1a9a217887..73613b5f1ee5 100644 --- a/arch/m68k/ifpsp060/src/fpsp.S +++ b/arch/m68k/ifpsp060/src/fpsp.S | |||
@@ -753,7 +753,7 @@ fovfl_ovfl_on: | |||
753 | 753 | ||
754 | bra.l _real_ovfl | 754 | bra.l _real_ovfl |
755 | 755 | ||
756 | # overflow occurred but is disabled. meanwhile, inexact is enabled. therefore, | 756 | # overflow occurred but is disabled. meanwhile, inexact is enabled. Therefore, |
757 | # we must jump to real_inex(). | 757 | # we must jump to real_inex(). |
758 | fovfl_inex_on: | 758 | fovfl_inex_on: |
759 | 759 | ||
@@ -1015,7 +1015,7 @@ funfl_unfl_on2: | |||
1015 | 1015 | ||
1016 | bra.l _real_unfl | 1016 | bra.l _real_unfl |
1017 | 1017 | ||
1018 | # undeflow occurred but is disabled. meanwhile, inexact is enabled. therefore, | 1018 | # underflow occurred but is disabled. meanwhile, inexact is enabled. Therefore, |
1019 | # we must jump to real_inex(). | 1019 | # we must jump to real_inex(). |
1020 | funfl_inex_on: | 1020 | funfl_inex_on: |
1021 | 1021 | ||
@@ -2963,7 +2963,7 @@ iea_disabled: | |||
2963 | 2963 | ||
2964 | tst.w %d0 # is instr fmovm? | 2964 | tst.w %d0 # is instr fmovm? |
2965 | bmi.b iea_dis_fmovm # yes | 2965 | bmi.b iea_dis_fmovm # yes |
2966 | # instruction is using an extended precision immediate operand. therefore, | 2966 | # instruction is using an extended precision immediate operand. Therefore, |
2967 | # the total instruction length is 16 bytes. | 2967 | # the total instruction length is 16 bytes. |
2968 | iea_dis_immed: | 2968 | iea_dis_immed: |
2969 | mov.l &0x10,%d0 # 16 bytes of instruction | 2969 | mov.l &0x10,%d0 # 16 bytes of instruction |
@@ -9624,7 +9624,7 @@ sok_dnrm: | |||
9624 | bge.b sok_norm2 # thank goodness no | 9624 | bge.b sok_norm2 # thank goodness no |
9625 | 9625 | ||
9626 | # the multiply factor that we're trying to create should be a denorm | 9626 | # the multiply factor that we're trying to create should be a denorm |
9627 | # for the multiply to work. therefore, we're going to actually do a | 9627 | # for the multiply to work. Therefore, we're going to actually do a |
9628 | # multiply with a denorm which will cause an unimplemented data type | 9628 | # multiply with a denorm which will cause an unimplemented data type |
9629 | # exception to be put into the machine which will be caught and corrected | 9629 | # exception to be put into the machine which will be caught and corrected |
9630 | # later. we don't do this with the DENORMs above because this method | 9630 | # later. we don't do this with the DENORMs above because this method |
@@ -12216,7 +12216,7 @@ fin_sd_unfl_dis: | |||
12216 | 12216 | ||
12217 | # | 12217 | # |
12218 | # operand will underflow AND underflow or inexact is enabled. | 12218 | # operand will underflow AND underflow or inexact is enabled. |
12219 | # therefore, we must return the result rounded to extended precision. | 12219 | # Therefore, we must return the result rounded to extended precision. |
12220 | # | 12220 | # |
12221 | fin_sd_unfl_ena: | 12221 | fin_sd_unfl_ena: |
12222 | mov.l FP_SCR0_HI(%a6),FP_SCR1_HI(%a6) | 12222 | mov.l FP_SCR0_HI(%a6),FP_SCR1_HI(%a6) |
@@ -12746,7 +12746,7 @@ fdiv_zero_load_p: | |||
12746 | 12746 | ||
12747 | # | 12747 | # |
12748 | # The destination was In Range and the source was a ZERO. The result, | 12748 | # The destination was In Range and the source was a ZERO. The result, |
12749 | # therefore, is an INF w/ the proper sign. | 12749 | # Therefore, is an INF w/ the proper sign. |
12750 | # So, determine the sign and return a new INF (w/ the j-bit cleared). | 12750 | # So, determine the sign and return a new INF (w/ the j-bit cleared). |
12751 | # | 12751 | # |
12752 | global fdiv_inf_load # global for fsgldiv | 12752 | global fdiv_inf_load # global for fsgldiv |
@@ -12996,7 +12996,7 @@ fneg_sd_unfl_dis: | |||
12996 | 12996 | ||
12997 | # | 12997 | # |
12998 | # operand will underflow AND underflow is enabled. | 12998 | # operand will underflow AND underflow is enabled. |
12999 | # therefore, we must return the result rounded to extended precision. | 12999 | # Therefore, we must return the result rounded to extended precision. |
13000 | # | 13000 | # |
13001 | fneg_sd_unfl_ena: | 13001 | fneg_sd_unfl_ena: |
13002 | mov.l FP_SCR0_HI(%a6),FP_SCR1_HI(%a6) | 13002 | mov.l FP_SCR0_HI(%a6),FP_SCR1_HI(%a6) |
@@ -13611,7 +13611,7 @@ fabs_sd_unfl_dis: | |||
13611 | 13611 | ||
13612 | # | 13612 | # |
13613 | # operand will underflow AND underflow is enabled. | 13613 | # operand will underflow AND underflow is enabled. |
13614 | # therefore, we must return the result rounded to extended precision. | 13614 | # Therefore, we must return the result rounded to extended precision. |
13615 | # | 13615 | # |
13616 | fabs_sd_unfl_ena: | 13616 | fabs_sd_unfl_ena: |
13617 | mov.l FP_SCR0_HI(%a6),FP_SCR1_HI(%a6) | 13617 | mov.l FP_SCR0_HI(%a6),FP_SCR1_HI(%a6) |
@@ -14973,7 +14973,7 @@ fadd_zero_2: | |||
14973 | 14973 | ||
14974 | # | 14974 | # |
14975 | # the ZEROes have opposite signs: | 14975 | # the ZEROes have opposite signs: |
14976 | # - therefore, we return +ZERO if the rounding modes are RN,RZ, or RP. | 14976 | # - Therefore, we return +ZERO if the rounding modes are RN,RZ, or RP. |
14977 | # - -ZERO is returned in the case of RM. | 14977 | # - -ZERO is returned in the case of RM. |
14978 | # | 14978 | # |
14979 | fadd_zero_2_chk_rm: | 14979 | fadd_zero_2_chk_rm: |
@@ -15425,7 +15425,7 @@ fsub_zero_2: | |||
15425 | 15425 | ||
15426 | # | 15426 | # |
15427 | # the ZEROes have the same signs: | 15427 | # the ZEROes have the same signs: |
15428 | # - therefore, we return +ZERO if the rounding mode is RN,RZ, or RP | 15428 | # - Therefore, we return +ZERO if the rounding mode is RN,RZ, or RP |
15429 | # - -ZERO is returned in the case of RM. | 15429 | # - -ZERO is returned in the case of RM. |
15430 | # | 15430 | # |
15431 | fsub_zero_2_chk_rm: | 15431 | fsub_zero_2_chk_rm: |
@@ -15693,7 +15693,7 @@ fsqrt_sd_unfl_dis: | |||
15693 | 15693 | ||
15694 | # | 15694 | # |
15695 | # operand will underflow AND underflow is enabled. | 15695 | # operand will underflow AND underflow is enabled. |
15696 | # therefore, we must return the result rounded to extended precision. | 15696 | # Therefore, we must return the result rounded to extended precision. |
15697 | # | 15697 | # |
15698 | fsqrt_sd_unfl_ena: | 15698 | fsqrt_sd_unfl_ena: |
15699 | mov.l FP_SCR0_HI(%a6),FP_SCR1_HI(%a6) | 15699 | mov.l FP_SCR0_HI(%a6),FP_SCR1_HI(%a6) |
@@ -21000,7 +21000,7 @@ fout_pack_type: | |||
21000 | tst.l %d0 | 21000 | tst.l %d0 |
21001 | bne.b fout_pack_set | 21001 | bne.b fout_pack_set |
21002 | # "mantissa" is all zero which means that the answer is zero. but, the '040 | 21002 | # "mantissa" is all zero which means that the answer is zero. but, the '040 |
21003 | # algorithm allows the exponent to be non-zero. the 881/2 do not. therefore, | 21003 | # algorithm allows the exponent to be non-zero. the 881/2 do not. Therefore, |
21004 | # if the mantissa is zero, I will zero the exponent, too. | 21004 | # if the mantissa is zero, I will zero the exponent, too. |
21005 | # the question now is whether the exponents sign bit is allowed to be non-zero | 21005 | # the question now is whether the exponents sign bit is allowed to be non-zero |
21006 | # for a zero, also... | 21006 | # for a zero, also... |
@@ -21743,7 +21743,7 @@ denorm_set_stky: | |||
21743 | rts | 21743 | rts |
21744 | 21744 | ||
21745 | # # | 21745 | # # |
21746 | # dnrm_lp(): normalize exponent/mantissa to specified threshhold # | 21746 | # dnrm_lp(): normalize exponent/mantissa to specified threshold # |
21747 | # # | 21747 | # # |
21748 | # INPUT: # | 21748 | # INPUT: # |
21749 | # %a0 : points to the operand to be denormalized # | 21749 | # %a0 : points to the operand to be denormalized # |
@@ -22402,7 +22402,7 @@ unnorm_shift: | |||
22402 | bgt.b unnorm_nrm_zero # yes; denorm only until exp = 0 | 22402 | bgt.b unnorm_nrm_zero # yes; denorm only until exp = 0 |
22403 | 22403 | ||
22404 | # | 22404 | # |
22405 | # exponent would not go < 0. therefore, number stays normalized | 22405 | # exponent would not go < 0. Therefore, number stays normalized |
22406 | # | 22406 | # |
22407 | sub.w %d0, %d1 # shift exponent value | 22407 | sub.w %d0, %d1 # shift exponent value |
22408 | mov.w FTEMP_EX(%a0), %d0 # load old exponent | 22408 | mov.w FTEMP_EX(%a0), %d0 # load old exponent |
diff --git a/arch/m68k/ifpsp060/src/pfpsp.S b/arch/m68k/ifpsp060/src/pfpsp.S index 51b9f7d879dd..e71ba0ab013c 100644 --- a/arch/m68k/ifpsp060/src/pfpsp.S +++ b/arch/m68k/ifpsp060/src/pfpsp.S | |||
@@ -752,7 +752,7 @@ fovfl_ovfl_on: | |||
752 | 752 | ||
753 | bra.l _real_ovfl | 753 | bra.l _real_ovfl |
754 | 754 | ||
755 | # overflow occurred but is disabled. meanwhile, inexact is enabled. therefore, | 755 | # overflow occurred but is disabled. meanwhile, inexact is enabled. Therefore, |
756 | # we must jump to real_inex(). | 756 | # we must jump to real_inex(). |
757 | fovfl_inex_on: | 757 | fovfl_inex_on: |
758 | 758 | ||
@@ -1014,7 +1014,7 @@ funfl_unfl_on2: | |||
1014 | 1014 | ||
1015 | bra.l _real_unfl | 1015 | bra.l _real_unfl |
1016 | 1016 | ||
1017 | # undeflow occurred but is disabled. meanwhile, inexact is enabled. therefore, | 1017 | # underflow occurred but is disabled. meanwhile, inexact is enabled. Therefore, |
1018 | # we must jump to real_inex(). | 1018 | # we must jump to real_inex(). |
1019 | funfl_inex_on: | 1019 | funfl_inex_on: |
1020 | 1020 | ||
@@ -2962,7 +2962,7 @@ iea_disabled: | |||
2962 | 2962 | ||
2963 | tst.w %d0 # is instr fmovm? | 2963 | tst.w %d0 # is instr fmovm? |
2964 | bmi.b iea_dis_fmovm # yes | 2964 | bmi.b iea_dis_fmovm # yes |
2965 | # instruction is using an extended precision immediate operand. therefore, | 2965 | # instruction is using an extended precision immediate operand. Therefore, |
2966 | # the total instruction length is 16 bytes. | 2966 | # the total instruction length is 16 bytes. |
2967 | iea_dis_immed: | 2967 | iea_dis_immed: |
2968 | mov.l &0x10,%d0 # 16 bytes of instruction | 2968 | mov.l &0x10,%d0 # 16 bytes of instruction |
@@ -5865,7 +5865,7 @@ denorm_set_stky: | |||
5865 | rts | 5865 | rts |
5866 | 5866 | ||
5867 | # # | 5867 | # # |
5868 | # dnrm_lp(): normalize exponent/mantissa to specified threshhold # | 5868 | # dnrm_lp(): normalize exponent/mantissa to specified threshold # |
5869 | # # | 5869 | # # |
5870 | # INPUT: # | 5870 | # INPUT: # |
5871 | # %a0 : points to the operand to be denormalized # | 5871 | # %a0 : points to the operand to be denormalized # |
@@ -6524,7 +6524,7 @@ unnorm_shift: | |||
6524 | bgt.b unnorm_nrm_zero # yes; denorm only until exp = 0 | 6524 | bgt.b unnorm_nrm_zero # yes; denorm only until exp = 0 |
6525 | 6525 | ||
6526 | # | 6526 | # |
6527 | # exponent would not go < 0. therefore, number stays normalized | 6527 | # exponent would not go < 0. Therefore, number stays normalized |
6528 | # | 6528 | # |
6529 | sub.w %d0, %d1 # shift exponent value | 6529 | sub.w %d0, %d1 # shift exponent value |
6530 | mov.w FTEMP_EX(%a0), %d0 # load old exponent | 6530 | mov.w FTEMP_EX(%a0), %d0 # load old exponent |
@@ -7901,7 +7901,7 @@ fout_pack_type: | |||
7901 | tst.l %d0 | 7901 | tst.l %d0 |
7902 | bne.b fout_pack_set | 7902 | bne.b fout_pack_set |
7903 | # "mantissa" is all zero which means that the answer is zero. but, the '040 | 7903 | # "mantissa" is all zero which means that the answer is zero. but, the '040 |
7904 | # algorithm allows the exponent to be non-zero. the 881/2 do not. therefore, | 7904 | # algorithm allows the exponent to be non-zero. the 881/2 do not. Therefore, |
7905 | # if the mantissa is zero, I will zero the exponent, too. | 7905 | # if the mantissa is zero, I will zero the exponent, too. |
7906 | # the question now is whether the exponents sign bit is allowed to be non-zero | 7906 | # the question now is whether the exponents sign bit is allowed to be non-zero |
7907 | # for a zero, also... | 7907 | # for a zero, also... |
@@ -8647,7 +8647,7 @@ fin_sd_unfl_dis: | |||
8647 | 8647 | ||
8648 | # | 8648 | # |
8649 | # operand will underflow AND underflow or inexact is enabled. | 8649 | # operand will underflow AND underflow or inexact is enabled. |
8650 | # therefore, we must return the result rounded to extended precision. | 8650 | # Therefore, we must return the result rounded to extended precision. |
8651 | # | 8651 | # |
8652 | fin_sd_unfl_ena: | 8652 | fin_sd_unfl_ena: |
8653 | mov.l FP_SCR0_HI(%a6),FP_SCR1_HI(%a6) | 8653 | mov.l FP_SCR0_HI(%a6),FP_SCR1_HI(%a6) |
@@ -9177,7 +9177,7 @@ fdiv_zero_load_p: | |||
9177 | 9177 | ||
9178 | # | 9178 | # |
9179 | # The destination was In Range and the source was a ZERO. The result, | 9179 | # The destination was In Range and the source was a ZERO. The result, |
9180 | # therefore, is an INF w/ the proper sign. | 9180 | # Therefore, is an INF w/ the proper sign. |
9181 | # So, determine the sign and return a new INF (w/ the j-bit cleared). | 9181 | # So, determine the sign and return a new INF (w/ the j-bit cleared). |
9182 | # | 9182 | # |
9183 | global fdiv_inf_load # global for fsgldiv | 9183 | global fdiv_inf_load # global for fsgldiv |
@@ -9427,7 +9427,7 @@ fneg_sd_unfl_dis: | |||
9427 | 9427 | ||
9428 | # | 9428 | # |
9429 | # operand will underflow AND underflow is enabled. | 9429 | # operand will underflow AND underflow is enabled. |
9430 | # therefore, we must return the result rounded to extended precision. | 9430 | # Therefore, we must return the result rounded to extended precision. |
9431 | # | 9431 | # |
9432 | fneg_sd_unfl_ena: | 9432 | fneg_sd_unfl_ena: |
9433 | mov.l FP_SCR0_HI(%a6),FP_SCR1_HI(%a6) | 9433 | mov.l FP_SCR0_HI(%a6),FP_SCR1_HI(%a6) |
@@ -10042,7 +10042,7 @@ fabs_sd_unfl_dis: | |||
10042 | 10042 | ||
10043 | # | 10043 | # |
10044 | # operand will underflow AND underflow is enabled. | 10044 | # operand will underflow AND underflow is enabled. |
10045 | # therefore, we must return the result rounded to extended precision. | 10045 | # Therefore, we must return the result rounded to extended precision. |
10046 | # | 10046 | # |
10047 | fabs_sd_unfl_ena: | 10047 | fabs_sd_unfl_ena: |
10048 | mov.l FP_SCR0_HI(%a6),FP_SCR1_HI(%a6) | 10048 | mov.l FP_SCR0_HI(%a6),FP_SCR1_HI(%a6) |
@@ -11404,7 +11404,7 @@ fadd_zero_2: | |||
11404 | 11404 | ||
11405 | # | 11405 | # |
11406 | # the ZEROes have opposite signs: | 11406 | # the ZEROes have opposite signs: |
11407 | # - therefore, we return +ZERO if the rounding modes are RN,RZ, or RP. | 11407 | # - Therefore, we return +ZERO if the rounding modes are RN,RZ, or RP. |
11408 | # - -ZERO is returned in the case of RM. | 11408 | # - -ZERO is returned in the case of RM. |
11409 | # | 11409 | # |
11410 | fadd_zero_2_chk_rm: | 11410 | fadd_zero_2_chk_rm: |
@@ -11856,7 +11856,7 @@ fsub_zero_2: | |||
11856 | 11856 | ||
11857 | # | 11857 | # |
11858 | # the ZEROes have the same signs: | 11858 | # the ZEROes have the same signs: |
11859 | # - therefore, we return +ZERO if the rounding mode is RN,RZ, or RP | 11859 | # - Therefore, we return +ZERO if the rounding mode is RN,RZ, or RP |
11860 | # - -ZERO is returned in the case of RM. | 11860 | # - -ZERO is returned in the case of RM. |
11861 | # | 11861 | # |
11862 | fsub_zero_2_chk_rm: | 11862 | fsub_zero_2_chk_rm: |
@@ -12124,7 +12124,7 @@ fsqrt_sd_unfl_dis: | |||
12124 | 12124 | ||
12125 | # | 12125 | # |
12126 | # operand will underflow AND underflow is enabled. | 12126 | # operand will underflow AND underflow is enabled. |
12127 | # therefore, we must return the result rounded to extended precision. | 12127 | # Therefore, we must return the result rounded to extended precision. |
12128 | # | 12128 | # |
12129 | fsqrt_sd_unfl_ena: | 12129 | fsqrt_sd_unfl_ena: |
12130 | mov.l FP_SCR0_HI(%a6),FP_SCR1_HI(%a6) | 12130 | mov.l FP_SCR0_HI(%a6),FP_SCR1_HI(%a6) |