From ff340ae492915a1723450c148641b594326c5fd8 Mon Sep 17 00:00:00 2001 From: Mystery Man Date: Mon, 4 Apr 2005 19:00:13 +0000 Subject: This commit was manufactured by cvs2svn to create tag 'V10_2_19mdk'. --- mdk-stage1/dietlibc/i386/pow.S | 67 ------------------------------------------ 1 file changed, 67 deletions(-) delete mode 100644 mdk-stage1/dietlibc/i386/pow.S (limited to 'mdk-stage1/dietlibc/i386/pow.S') diff --git a/mdk-stage1/dietlibc/i386/pow.S b/mdk-stage1/dietlibc/i386/pow.S deleted file mode 100644 index 46562a299..000000000 --- a/mdk-stage1/dietlibc/i386/pow.S +++ /dev/null @@ -1,67 +0,0 @@ -.text -.global pow -.type pow,@function - -# pow(x,y) -.global powf,pow,powl - .type powf,@function - .type pow,@function - .type powl,@function -powf: - flds 4(%esp) # x - flds 8(%esp) # y - jmp .L__pow -powl: - fldt 4(%esp) - fldt 16(%esp) - jmp .L__pow -pow: - fldl 4(%esp) - fldl 12(%esp) -# x^y; st(0)=y, st(1)=x -.L__pow: - ftst # y = 0 ? - fstsw %ax - fld1 # st(0)=1, st(1)=y, st(2)=x - sahf - jz 1f # return 1 - fcomp %st(1) # y = 1 ? - fstsw %ax - fxch # st(0)=x, st(1)=y - sahf - jz 1f # return x - ftst # x = 0 ? - fstsw %ax - sahf - jz 1f - jnc .Lfinpow # x > 0 - fxch # st(0)=y, st(1)=x - fld %st(0) # st(0)=y, st(1)=y, st(2)=x - frndint # st(0)=int(y) - fcomp %st(1) # y = int(y)? - fstsw %ax - fxch - sahf - jnz .Lfinpow # fyl2x -> st(0) = NaN -# y even or odd ? - fld1 - fadd %st(0) # st(0) = 2 - fdivr %st(2),%st(0) # st(0)=st(2)/2 - frndint - fadd %st(0),%st(0) - fcomp %st(2) # st(0) = x, st(1) = y - fstsw %ax - fchs # st(0) = -x - sahf - jz .Lfinpow # y even - call .Lfinpow # y odd - fchs -1: ret -.Lfinpow: - fyl2x - jmp __finexp - -.Lende: -.size pow,.Lende-pow -.size powf,.Lende-powf -.size powl,.Lende-powl -- cgit v1.2.1