summaryrefslogtreecommitdiff
path: root/sys/gnu/arch/i386/fpemul/reg_div.s
diff options
context:
space:
mode:
Diffstat (limited to 'sys/gnu/arch/i386/fpemul/reg_div.s')
-rw-r--r--sys/gnu/arch/i386/fpemul/reg_div.s28
1 files changed, 16 insertions, 12 deletions
diff --git a/sys/gnu/arch/i386/fpemul/reg_div.s b/sys/gnu/arch/i386/fpemul/reg_div.s
index c6970d236d8..e33f37a9c08 100644
--- a/sys/gnu/arch/i386/fpemul/reg_div.s
+++ b/sys/gnu/arch/i386/fpemul/reg_div.s
@@ -1,5 +1,5 @@
.file "reg_div.S"
-/* $OpenBSD: reg_div.s,v 1.1 1996/08/27 10:32:58 downsj Exp $ */
+/* $OpenBSD: reg_div.s,v 1.2 2002/10/12 07:12:59 pvalchev Exp $ */
/*
* reg_div.S
*
@@ -72,10 +72,14 @@
#include <gnu/arch/i386/fpemul/control_w.h>
.text
+#ifdef __ELF__
+ .align 4
+#else
.align 2
+#endif
-.globl _reg_div
-_reg_div:
+.globl _C_LABEL(reg_div)
+_C_LABEL(reg_div):
pushl %ebp
movl %esp,%ebp
@@ -97,7 +101,7 @@ _reg_div:
cmpl EXP_UNDER,EXP(%esi)
jg xL_arg1_not_denormal
- call _denormal_operand
+ call _C_LABEL(denormal_operand)
orl %eax,%eax
jnz FPU_Arith_exit
@@ -105,7 +109,7 @@ xL_arg1_not_denormal:
cmpl EXP_UNDER,EXP(%ebx)
jg xL_arg2_not_denormal
- call _denormal_operand
+ call _C_LABEL(denormal_operand)
orl %eax,%eax
jnz FPU_Arith_exit
@@ -125,7 +129,7 @@ xL_arg2_not_denormal:
addl EXP_BIAS,%edx
movl %edx,EXP(%edi)
- jmp _divide_kernel
+ jmp _C_LABEL(divide_kernel)
/*-----------------------------------------------------------------------*/
@@ -142,14 +146,14 @@ L_arg2_NaN:
pushl %edi /* Destination */
pushl %ebx
pushl %esi
- call _real_2op_NaN
+ call _C_LABEL(real_2op_NaN)
jmp LDiv_exit
/* Invalid operations */
L_zero_zero:
L_inf_inf:
pushl %edi /* Destination */
- call _arith_invalid /* 0/0 or Infinity/Infinity */
+ call _C_LABEL(arith)_invalid /* 0/0 or Infinity/Infinity */
jmp LDiv_exit
L_no_NaN_arg:
@@ -176,7 +180,7 @@ L_inf_valid:
cmpl EXP_UNDER,EXP(%ebx)
jg L_copy_arg1 /* Answer is Inf */
- call _denormal_operand
+ call _C_LABEL(denormal_operand)
orl %eax,%eax
jnz FPU_Arith_exit
#endif DENORM_OPERAND
@@ -201,7 +205,7 @@ L_arg1_not_inf:
movb SIGN(%esi),%al
xorb SIGN(%ebx),%al
pushl %eax /* lower 8 bits have the sign */
- call _divide_by_zero
+ call _C_LABEL(divide_by_zero)
jmp LDiv_exit
L_arg2_not_zero:
@@ -215,7 +219,7 @@ L_arg2_not_zero:
cmpl EXP_UNDER,EXP(%esi)
jg L_return_zero /* Answer is zero */
- call _denormal_operand
+ call _C_LABEL(denormal_operand)
orl %eax,%eax
jnz FPU_Arith_exit
#endif DENORM_OPERAND
@@ -235,7 +239,7 @@ L_arg2_not_inf:
cmpl EXP_UNDER,EXP(%ebx)
jg L_copy_arg1 /* Answer is zero */
- call _denormal_operand
+ call _C_LABEL(denormal_operand)
orl %eax,%eax
jnz FPU_Arith_exit
#endif DENORM_OPERAND