mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH] Dead code in i386 math-emu
@ 2002-11-03  3:40 Brian Gerst
  2002-11-03 12:37 ` Alan Cox
  0 siblings, 1 reply; 3+ messages in thread
From: Brian Gerst @ 2002-11-03  3:40 UTC (permalink / raw)
  To: Linus Torvalds; +Cc: Linux-Kernel

[-- Attachment #1: Type: text/plain, Size: 80 bytes --]

This removes unused non-reentrant code in the fpu emulator.

--
				Brian Gerst

[-- Attachment #2: mathemu-dead-1 --]
[-- Type: text/plain, Size: 5177 bytes --]

diff -urN linux-2.5.45-bk1/arch/i386/math-emu/div_Xsig.S linux/arch/i386/math-emu/div_Xsig.S
--- linux-2.5.45-bk1/arch/i386/math-emu/div_Xsig.S	Sun Sep 15 22:18:24 2002
+++ linux/arch/i386/math-emu/div_Xsig.S	Sat Nov  2 22:17:52 2002
@@ -36,7 +36,6 @@
 #define	XsigH(x)	8(x)
 
 
-#ifndef NON_REENTRANT_FPU
 /*
 	Local storage on the stack:
 	Accumulator:	FPU_accum_3:FPU_accum_2:FPU_accum_1:FPU_accum_0
@@ -49,37 +48,12 @@
 #define FPU_result_2	-24(%ebp)
 #define FPU_result_1	-28(%ebp)
 
-#else
-.data
-/*
-	Local storage in a static area:
-	Accumulator:	FPU_accum_3:FPU_accum_2:FPU_accum_1:FPU_accum_0
- */
-	.align 4,0
-FPU_accum_3:
-	.long	0
-FPU_accum_2:
-	.long	0
-FPU_accum_1:
-	.long	0
-FPU_accum_0:
-	.long	0
-FPU_result_3:
-	.long	0
-FPU_result_2:
-	.long	0
-FPU_result_1:
-	.long	0
-#endif /* NON_REENTRANT_FPU */
-
 
 .text
 ENTRY(div_Xsig)
 	pushl	%ebp
 	movl	%esp,%ebp
-#ifndef NON_REENTRANT_FPU
 	subl	$28,%esp
-#endif /* NON_REENTRANT_FPU */ 
 
 	pushl	%esi
 	pushl	%edi
diff -urN linux-2.5.45-bk1/arch/i386/math-emu/reg_round.S linux/arch/i386/math-emu/reg_round.S
--- linux-2.5.45-bk1/arch/i386/math-emu/reg_round.S	Sun Sep 15 22:18:48 2002
+++ linux/arch/i386/math-emu/reg_round.S	Sat Nov  2 22:17:52 2002
@@ -85,23 +85,11 @@
 #define	UNMASKED_UNDERFLOW $2
 
 
-#ifndef NON_REENTRANT_FPU
 /*	Make the code re-entrant by putting
 	local storage on the stack: */
 #define FPU_bits_lost	(%esp)
 #define FPU_denormal	1(%esp)
 
-#else
-/*	Not re-entrant, so we can gain speed by putting
-	local storage in a static area: */
-.data
-	.align 4,0
-FPU_bits_lost:
-	.byte	0
-FPU_denormal:
-	.byte	0
-#endif /* NON_REENTRANT_FPU */
-
 
 .text
 .globl fpu_reg_round
@@ -124,9 +112,7 @@
 fpu_reg_round:			/* Normal entry point */
 	movl	PARAM4,%ecx
 
-#ifndef NON_REENTRANT_FPU
 	pushl	%ebx		/* adjust the stack pointer */
-#endif /* NON_REENTRANT_FPU */ 
 
 #ifdef PARANOID
 /* Cannot use this here yet */
@@ -428,9 +414,7 @@
 
 fpu_reg_round_special_exit:
 
-#ifndef NON_REENTRANT_FPU
 	popl	%ebx		/* adjust the stack pointer */
-#endif /* NON_REENTRANT_FPU */ 
 
 fpu_Arith_exit:
 	popl	%ebx
diff -urN linux-2.5.45-bk1/arch/i386/math-emu/reg_u_div.S linux/arch/i386/math-emu/reg_u_div.S
--- linux-2.5.45-bk1/arch/i386/math-emu/reg_u_div.S	Sun Sep 15 22:18:23 2002
+++ linux/arch/i386/math-emu/reg_u_div.S	Sat Nov  2 22:18:11 2002
@@ -31,7 +31,6 @@
 /* #define	dSIGH(x)	4(x) */
 
 
-#ifndef NON_REENTRANT_FPU
 /*
 	Local storage on the stack:
 	Result:		FPU_accum_3:FPU_accum_2:FPU_accum_1:FPU_accum_0
@@ -45,30 +44,6 @@
 #define FPU_result_2	-24(%ebp)
 #define FPU_ovfl_flag	-28(%ebp)
 
-#else
-.data
-/*
-	Local storage in a static area:
-	Result:		FPU_accum_3:FPU_accum_2:FPU_accum_1:FPU_accum_0
-	Overflow flag:	ovfl_flag
- */
-	.align 4,0
-FPU_accum_3:
-	.long	0
-FPU_accum_2:
-	.long	0
-FPU_accum_1:
-	.long	0
-FPU_accum_0:
-	.long	0
-FPU_result_1:
-	.long	0
-FPU_result_2:
-	.long	0
-FPU_ovfl_flag:
-	.byte	0
-#endif /* NON_REENTRANT_FPU */
-
 #define REGA	PARAM1
 #define REGB	PARAM2
 #define DEST	PARAM3
@@ -77,9 +52,7 @@
 ENTRY(FPU_u_div)
 	pushl	%ebp
 	movl	%esp,%ebp
-#ifndef NON_REENTRANT_FPU
 	subl	$28,%esp
-#endif /* NON_REENTRANT_FPU */
 
 	pushl	%esi
 	pushl	%edi
diff -urN linux-2.5.45-bk1/arch/i386/math-emu/reg_u_mul.S linux/arch/i386/math-emu/reg_u_mul.S
--- linux-2.5.45-bk1/arch/i386/math-emu/reg_u_mul.S	Sun Sep 15 22:18:22 2002
+++ linux/arch/i386/math-emu/reg_u_mul.S	Sat Nov  2 22:18:30 2002
@@ -27,29 +27,15 @@
 
 
 
-#ifndef NON_REENTRANT_FPU
 /*  Local storage on the stack: */
 #define FPU_accum_0	-4(%ebp)	/* ms word */
 #define FPU_accum_1	-8(%ebp)
 
-#else
-/*  Local storage in a static area: */
-.data
-	.align 4,0
-FPU_accum_0:
-	.long	0
-FPU_accum_1:
-	.long	0
-#endif /* NON_REENTRANT_FPU */
-
-
 .text
 ENTRY(FPU_u_mul)
 	pushl	%ebp
 	movl	%esp,%ebp
-#ifndef NON_REENTRANT_FPU
 	subl	$8,%esp
-#endif /* NON_REENTRANT_FPU */ 
 
 	pushl	%esi
 	pushl	%edi
diff -urN linux-2.5.45-bk1/arch/i386/math-emu/wm_sqrt.S linux/arch/i386/math-emu/wm_sqrt.S
--- linux-2.5.45-bk1/arch/i386/math-emu/wm_sqrt.S	Sun Sep 15 22:18:21 2002
+++ linux/arch/i386/math-emu/wm_sqrt.S	Sat Nov  2 22:18:51 2002
@@ -29,7 +29,6 @@
 #include "fpu_emu.h"
 
 
-#ifndef NON_REENTRANT_FPU
 /*	Local storage on the stack: */
 #define FPU_accum_3	-4(%ebp)	/* ms word */
 #define FPU_accum_2	-8(%ebp)
@@ -46,40 +45,12 @@
 #define FPU_fsqrt_arg_1	-24(%ebp)
 #define FPU_fsqrt_arg_0	-28(%ebp)	/* ls word, at most the ms bit is set */
 
-#else
-/*	Local storage in a static area: */
-.data
-	.align 4,0
-FPU_accum_3:
-	.long	0		/* ms word */
-FPU_accum_2:
-	.long	0
-FPU_accum_1:
-	.long	0
-FPU_accum_0:
-	.long	0
-
-/* The de-normalised argument:
-                    sq_2                  sq_1              sq_0
-          b b b b b b b ... b b b   b b b .... b b b   b 0 0 0 ... 0
-             ^ binary point here
- */
-FPU_fsqrt_arg_2:
-	.long	0		/* ms word */
-FPU_fsqrt_arg_1:
-	.long	0
-FPU_fsqrt_arg_0:
-	.long	0		/* ls word, at most the ms bit is set */
-#endif /* NON_REENTRANT_FPU */ 
-
 
 .text
 ENTRY(wm_sqrt)
 	pushl	%ebp
 	movl	%esp,%ebp
-#ifndef NON_REENTRANT_FPU
 	subl	$28,%esp
-#endif /* NON_REENTRANT_FPU */
 	pushl	%esi
 	pushl	%edi
 	pushl	%ebx

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2002-11-03 14:11 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2002-11-03  3:40 [PATCH] Dead code in i386 math-emu Brian Gerst
2002-11-03 12:37 ` Alan Cox
2002-11-03 14:18   ` Brian Gerst

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®