Author: fireball
Date: Sat Jun 16 16:28:56 2007
New Revision: 27202
URL: http://svn.reactos.org/svn/reactos?rev=27202&view=rev
Log:
- Finally, removing frame pointer was a bad idea (think of exceptions / etc).
Modified:
trunk/reactos/lib/sdk/libcntpr/math/i386/fabs_asm.s
trunk/reactos/lib/sdk/libcntpr/math/i386/log_asm.s
trunk/reactos/lib/sdk/libcntpr/math/i386/sqrt_asm.s
trunk/reactos/lib/sdk/libcntpr/math/i386/trig_asm.s
Modified: trunk/reactos/lib/sdk/libcntpr/math/i386/fabs_asm.s
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/sdk/libcntpr/math/i386…
==============================================================================
--- trunk/reactos/lib/sdk/libcntpr/math/i386/fabs_asm.s (original)
+++ trunk/reactos/lib/sdk/libcntpr/math/i386/fabs_asm.s Sat Jun 16 16:28:56 2007
@@ -3,13 +3,47 @@
* PROJECT: ReactOS kernel
* PURPOSE: Run-Time Library
* FILE: lib/rtl/i386/fabs.S
- * PROGRAMER: Magnus Olsen (greatlord(a)greatlord.com)
-*/
+ * PROGRAMER: Alex Ionescu (alex(a)relsoft.net)
+ *
+ * Copyright (C) 2002 Michael Ringgaard.
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * 3. Neither the name of the project nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES// LOSS OF USE, DATA, OR PROFITS// OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+
.globl _fabs
+
.intel_syntax noprefix
+
+/* FUNCTIONS ***************************************************************/
+
_fabs:
-
- fld qword ptr [esp+8]
- fabs
+ push ebp
+ mov ebp,esp
+ fld qword ptr [ebp+8] // Load real from stack
+ fabs // Take the absolute value
+ pop ebp
ret
Modified: trunk/reactos/lib/sdk/libcntpr/math/i386/log_asm.s
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/sdk/libcntpr/math/i386…
==============================================================================
--- trunk/reactos/lib/sdk/libcntpr/math/i386/log_asm.s (original)
+++ trunk/reactos/lib/sdk/libcntpr/math/i386/log_asm.s Sat Jun 16 16:28:56 2007
@@ -3,14 +3,49 @@
* PROJECT: ReactOS kernel
* PURPOSE: Run-Time Library
* FILE: lib/rtl/i386/log.S
- * PROGRAMER: Magnus Olsen (greatlord(a)greatlord.com)
+ * PROGRAMER: Alex Ionescu (alex(a)relsoft.net)
+ *
+ * Copyright (C) 2002 Michael Ringgaard.
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * 3. Neither the name of the project nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES// LOSS OF USE, DATA, OR PROFITS// OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
*/
+
.globl _log
+
.intel_syntax noprefix
+/* FUNCTIONS ***************************************************************/
+
_log:
- fld qword ptr [esp+8]
- fldln2
- fxch st(1)
- fyl2x
+ push ebp
+ mov ebp,esp
+ fld qword ptr [ebp+8] // Load real from stack
+ fldln2 // Load log base e of 2
+ fxch st(1) // Exchange st, st(1)
+ fyl2x // Compute the natural log(x)
+ pop ebp
ret
Modified: trunk/reactos/lib/sdk/libcntpr/math/i386/sqrt_asm.s
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/sdk/libcntpr/math/i386…
==============================================================================
--- trunk/reactos/lib/sdk/libcntpr/math/i386/sqrt_asm.s (original)
+++ trunk/reactos/lib/sdk/libcntpr/math/i386/sqrt_asm.s Sat Jun 16 16:28:56 2007
@@ -3,15 +3,47 @@
* PROJECT: ReactOS kernel
* PURPOSE: Run-Time Library
* FILE: lib/rtl/i386/sqrt.S
- * PROGRAMER: Magnus Olsen (greatlord(a)greatlord.com)
+ * PROGRAMER: Alex Ionescu (alex(a)relsoft.net)
+ *
+ * Copyright (C) 2002 Michael Ringgaard.
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * 3. Neither the name of the project nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES// LOSS OF USE, DATA, OR PROFITS// OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
*/
-
.globl _sqrt
.intel_syntax noprefix
+/* FUNCTIONS ***************************************************************/
+
_sqrt:
- fld qword ptr [esp+8]
- fsqrt
+ push ebp
+ mov ebp,esp
+ fld qword ptr [ebp+8] // Load real from stack
+ fsqrt // Take the square root
+ pop ebp
ret
Modified: trunk/reactos/lib/sdk/libcntpr/math/i386/trig_asm.s
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/sdk/libcntpr/math/i386…
==============================================================================
--- trunk/reactos/lib/sdk/libcntpr/math/i386/trig_asm.s (original)
+++ trunk/reactos/lib/sdk/libcntpr/math/i386/trig_asm.s Sat Jun 16 16:28:56 2007
@@ -4,33 +4,49 @@
* PURPOSE: Run-Time Library
* FILE: lib/rtl/i386/trig_asm.s
* PROGRAMER: Aleksey Bragin (aleksey reactos org)
-*/
-
+ *
+ */
.globl _atan
.globl _cos
.globl _sin
-.globl _tan
-
+
.intel_syntax noprefix
+/* FUNCTIONS ***************************************************************/
+
_atan:
- fld qword ptr [esp+8]
+ push ebp
+ mov ebp,esp
+ fld qword ptr [ebp+8]
fld1
fpatan
+ pop ebp
ret
_cos:
- fld qword ptr [esp+8]
+ push ebp
+ mov ebp,esp
+ fld qword ptr [ebp+8]
fcos
+ pop ebp
ret
_sin:
- fld qword ptr [esp+8]
+ push ebp
+ mov ebp,esp
+ fld qword ptr [ebp+8]
fsin
+ pop ebp
ret
_tan:
- fld qword ptr [esp+8]
+ push ebp
+ mov ebp,esp
+ sub esp,4
+ fld qword ptr [ebp+8]
fptan
- fstp dword ptr [esp-4]
+ fstp dword ptr [ebp-4]
+ mov esp,ebp
+ pop ebp
ret
+
Author: greatlrd
Date: Sat Jun 16 15:19:30 2007
New Revision: 27200
URL: http://svn.reactos.org/svn/reactos?rev=27200&view=rev
Log:
rewrite atan, cos, fabs, sin, sqrt, tan, it will give us better speed as well the old version was slow
Modified:
trunk/reactos/lib/sdk/libcntpr/math/i386/atan_asm.s
trunk/reactos/lib/sdk/libcntpr/math/i386/cos_asm.s
trunk/reactos/lib/sdk/libcntpr/math/i386/fabs_asm.s
trunk/reactos/lib/sdk/libcntpr/math/i386/log_asm.s
trunk/reactos/lib/sdk/libcntpr/math/i386/sin_asm.s
trunk/reactos/lib/sdk/libcntpr/math/i386/sqrt_asm.s
trunk/reactos/lib/sdk/libcntpr/math/i386/tan_asm.s
Modified: trunk/reactos/lib/sdk/libcntpr/math/i386/atan_asm.s
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/sdk/libcntpr/math/i386…
==============================================================================
--- trunk/reactos/lib/sdk/libcntpr/math/i386/atan_asm.s (original)
+++ trunk/reactos/lib/sdk/libcntpr/math/i386/atan_asm.s Sat Jun 16 15:19:30 2007
@@ -3,48 +3,15 @@
* PROJECT: ReactOS kernel
* PURPOSE: Run-Time Library
* FILE: lib/rtl/i386/atan.S
- * PROGRAMER: Alex Ionescu (alex(a)relsoft.net)
- *
- * Copyright (C) 2002 Michael Ringgaard.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of the project nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES// LOSS OF USE, DATA, OR PROFITS// OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
+ * PROGRAMER: Magnus Olsen (greatlord(a)greatlord.com)
+*/
.globl _atan
.intel_syntax noprefix
-/* FUNCTIONS ***************************************************************/
-
_atan:
- push ebp
- mov ebp,esp
- fld qword ptr [ebp+8] // Load real from stack
- fld1 // Load constant 1
- fpatan // Take the arctangent
- pop ebp
+ fld qword ptr [esp+4]
+ fld1
+ fpatan
ret
Modified: trunk/reactos/lib/sdk/libcntpr/math/i386/cos_asm.s
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/sdk/libcntpr/math/i386…
==============================================================================
--- trunk/reactos/lib/sdk/libcntpr/math/i386/cos_asm.s (original)
+++ trunk/reactos/lib/sdk/libcntpr/math/i386/cos_asm.s Sat Jun 16 15:19:30 2007
@@ -3,47 +3,14 @@
* PROJECT: ReactOS kernel
* PURPOSE: Run-Time Library
* FILE: lib/rtl/i386/cos.S
- * PROGRAMER: Alex Ionescu (alex(a)relsoft.net)
- *
- * Copyright (C) 2002 Michael Ringgaard.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of the project nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
+ * PROGRAMER: Magnus Olsen (greatlord(a)greatlord.com)
+*/
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES// LOSS OF USE, DATA, OR PROFITS// OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
.globl _cos
.intel_syntax noprefix
-/* FUNCTIONS ***************************************************************/
-
_cos:
- push ebp
- mov ebp,esp // Point to the stack frame
- fld qword ptr [ebp+8] // Load real from stack
- fcos // Take the cosine
- pop ebp
+ fld qword ptr [esp+4]
+ fcos
ret
Modified: trunk/reactos/lib/sdk/libcntpr/math/i386/fabs_asm.s
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/sdk/libcntpr/math/i386…
==============================================================================
--- trunk/reactos/lib/sdk/libcntpr/math/i386/fabs_asm.s (original)
+++ trunk/reactos/lib/sdk/libcntpr/math/i386/fabs_asm.s Sat Jun 16 15:19:30 2007
@@ -3,47 +3,13 @@
* PROJECT: ReactOS kernel
* PURPOSE: Run-Time Library
* FILE: lib/rtl/i386/fabs.S
- * PROGRAMER: Alex Ionescu (alex(a)relsoft.net)
- *
- * Copyright (C) 2002 Michael Ringgaard.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of the project nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
+ * PROGRAMER: Magnus Olsen (greatlord(a)greatlord.com)
+*/
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES// LOSS OF USE, DATA, OR PROFITS// OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
.globl _fabs
-
.intel_syntax noprefix
+_fabs:
-/* FUNCTIONS ***************************************************************/
-
-_fabs:
- push ebp
- mov ebp,esp
- fld qword ptr [ebp+8] // Load real from stack
- fabs // Take the absolute value
- pop ebp
+ fld qword ptr [esp+4]
+ fabs
ret
Modified: trunk/reactos/lib/sdk/libcntpr/math/i386/log_asm.s
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/sdk/libcntpr/math/i386…
==============================================================================
--- trunk/reactos/lib/sdk/libcntpr/math/i386/log_asm.s (original)
+++ trunk/reactos/lib/sdk/libcntpr/math/i386/log_asm.s Sat Jun 16 15:19:30 2007
@@ -3,49 +3,14 @@
* PROJECT: ReactOS kernel
* PURPOSE: Run-Time Library
* FILE: lib/rtl/i386/log.S
- * PROGRAMER: Alex Ionescu (alex(a)relsoft.net)
- *
- * Copyright (C) 2002 Michael Ringgaard.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of the project nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES// LOSS OF USE, DATA, OR PROFITS// OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
+ * PROGRAMER: Magnus Olsen (greatlord(a)greatlord.com)
*/
-
.globl _log
-
.intel_syntax noprefix
-/* FUNCTIONS ***************************************************************/
-
_log:
- push ebp
- mov ebp,esp
- fld qword ptr [ebp+8] // Load real from stack
- fldln2 // Load log base e of 2
- fxch st(1) // Exchange st, st(1)
- fyl2x // Compute the natural log(x)
- pop ebp
+ fld qword ptr [esp+4]
+ fldln2
+ fxch st(1)
+ fyl2x
ret
Modified: trunk/reactos/lib/sdk/libcntpr/math/i386/sin_asm.s
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/sdk/libcntpr/math/i386…
==============================================================================
--- trunk/reactos/lib/sdk/libcntpr/math/i386/sin_asm.s (original)
+++ trunk/reactos/lib/sdk/libcntpr/math/i386/sin_asm.s Sat Jun 16 15:19:30 2007
@@ -3,47 +3,12 @@
* PROJECT: ReactOS kernel
* PURPOSE: Run-Time Library
* FILE: lib/rtl/i386/sin.S
- * PROGRAMER: Alex Ionescu (alex(a)relsoft.net)
- *
- * Copyright (C) 2002 Michael Ringgaard.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of the project nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES// LOSS OF USE, DATA, OR PROFITS// OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
+ * PROGRAMER: Magnus Olsen (greatlord(a)greatlord.com)
*/
.globl _sin
-
.intel_syntax noprefix
-
-/* FUNCTIONS ***************************************************************/
-
_sin:
- push ebp // Save register bp
- mov ebp,esp // Point to the stack frame
- fld qword ptr [ebp+8] // Load real from stack
- fsin // Take the sine
- pop ebp // Restore register bp
+ fld qword ptr [esp+4]
+ fsin
ret
Modified: trunk/reactos/lib/sdk/libcntpr/math/i386/sqrt_asm.s
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/sdk/libcntpr/math/i386…
==============================================================================
--- trunk/reactos/lib/sdk/libcntpr/math/i386/sqrt_asm.s (original)
+++ trunk/reactos/lib/sdk/libcntpr/math/i386/sqrt_asm.s Sat Jun 16 15:19:30 2007
@@ -3,47 +3,15 @@
* PROJECT: ReactOS kernel
* PURPOSE: Run-Time Library
* FILE: lib/rtl/i386/sqrt.S
- * PROGRAMER: Alex Ionescu (alex(a)relsoft.net)
- *
- * Copyright (C) 2002 Michael Ringgaard.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of the project nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
+ * PROGRAMER: Magnus Olsen (greatlord(a)greatlord.com)
+ */
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES// LOSS OF USE, DATA, OR PROFITS// OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
.globl _sqrt
.intel_syntax noprefix
-/* FUNCTIONS ***************************************************************/
-
_sqrt:
- push ebp
- mov ebp,esp
- fld qword ptr [ebp+8] // Load real from stack
- fsqrt // Take the square root
- pop ebp
+ fld qword ptr [esp+4]
+ fsqrt
ret
Modified: trunk/reactos/lib/sdk/libcntpr/math/i386/tan_asm.s
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/sdk/libcntpr/math/i386…
==============================================================================
--- trunk/reactos/lib/sdk/libcntpr/math/i386/tan_asm.s (original)
+++ trunk/reactos/lib/sdk/libcntpr/math/i386/tan_asm.s Sat Jun 16 15:19:30 2007
@@ -3,50 +3,14 @@
* PROJECT: ReactOS kernel
* PURPOSE: Run-Time Library
* FILE: lib/rtl/i386/tan.S
- * PROGRAMER: Alex Ionescu (alex(a)relsoft.net)
- *
- * Copyright (C) 2002 Michael Ringgaard.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of the project nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
-
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES// LOSS OF USE, DATA, OR PROFITS// OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
+ * PROGRAMER: Magnus Olsen (magnus(a)greatlord.com)
*/
-
.globl _tan
-
.intel_syntax noprefix
-
-/* FUNCTIONS ***************************************************************/
-
_tan:
- push ebp
- mov ebp,esp
- sub esp,4 // Allocate temporary space
- fld qword ptr [ebp+8] // Load real from stack
- fptan // Take the tangent
- fstp dword ptr [ebp-4] // Throw away the constant 1
- mov esp,ebp // Deallocate temporary space
- pop ebp
+ sub esp,4
+ fld qword ptr [ebp+8]
+ fptan
+ fstp dword ptr [ebp+4]
+ add esp,4;
ret