mirror of
https://github.com/reactos/reactos.git
synced 2025-02-25 01:39:30 +00:00
- Revert changes to CRT which were not supposed to happen at all (26820, 27200:27204), and were incorrect.
- Remove artifacts from strtoul/strtoull source code (excessive line breaks). svn path=/trunk/; revision=27367
This commit is contained in:
parent
55f2798900
commit
2d419df2e3
10 changed files with 215 additions and 65 deletions
|
@ -14,6 +14,9 @@
|
||||||
/* FUNCTIONS ***************************************************************/
|
/* FUNCTIONS ***************************************************************/
|
||||||
|
|
||||||
_atan:
|
_atan:
|
||||||
fld qword ptr [esp+4]
|
push ebp
|
||||||
fpatan
|
mov ebp,esp
|
||||||
|
fld qword ptr [ebp+8]
|
||||||
|
fpatan
|
||||||
|
pop ebp
|
||||||
ret
|
ret
|
||||||
|
|
|
@ -15,8 +15,11 @@
|
||||||
/* FUNCTIONS ***************************************************************/
|
/* FUNCTIONS ***************************************************************/
|
||||||
|
|
||||||
_log10:
|
_log10:
|
||||||
fld qword ptr [esp+4]
|
push ebp
|
||||||
fldlg2
|
mov ebp,esp
|
||||||
fyl2x
|
fld qword ptr [ebp+8]
|
||||||
|
fldlg2
|
||||||
|
fyl2x
|
||||||
|
pop ebp
|
||||||
ret
|
ret
|
||||||
|
|
||||||
|
|
|
@ -26,18 +26,21 @@
|
||||||
<file>allrem_asm.s</file>
|
<file>allrem_asm.s</file>
|
||||||
<file>allshl_asm.s</file>
|
<file>allshl_asm.s</file>
|
||||||
<file>allshr_asm.s</file>
|
<file>allshr_asm.s</file>
|
||||||
|
<file>atan_asm.s</file>
|
||||||
<file>aulldiv_asm.s</file>
|
<file>aulldiv_asm.s</file>
|
||||||
<file>aulldvrm_asm.s</file>
|
<file>aulldvrm_asm.s</file>
|
||||||
<file>aullrem_asm.s</file>
|
<file>aullrem_asm.s</file>
|
||||||
<file>aullshr_asm.s</file>
|
<file>aullshr_asm.s</file>
|
||||||
<file>ceil_asm.s</file>
|
<file>ceil_asm.s</file>
|
||||||
|
<file>cos_asm.s</file>
|
||||||
<file>fabs_asm.s</file>
|
<file>fabs_asm.s</file>
|
||||||
<file>floor_asm.s</file>
|
<file>floor_asm.s</file>
|
||||||
<file>ftol_asm.s</file>
|
<file>ftol_asm.s</file>
|
||||||
<file>log_asm.s</file>
|
<file>log_asm.s</file>
|
||||||
<file>pow_asm.s</file>
|
<file>pow_asm.s</file>
|
||||||
|
<file>sin_asm.s</file>
|
||||||
<file>sqrt_asm.s</file>
|
<file>sqrt_asm.s</file>
|
||||||
<file>trig_asm.s</file>
|
<file>tan_asm.s</file>
|
||||||
</directory>
|
</directory>
|
||||||
</if>
|
</if>
|
||||||
<file>abs.c</file>
|
<file>abs.c</file>
|
||||||
|
|
50
reactos/lib/sdk/libcntpr/math/i386/atan_asm.s
Normal file
50
reactos/lib/sdk/libcntpr/math/i386/atan_asm.s
Normal file
|
@ -0,0 +1,50 @@
|
||||||
|
/*
|
||||||
|
* COPYRIGHT: See COPYING in the top level directory
|
||||||
|
* PROJECT: ReactOS kernel
|
||||||
|
* PURPOSE: Run-Time Library
|
||||||
|
* FILE: lib/rtl/i386/atan.S
|
||||||
|
* PROGRAMER: Alex Ionescu (alex@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 _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
|
||||||
|
ret
|
49
reactos/lib/sdk/libcntpr/math/i386/cos_asm.s
Normal file
49
reactos/lib/sdk/libcntpr/math/i386/cos_asm.s
Normal file
|
@ -0,0 +1,49 @@
|
||||||
|
/*
|
||||||
|
* COPYRIGHT: See COPYING in the top level directory
|
||||||
|
* PROJECT: ReactOS kernel
|
||||||
|
* PURPOSE: Run-Time Library
|
||||||
|
* FILE: lib/rtl/i386/cos.S
|
||||||
|
* PROGRAMER: Alex Ionescu (alex@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 _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
|
||||||
|
ret
|
49
reactos/lib/sdk/libcntpr/math/i386/sin_asm.s
Normal file
49
reactos/lib/sdk/libcntpr/math/i386/sin_asm.s
Normal file
|
@ -0,0 +1,49 @@
|
||||||
|
/*
|
||||||
|
* COPYRIGHT: See COPYING in the top level directory
|
||||||
|
* PROJECT: ReactOS kernel
|
||||||
|
* PURPOSE: Run-Time Library
|
||||||
|
* FILE: lib/rtl/i386/sin.S
|
||||||
|
* PROGRAMER: Alex Ionescu (alex@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 _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
|
||||||
|
ret
|
52
reactos/lib/sdk/libcntpr/math/i386/tan_asm.s
Normal file
52
reactos/lib/sdk/libcntpr/math/i386/tan_asm.s
Normal file
|
@ -0,0 +1,52 @@
|
||||||
|
/*
|
||||||
|
* COPYRIGHT: See COPYING in the top level directory
|
||||||
|
* PROJECT: ReactOS kernel
|
||||||
|
* PURPOSE: Run-Time Library
|
||||||
|
* FILE: lib/rtl/i386/tan.S
|
||||||
|
* PROGRAMER: Alex Ionescu (alex@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 _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
|
||||||
|
ret
|
|
@ -1,53 +0,0 @@
|
||||||
/*
|
|
||||||
* COPYRIGHT: See COPYING in the top level directory
|
|
||||||
* PROJECT: ReactOS kernel
|
|
||||||
* 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:
|
|
||||||
push ebp
|
|
||||||
mov ebp,esp
|
|
||||||
fld qword ptr [ebp+8]
|
|
||||||
fld1
|
|
||||||
fpatan
|
|
||||||
pop ebp
|
|
||||||
ret
|
|
||||||
|
|
||||||
_cos:
|
|
||||||
push ebp
|
|
||||||
mov ebp,esp
|
|
||||||
fld qword ptr [ebp+8]
|
|
||||||
fcos
|
|
||||||
pop ebp
|
|
||||||
ret
|
|
||||||
|
|
||||||
_sin:
|
|
||||||
push ebp
|
|
||||||
mov ebp,esp
|
|
||||||
fld qword ptr [ebp+8]
|
|
||||||
fsin
|
|
||||||
pop ebp
|
|
||||||
ret
|
|
||||||
|
|
||||||
_tan:
|
|
||||||
push ebp
|
|
||||||
mov ebp,esp
|
|
||||||
sub esp,4
|
|
||||||
fld qword ptr [ebp+8]
|
|
||||||
fptan
|
|
||||||
fstp dword ptr [ebp-4]
|
|
||||||
mov esp,ebp
|
|
||||||
pop ebp
|
|
||||||
ret
|
|
||||||
|
|
|
@ -4,7 +4,6 @@
|
||||||
#include <limits.h>
|
#include <limits.h>
|
||||||
#include <ctype.h>
|
#include <ctype.h>
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Convert a string to an unsigned long integer.
|
* Convert a string to an unsigned long integer.
|
||||||
*
|
*
|
||||||
|
@ -67,7 +66,6 @@ strtoul(const char *nptr, char **endptr, int base)
|
||||||
if (any < 0)
|
if (any < 0)
|
||||||
{
|
{
|
||||||
acc = ULONG_MAX;
|
acc = ULONG_MAX;
|
||||||
|
|
||||||
}
|
}
|
||||||
else if (neg)
|
else if (neg)
|
||||||
acc = -acc;
|
acc = -acc;
|
||||||
|
|
|
@ -4,7 +4,6 @@
|
||||||
#include <limits.h>
|
#include <limits.h>
|
||||||
#include <ctype.h>
|
#include <ctype.h>
|
||||||
|
|
||||||
|
|
||||||
unsigned long long
|
unsigned long long
|
||||||
strtoull(const char *nptr, char **endptr, int base)
|
strtoull(const char *nptr, char **endptr, int base)
|
||||||
{
|
{
|
||||||
|
@ -59,7 +58,6 @@ strtoull(const char *nptr, char **endptr, int base)
|
||||||
if (any < 0)
|
if (any < 0)
|
||||||
{
|
{
|
||||||
acc = ULLONG_MAX;
|
acc = ULLONG_MAX;
|
||||||
|
|
||||||
}
|
}
|
||||||
else if (neg)
|
else if (neg)
|
||||||
acc = -acc;
|
acc = -acc;
|
||||||
|
@ -67,5 +65,3 @@ strtoull(const char *nptr, char **endptr, int base)
|
||||||
*endptr = any ? (char *)((size_t)(s - 1)) : (char *)((size_t)nptr);
|
*endptr = any ? (char *)((size_t)(s - 1)) : (char *)((size_t)nptr);
|
||||||
return acc;
|
return acc;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue