summaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorPeter Valchev <pvalchev@cvs.openbsd.org>2002-10-12 07:13:00 +0000
committerPeter Valchev <pvalchev@cvs.openbsd.org>2002-10-12 07:13:00 +0000
commit439b5a8e46350413139ea2b054a0b2149f640b7c (patch)
treece67c2f32133cd9ab02b8d28cefeb30ec7826e48 /sys
parentfc26f71b59603e4fefd07e144c9edecb5d4b3193 (diff)
Prepare for ELF (mostly _C_LABEL sprinkling); ok drahn art
Diffstat (limited to 'sys')
-rw-r--r--sys/gnu/arch/i386/fpemul/div_small.s10
-rw-r--r--sys/gnu/arch/i386/fpemul/fpu_asm.h4
-rw-r--r--sys/gnu/arch/i386/fpemul/poly_div.s26
-rw-r--r--sys/gnu/arch/i386/fpemul/poly_mul64.s10
-rw-r--r--sys/gnu/arch/i386/fpemul/polynomial.s10
-rw-r--r--sys/gnu/arch/i386/fpemul/reg_div.s28
-rw-r--r--sys/gnu/arch/i386/fpemul/reg_norm.s25
-rw-r--r--sys/gnu/arch/i386/fpemul/reg_round.s26
-rw-r--r--sys/gnu/arch/i386/fpemul/reg_u_add.s14
-rw-r--r--sys/gnu/arch/i386/fpemul/reg_u_div.s22
-rw-r--r--sys/gnu/arch/i386/fpemul/reg_u_mul.s18
-rw-r--r--sys/gnu/arch/i386/fpemul/reg_u_sub.s16
-rw-r--r--sys/gnu/arch/i386/fpemul/wm_shrx.s14
-rw-r--r--sys/gnu/arch/i386/fpemul/wm_sqrt.s14
14 files changed, 157 insertions, 80 deletions
diff --git a/sys/gnu/arch/i386/fpemul/div_small.s b/sys/gnu/arch/i386/fpemul/div_small.s
index e652be839ee..ae93cfd435e 100644
--- a/sys/gnu/arch/i386/fpemul/div_small.s
+++ b/sys/gnu/arch/i386/fpemul/div_small.s
@@ -1,5 +1,5 @@
.file "div_small.S"
-/* $OpenBSD: div_small.s,v 1.1 1996/08/27 10:32:41 downsj Exp $ */
+/* $OpenBSD: div_small.s,v 1.2 2002/10/12 07:12:58 pvalchev Exp $ */
/*
* div_small.S
*
@@ -71,11 +71,15 @@
#include <gnu/arch/i386/fpemul/fpu_asm.h>
.text
+#ifdef __ELF__
+ .align 4,144
+#else
.align 2,144
+#endif
-.globl _div_small
+.globl _C_LABEL(div_small)
-_div_small:
+_C_LABEL(div_small):
pushl %ebp
movl %esp,%ebp
diff --git a/sys/gnu/arch/i386/fpemul/fpu_asm.h b/sys/gnu/arch/i386/fpemul/fpu_asm.h
index bec05b1e587..5d3559e66f6 100644
--- a/sys/gnu/arch/i386/fpemul/fpu_asm.h
+++ b/sys/gnu/arch/i386/fpemul/fpu_asm.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: fpu_asm.h,v 1.1 1996/08/27 10:32:45 downsj Exp $ */
+/* $OpenBSD: fpu_asm.h,v 1.2 2002/10/12 07:12:58 pvalchev Exp $ */
/*
* fpu_asm.h
*
@@ -64,7 +64,7 @@
#include <gnu/arch/i386/fpemul/fpu_emu.h>
-#define EXCEPTION _exception
+#define EXCEPTION _C_LABEL(exception)
#define PARAM1 8(%ebp)
diff --git a/sys/gnu/arch/i386/fpemul/poly_div.s b/sys/gnu/arch/i386/fpemul/poly_div.s
index 9b94c96a5b4..e88b884e249 100644
--- a/sys/gnu/arch/i386/fpemul/poly_div.s
+++ b/sys/gnu/arch/i386/fpemul/poly_div.s
@@ -1,5 +1,5 @@
.file "poly_div.S"
-/* $OpenBSD: poly_div.s,v 1.1 1996/08/27 10:32:53 downsj Exp $ */
+/* $OpenBSD: poly_div.s,v 1.2 2002/10/12 07:12:58 pvalchev Exp $ */
/*
* poly_div.S
*
@@ -69,9 +69,13 @@
.text
/*---------------------------------------------------------------------------*/
+#ifdef __ELF__
+ .align 4,144
+#else
.align 2,144
-.globl _poly_div2
-_poly_div2:
+#endif
+.globl _C_LABEL(poly_div2)
+_C_LABEL(poly_div2):
pushl %ebp
movl %esp,%ebp
@@ -91,9 +95,13 @@ poly_div2_exit:
leave
ret
/*---------------------------------------------------------------------------*/
+#ifdef __ELF__
+ .align 4,144
+#else
.align 2,144
-.globl _poly_div4
-_poly_div4:
+#endif
+.globl _C_LABEL(poly_div4)
+_C_LABEL(poly_div4):
pushl %ebp
movl %esp,%ebp
@@ -118,9 +126,13 @@ poly_div4_exit:
leave
ret
/*---------------------------------------------------------------------------*/
+#ifdef __ELF__
+ .align 4,144
+#else
.align 2,144
-.globl _poly_div16
-_poly_div16:
+#endif
+.globl _C_LABEL(poly_div16)
+_C_LABEL(poly_div16):
pushl %ebp
movl %esp,%ebp
diff --git a/sys/gnu/arch/i386/fpemul/poly_mul64.s b/sys/gnu/arch/i386/fpemul/poly_mul64.s
index 0bf3e1ff3d5..231840554d1 100644
--- a/sys/gnu/arch/i386/fpemul/poly_mul64.s
+++ b/sys/gnu/arch/i386/fpemul/poly_mul64.s
@@ -1,4 +1,4 @@
-/* $OpenBSD: poly_mul64.s,v 1.1 1996/08/27 10:32:54 downsj Exp $ */
+/* $OpenBSD: poly_mul64.s,v 1.2 2002/10/12 07:12:58 pvalchev Exp $ */
/*
* poly_mul64.S
*
@@ -70,9 +70,13 @@
#include <gnu/arch/i386/fpemul/fpu_asm.h>
.text
+#ifdef __ELF__
+ .align 4,144
+#else
.align 2,144
-.globl _mul64
-_mul64:
+#endif
+.globl _C_LABEL(mul64)
+_C_LABEL(mul64):
pushl %ebp
movl %esp,%ebp
subl $16,%esp
diff --git a/sys/gnu/arch/i386/fpemul/polynomial.s b/sys/gnu/arch/i386/fpemul/polynomial.s
index f963e0fa828..dad18e54155 100644
--- a/sys/gnu/arch/i386/fpemul/polynomial.s
+++ b/sys/gnu/arch/i386/fpemul/polynomial.s
@@ -1,4 +1,4 @@
-/* $OpenBSD: polynomial.s,v 1.1 1996/08/27 10:32:56 downsj Exp $ */
+/* $OpenBSD: polynomial.s,v 1.2 2002/10/12 07:12:58 pvalchev Exp $ */
/*
* polynomial.S
*
@@ -82,9 +82,13 @@
.text
+#ifdef __ELF__
+ .align 4,144
+#else
.align 2,144
-.globl _polynomial
-_polynomial:
+#endif
+.globl _C_LABEL(polynomial)
+_C_LABEL(polynomial):
pushl %ebp
movl %esp,%ebp
subl $32,%esp
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
diff --git a/sys/gnu/arch/i386/fpemul/reg_norm.s b/sys/gnu/arch/i386/fpemul/reg_norm.s
index 58fe0b4f9e3..0fddcac8b16 100644
--- a/sys/gnu/arch/i386/fpemul/reg_norm.s
+++ b/sys/gnu/arch/i386/fpemul/reg_norm.s
@@ -1,4 +1,4 @@
-/* $OpenBSD: reg_norm.s,v 1.1 1996/08/27 10:33:00 downsj Exp $ */
+/* $OpenBSD: reg_norm.s,v 1.2 2002/10/12 07:12:59 pvalchev Exp $ */
/*
* reg_norm.s
*
@@ -73,11 +73,13 @@
.text
-
+#ifdef __ELF__
+ .align 4,144
+#else
.align 2,144
-.globl _normalize
-
-_normalize:
+#endif
+.globl _C_LABEL(normalize)
+_C_LABEL(normalize):
pushl %ebp
movl %esp,%ebp
pushl %ebx
@@ -131,23 +133,26 @@ L_zero:
L_underflow:
push %ebx
- call _arith_underflow
+ call _C_LABEL(arith_underflow)
pop %ebx
jmp L_exit
L_overflow:
push %ebx
- call _arith_overflow
+ call _C_LABEL(arith_overflow)
pop %ebx
jmp L_exit
/* Normalise without reporting underflow or overflow */
+#ifdef __ELF__
+ .align 4,144
+#else
.align 2,144
-.globl _normalize_nuo
-
-_normalize_nuo:
+#endif
+.globl _C_LABEL(normalize_nuo)
+_C_LABEL(normalize_nuo):
pushl %ebp
movl %esp,%ebp
pushl %ebx
diff --git a/sys/gnu/arch/i386/fpemul/reg_round.s b/sys/gnu/arch/i386/fpemul/reg_round.s
index 15a37128d47..51a03051b85 100644
--- a/sys/gnu/arch/i386/fpemul/reg_round.s
+++ b/sys/gnu/arch/i386/fpemul/reg_round.s
@@ -1,5 +1,5 @@
.file "reg_round.S"
-/* $OpenBSD: reg_round.s,v 1.1 1996/08/27 10:33:01 downsj Exp $ */
+/* $OpenBSD: reg_round.s,v 1.2 2002/10/12 07:12:59 pvalchev Exp $ */
/*
* reg_round.S
*
@@ -131,21 +131,29 @@
#define UNMASKED_UNDERFLOW $2
.data
+#ifdef __ELF__
+ .align 4,0
+#else
.align 2,0
+#endif
FPU_bits_lost:
.byte 0
FPU_denormal:
.byte 0
.text
+#ifdef __ELF__
+ .align 4,144
+#else
.align 2,144
+#endif
.globl FPU_round
.globl FPU_round_sqrt
.globl FPU_Arith_exit
-.globl _round_reg
+.globl _C_LABEL(round_reg)
/* Entry point when called from C */
-_round_reg:
+_C_LABEL(round_reg):
pushl %ebp
movl %esp,%ebp
pushl %esi
@@ -449,7 +457,7 @@ FPU_Arith_exit:
/* round-up.*/
xL_precision_lost_up:
push %eax
- call _set_precision_flag_up
+ call _C_LABEL(set_precision_flag_up)
popl %eax
jmp xL_no_precision_loss
@@ -457,7 +465,7 @@ xL_precision_lost_up:
/* truncation.*/
xL_precision_lost_down:
push %eax
- call _set_precision_flag_down
+ call _C_LABEL(set_precision_flag_down)
popl %eax
jmp xL_no_precision_loss
@@ -594,7 +602,7 @@ LNormalise_shift_done:
/* There must be a masked underflow*/
push %eax
pushl EX_Underflow
- call _exception
+ call _C_LABEL(exception)
popl %eax
popl %eax
jmp xL_Normalised
@@ -604,12 +612,12 @@ LNormalise_shift_done:
// Masked response.*/
L_underflow_to_zero:
push %eax
- call _set_precision_flag_down
+ call _C_LABEL(set_precision_flag_down)
popl %eax
push %eax
pushl EX_Underflow
- call _exception
+ call _C_LABEL(exception)
popl %eax
popl %eax
@@ -620,7 +628,7 @@ L_underflow_to_zero:
/* The operations resulted in a number too large to represent.*/
L_overflow:
push %edi
- call _arith_overflow
+ call _C_LABEL(arith_overflow)
pop %edi
jmp FPU_Arith_exit
diff --git a/sys/gnu/arch/i386/fpemul/reg_u_add.s b/sys/gnu/arch/i386/fpemul/reg_u_add.s
index 1d0eb63bfc0..52f325beec2 100644
--- a/sys/gnu/arch/i386/fpemul/reg_u_add.s
+++ b/sys/gnu/arch/i386/fpemul/reg_u_add.s
@@ -1,5 +1,5 @@
.file "reg_u_add.S"
-/* $OpenBSD: reg_u_add.s,v 1.1 1996/08/27 10:33:01 downsj Exp $ */
+/* $OpenBSD: reg_u_add.s,v 1.2 2002/10/12 07:12:59 pvalchev Exp $ */
/*
* reg_u_add.S
*
@@ -84,9 +84,13 @@
#include <gnu/arch/i386/fpemul/control_w.h>
.text
+#ifdef __ELF__
+ .align 4,144
+#else
.align 2,144
-.globl _reg_u_add
-_reg_u_add:
+#endif
+.globl _C_LABEL(reg_u_add)
+_C_LABEL(reg_u_add):
pushl %ebp
movl %esp,%ebp
/* subl $16,%esp*/
@@ -101,7 +105,7 @@ _reg_u_add:
cmpl EXP_UNDER,EXP(%esi)
jg xOp1_not_denorm
- call _denormal_operand
+ call _C_LABEL(denormal_operand)
orl %eax,%eax
jnz FPU_Arith_exit
@@ -109,7 +113,7 @@ xOp1_not_denorm:
cmpl EXP_UNDER,EXP(%edi)
jg xOp2_not_denorm
- call _denormal_operand
+ call _C_LABEL(denormal_operand)
orl %eax,%eax
jnz FPU_Arith_exit
diff --git a/sys/gnu/arch/i386/fpemul/reg_u_div.s b/sys/gnu/arch/i386/fpemul/reg_u_div.s
index 92076a8235f..d3f0b3a145d 100644
--- a/sys/gnu/arch/i386/fpemul/reg_u_div.s
+++ b/sys/gnu/arch/i386/fpemul/reg_u_div.s
@@ -1,5 +1,5 @@
.file "reg_u_div.S"
-/* $OpenBSD: reg_u_div.s,v 1.1 1996/08/27 10:33:01 downsj Exp $ */
+/* $OpenBSD: reg_u_div.s,v 1.2 2002/10/12 07:12:59 pvalchev Exp $ */
/*
* reg_u_div.S
*
@@ -88,7 +88,11 @@
Result: accum_3:accum_2:accum_1:accum_0
Overflow flag: ovfl_flag
*/
+#ifdef __ELF__
+ .align 4,0
+#else
.align 2,0
+#endif
accum_3:
.long 0
accum_2:
@@ -106,13 +110,17 @@ ovfl_flag:
.text
+#ifdef __ELF__
+ .align 4,144
+#else
.align 2,144
+#endif
-.globl _reg_u_div
+.globl _C_LABEL(reg_u_div)
-.globl _divide_kernel
+.globl _C_LABEL(divide_kernel)
-_reg_u_div:
+_C_LABEL(reg_u_div):
pushl %ebp
movl %esp,%ebp
@@ -129,7 +137,7 @@ _reg_u_div:
cmpl EXP_UNDER,%eax
jg xOp1_not_denorm
- call _denormal_operand
+ call _C_LABEL(denormal_operand)
orl %eax,%eax
jnz FPU_Arith_exit
@@ -138,14 +146,14 @@ xOp1_not_denorm:
cmpl EXP_UNDER,%eax
jg xOp2_not_denorm
- call _denormal_operand
+ call _C_LABEL(denormal_operand)
orl %eax,%eax
jnz FPU_Arith_exit
xOp2_not_denorm:
#endif DENORM_OPERAND
-_divide_kernel:
+_C_LABEL(divide_kernel):
#ifdef PARANOID
/* testl $0x80000000, SIGH(%esi) *//* Dividend */
/* je L_bugged */
diff --git a/sys/gnu/arch/i386/fpemul/reg_u_mul.s b/sys/gnu/arch/i386/fpemul/reg_u_mul.s
index e7aba6185a4..0b53d9dd663 100644
--- a/sys/gnu/arch/i386/fpemul/reg_u_mul.s
+++ b/sys/gnu/arch/i386/fpemul/reg_u_mul.s
@@ -1,5 +1,5 @@
.file "reg_u_mul.S"
-/* $OpenBSD: reg_u_mul.s,v 1.1 1996/08/27 10:33:02 downsj Exp $ */
+/* $OpenBSD: reg_u_mul.s,v 1.2 2002/10/12 07:12:59 pvalchev Exp $ */
/*
* reg_u_mul.S
*
@@ -80,7 +80,11 @@
.data
+#ifdef __ELF__
+ .align 4,0
+#else
.align 2,0
+#endif
accum_0:
.long 0
accum_1:
@@ -88,10 +92,14 @@ accum_1:
.text
+#ifdef __ELF__
+ .align 4,144
+#else
.align 2,144
+#endif
-.globl _reg_u_mul
-_reg_u_mul:
+.globl _C_LABEL(reg_u_mul)
+_C_LABEL(reg_u_mul):
pushl %ebp
movl %esp,%ebp
pushl %esi
@@ -113,7 +121,7 @@ _reg_u_mul:
cmpl EXP_UNDER,%eax
jg xOp1_not_denorm
- call _denormal_operand
+ call _C_LABEL(denormal_operand)
orl %eax,%eax
jnz FPU_Arith_exit
@@ -122,7 +130,7 @@ xOp1_not_denorm:
cmpl EXP_UNDER,%eax
jg xOp2_not_denorm
- call _denormal_operand
+ call _C_LABEL(denormal_operand)
orl %eax,%eax
jnz FPU_Arith_exit
diff --git a/sys/gnu/arch/i386/fpemul/reg_u_sub.s b/sys/gnu/arch/i386/fpemul/reg_u_sub.s
index 8f4c19a1c0f..69700aa7684 100644
--- a/sys/gnu/arch/i386/fpemul/reg_u_sub.s
+++ b/sys/gnu/arch/i386/fpemul/reg_u_sub.s
@@ -1,5 +1,5 @@
.file "reg_u_sub.S"
-/* $OpenBSD: reg_u_sub.s,v 1.1 1996/08/27 10:33:02 downsj Exp $ */
+/* $OpenBSD: reg_u_sub.s,v 1.2 2002/10/12 07:12:59 pvalchev Exp $ */
/*
* reg_u_sub.S
*
@@ -84,9 +84,13 @@
#include <gnu/arch/i386/fpemul/control_w.h>
.text
+#ifdef __ELF__
+ .align 4,144
+#else
.align 2,144
-.globl _reg_u_sub
-_reg_u_sub:
+#endif
+.globl _C_LABEL(reg_u_sub)
+_C_LABEL(reg_u_sub):
pushl %ebp
movl %esp,%ebp
pushl %esi
@@ -100,7 +104,7 @@ _reg_u_sub:
cmpl EXP_UNDER,EXP(%esi)
jg xOp1_not_denorm
- call _denormal_operand
+ call _C_LABEL(denormal_operand)
orl %eax,%eax
jnz FPU_Arith_exit
@@ -108,7 +112,7 @@ xOp1_not_denorm:
cmpl EXP_UNDER,EXP(%edi)
jg xOp2_not_denorm
- call _denormal_operand
+ call _C_LABEL(denormal_operand)
orl %eax,%eax
jnz FPU_Arith_exit
@@ -358,7 +362,7 @@ L_exit:
L_underflow:
push %edi
- call _arith_underflow
+ call _C_LABEL(arith_underflow)
pop %ebx
jmp L_exit
diff --git a/sys/gnu/arch/i386/fpemul/wm_shrx.s b/sys/gnu/arch/i386/fpemul/wm_shrx.s
index c014f756402..06094cc1af1 100644
--- a/sys/gnu/arch/i386/fpemul/wm_shrx.s
+++ b/sys/gnu/arch/i386/fpemul/wm_shrx.s
@@ -1,5 +1,5 @@
.file "wm_shrx.S"
-/* $OpenBSD: wm_shrx.s,v 1.1 1996/08/27 10:33:04 downsj Exp $ */
+/* $OpenBSD: wm_shrx.s,v 1.2 2002/10/12 07:12:59 pvalchev Exp $ */
/*
* wm_shrx.S
*
@@ -73,7 +73,11 @@
#include <gnu/arch/i386/fpemul/fpu_asm.h>
.text
+#ifdef __ELF__
+ .align 4,144
+#else
.align 2,144
+#endif
/*---------------------------------------------------------------------------+
| unsigned shrx(void *arg1, unsigned arg2) |
@@ -89,9 +93,9 @@
| Results returned in the 64 bit arg and eax. |
+---------------------------------------------------------------------------*/
- .globl _shrx
+ .globl _C_LABEL(shrx)
-_shrx:
+_C_LABEL(shrx):
push %ebp
movl %esp,%ebp
pushl %esi
@@ -169,8 +173,8 @@ L_more_than_95:
| part which has been shifted out of the arg. |
| Results returned in the 64 bit arg and eax. |
+---------------------------------------------------------------------------*/
- .globl _shrxs
-_shrxs:
+ .globl _C_LABEL(shrxs)
+_C_LABEL(shrxs):
push %ebp
movl %esp,%ebp
pushl %esi
diff --git a/sys/gnu/arch/i386/fpemul/wm_sqrt.s b/sys/gnu/arch/i386/fpemul/wm_sqrt.s
index 402d5f414b9..352fe811ef1 100644
--- a/sys/gnu/arch/i386/fpemul/wm_sqrt.s
+++ b/sys/gnu/arch/i386/fpemul/wm_sqrt.s
@@ -1,5 +1,5 @@
.file "wm_sqrt.S"
-/* $OpenBSD: wm_sqrt.s,v 1.2 2001/05/22 08:06:40 fgsch Exp $ */
+/* $OpenBSD: wm_sqrt.s,v 1.3 2002/10/12 07:12:59 pvalchev Exp $ */
/*
* wm_sqrt.S
*
@@ -88,7 +88,11 @@
/*
Local storage:
*/
+#ifdef __ELF__
+ .align 16,0
+#else
.align 4,0
+#endif
accum_3:
.long 0 /* ms word */
accum_2:
@@ -110,11 +114,15 @@ fsqrt_arg_0:
.long 0 /* ls word, at most the ms bit is set */
.text
+#ifdef __ELF__
+ .align 4,144
+#else
.align 2,144
+#endif
-.globl _wm_sqrt
+.globl _C_LABEL(wm_sqrt)
-_wm_sqrt:
+_C_LABEL(wm_sqrt):
pushl %ebp
movl %esp,%ebp
pushl %esi