Author: tkreuzer Date: Sun Nov 21 09:36:26 2010 New Revision: 49679
URL: http://svn.reactos.org/svn/reactos?rev=49679&view=rev Log: [CRT] - Use ___readcr4 instead of __readcr4, because MSVC doesn't like this intrinsic to be redefined. - Add _ftol2
Added: branches/cmake-bringup/lib/sdk/crt/math/i386/ftol2_asm.s (with props) Modified: branches/cmake-bringup/include/crt/msc/intrin.h branches/cmake-bringup/lib/sdk/crt/CMakeLists.txt branches/cmake-bringup/lib/sdk/crt/misc/i386/readcr4.S
Modified: branches/cmake-bringup/include/crt/msc/intrin.h URL: http://svn.reactos.org/svn/reactos/branches/cmake-bringup/include/crt/msc/in... ============================================================================== --- branches/cmake-bringup/include/crt/msc/intrin.h [iso-8859-1] (original) +++ branches/cmake-bringup/include/crt/msc/intrin.h [iso-8859-1] Sun Nov 21 09:36:26 2010 @@ -283,9 +283,12 @@ unsigned long __readcr0(void); unsigned long __readcr2(void); unsigned long __readcr3(void); -unsigned long __readcr4(void); +//unsigned long __readcr4(void); //#pragma intrinsic(__readcr4) -#pragma function(__readcr4) // HACK: MSVC is broken +// HACK: MSVC is broken +unsigned long ___readcr4(void); +#define __readcr4 ___readcr4 + unsigned int __readdr(unsigned int reg); void __writedr(unsigned reg, unsigned int value); #endif
Modified: branches/cmake-bringup/lib/sdk/crt/CMakeLists.txt URL: http://svn.reactos.org/svn/reactos/branches/cmake-bringup/lib/sdk/crt/CMakeL... ============================================================================== --- branches/cmake-bringup/lib/sdk/crt/CMakeLists.txt [iso-8859-1] (original) +++ branches/cmake-bringup/lib/sdk/crt/CMakeLists.txt [iso-8859-1] Sun Nov 21 09:36:26 2010 @@ -486,12 +486,14 @@ math/i386/fabs_asm.s math/i386/floor_asm.s math/i386/ftol_asm.s + math/i386/ftol2_asm.s math/i386/log_asm.s math/i386/pow_asm.s math/i386/sin_asm.s math/i386/sqrt_asm.s math/i386/tan_asm.s - math/i386/ci.c) + math/i386/ci.c + misc/i386/readcr4.S) elseif(ARCH MATCHES amd64) list(APPEND LIBCNTPR_SOURCE math/cos.c
Added: branches/cmake-bringup/lib/sdk/crt/math/i386/ftol2_asm.s URL: http://svn.reactos.org/svn/reactos/branches/cmake-bringup/lib/sdk/crt/math/i... ============================================================================== --- branches/cmake-bringup/lib/sdk/crt/math/i386/ftol2_asm.s (added) +++ branches/cmake-bringup/lib/sdk/crt/math/i386/ftol2_asm.s [iso-8859-1] Sun Nov 21 09:36:26 2010 @@ -1,0 +1,28 @@ +/* + * COPYRIGHT: See COPYING in the top level directory + * PROJECT: ReactOS kernel + * PURPOSE: Run-Time Library + * FILE: lib/rtl/i386/ftol2.S + * PROGRAMER: + * + */ + +#include <asm.inc> + +EXTERN __ftol:PROC +PUBLIC __ftol2 +PUBLIC __ftol2_sse + +/* FUNCTIONS ***************************************************************/ +.code + +/* + * This routine is called by MSVC-generated code to convert from floating point + * to integer representation. The floating point number to be converted is + * on the top of the floating point stack. + */ +__ftol2: +__ftol2_sse: + jmp __ftol + +END
Propchange: branches/cmake-bringup/lib/sdk/crt/math/i386/ftol2_asm.s ------------------------------------------------------------------------------ svn:eol-style = native
Modified: branches/cmake-bringup/lib/sdk/crt/misc/i386/readcr4.S URL: http://svn.reactos.org/svn/reactos/branches/cmake-bringup/lib/sdk/crt/misc/i... ============================================================================== --- branches/cmake-bringup/lib/sdk/crt/misc/i386/readcr4.S [iso-8859-1] (original) +++ branches/cmake-bringup/lib/sdk/crt/misc/i386/readcr4.S [iso-8859-1] Sun Nov 21 09:36:26 2010 @@ -3,8 +3,8 @@
.code
-PUBLIC ___readcr4 -___readcr4: +PUBLIC ____readcr4 +____readcr4: mov eax, cr4 ret