diff options
Diffstat (limited to 'arch/m68k/ifpsp060/src/fpsp.S')
-rw-r--r-- | arch/m68k/ifpsp060/src/fpsp.S | 28 |
1 files changed, 14 insertions, 14 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 |