[ros-diffs] [tkreuzer] 41949: Get rid of memcpy at all and use memove instead like windows does, but instead of duplicating the code, forward the exports. Fixes crt build.

tkreuzer at svn.reactos.org tkreuzer at svn.reactos.org
Tue Jul 14 01:49:15 CEST 2009


Author: tkreuzer
Date: Tue Jul 14 03:49:14 2009
New Revision: 41949

URL: http://svn.reactos.org/svn/reactos?rev=41949&view=rev
Log:
Get rid of memcpy at all and use memove instead like windows does, but instead of duplicating the code, forward the exports. Fixes crt build.

Removed:
    branches/ros-amd64-bringup/reactos/dll/win32/msvcrt/msvcrt.def
    branches/ros-amd64-bringup/reactos/lib/sdk/crt/mem/i386/memcpy_asm.s
    branches/ros-amd64-bringup/reactos/lib/sdk/crt/mem/memcpy.c
Modified:
    branches/ros-amd64-bringup/reactos/dll/ntdll/def/ntdll_amd64.def
    branches/ros-amd64-bringup/reactos/dll/ntdll/def/ntdll_arm.def
    branches/ros-amd64-bringup/reactos/dll/ntdll/def/ntdll_i386.def
    branches/ros-amd64-bringup/reactos/dll/win32/msvcrt/msvcrt-amd64.def
    branches/ros-amd64-bringup/reactos/dll/win32/msvcrt/msvcrt-i386.def
    branches/ros-amd64-bringup/reactos/lib/sdk/crt/crt.rbuild
    branches/ros-amd64-bringup/reactos/lib/sdk/crt/libcntpr.rbuild
    branches/ros-amd64-bringup/reactos/ntoskrnl/ntoskrnl.pspec

Modified: branches/ros-amd64-bringup/reactos/dll/ntdll/def/ntdll_amd64.def
URL: http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/dll/ntdll/def/ntdll_amd64.def?rev=41949&r1=41948&r2=41949&view=diff
==============================================================================
--- branches/ros-amd64-bringup/reactos/dll/ntdll/def/ntdll_amd64.def [iso-8859-1] (original)
+++ branches/ros-amd64-bringup/reactos/dll/ntdll/def/ntdll_amd64.def [iso-8859-1] Tue Jul 14 03:49:14 2009
@@ -655,7 +655,7 @@
 RtlCopyLuid
 RtlCopyLuidAndAttributesArray
 ;RtlCopyMappedMemory
-RtlCopyMemory=memcpy
+RtlCopyMemory=memmove
 ;RtlCopyMemoryNonTemporal
 ;RtlCopyMemoryStreamTo
 ;RtlCopyOutOfProcessMemoryStreamTo
@@ -1763,7 +1763,7 @@
 mbstowcs
 memchr
 memcmp
-memcpy
+memcpy=memmove
 memmove
 memset
 pow

Modified: branches/ros-amd64-bringup/reactos/dll/ntdll/def/ntdll_arm.def
URL: http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/dll/ntdll/def/ntdll_arm.def?rev=41949&r1=41948&r2=41949&view=diff
==============================================================================
--- branches/ros-amd64-bringup/reactos/dll/ntdll/def/ntdll_arm.def [iso-8859-1] (original)
+++ branches/ros-amd64-bringup/reactos/dll/ntdll/def/ntdll_arm.def [iso-8859-1] Tue Jul 14 03:49:14 2009
@@ -1027,7 +1027,7 @@
 mbstowcs
 memchr
 memcmp
-memcpy
+memcpy=memmove
 memmove
 memset
 qsort

Modified: branches/ros-amd64-bringup/reactos/dll/ntdll/def/ntdll_i386.def
URL: http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/dll/ntdll/def/ntdll_i386.def?rev=41949&r1=41948&r2=41949&view=diff
==============================================================================
--- branches/ros-amd64-bringup/reactos/dll/ntdll/def/ntdll_i386.def [iso-8859-1] (original)
+++ branches/ros-amd64-bringup/reactos/dll/ntdll/def/ntdll_i386.def [iso-8859-1] Tue Jul 14 03:49:14 2009
@@ -1365,7 +1365,7 @@
 mbstowcs
 memchr
 memcmp
-memcpy
+memcpy=memmove
 memmove
 memset
 pow

Modified: branches/ros-amd64-bringup/reactos/dll/win32/msvcrt/msvcrt-amd64.def
URL: http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/dll/win32/msvcrt/msvcrt-amd64.def?rev=41949&r1=41948&r2=41949&view=diff
==============================================================================
--- branches/ros-amd64-bringup/reactos/dll/win32/msvcrt/msvcrt-amd64.def [iso-8859-1] (original)
+++ branches/ros-amd64-bringup/reactos/dll/win32/msvcrt/msvcrt-amd64.def [iso-8859-1] Tue Jul 14 03:49:14 2009
@@ -750,7 +750,7 @@
   mbtowc @744
   memchr @745
   memcmp @746
-  memcpy @747
+  memcpy=memmove @747
   memmove @748
   memset @749
   mktime @750

Modified: branches/ros-amd64-bringup/reactos/dll/win32/msvcrt/msvcrt-i386.def
URL: http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/dll/win32/msvcrt/msvcrt-i386.def?rev=41949&r1=41948&r2=41949&view=diff
==============================================================================
--- branches/ros-amd64-bringup/reactos/dll/win32/msvcrt/msvcrt-i386.def [iso-8859-1] (original)
+++ branches/ros-amd64-bringup/reactos/dll/win32/msvcrt/msvcrt-i386.def [iso-8859-1] Tue Jul 14 03:49:14 2009
@@ -750,7 +750,7 @@
   mbtowc @744
   memchr @745
   memcmp @746
-  memcpy @747
+  memcpy=memmove @747
   memmove @748
   memset @749
   mktime @750

Removed: branches/ros-amd64-bringup/reactos/dll/win32/msvcrt/msvcrt.def
URL: http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/dll/win32/msvcrt/msvcrt.def?rev=41948&view=auto
==============================================================================
--- branches/ros-amd64-bringup/reactos/dll/win32/msvcrt/msvcrt.def [iso-8859-1] (original)
+++ branches/ros-amd64-bringup/reactos/dll/win32/msvcrt/msvcrt.def (removed)
@@ -1,858 +1,0 @@
-;
-; ReactOS MSVCRT Library
-;
-LIBRARY msvcrt.dll
-
-EXPORTS
-  $I10_OUTPUT=MSVCRT_I10_OUTPUT @57
-  ??0__non_rtti_object@@QAE at ABV0@@Z=__thiscall_MSVCRT___non_rtti_object_copy_ctor @1
-  ??0__non_rtti_object@@QAE at PBD@Z=__thiscall_MSVCRT___non_rtti_object_ctor @2
-;  ??0bad_cast@@AAE at PBQBD@Z @3
-  ??0bad_cast@@QAE at ABQBD@Z=__thiscall_MSVCRT_bad_cast_ctor @4
-  ??0bad_cast@@QAE at ABV0@@Z=__thiscall_MSVCRT_bad_cast_copy_ctor @5
-;  ??0bad_cast@@QAE at PBD@Z @6
-  ??0bad_typeid@@QAE at ABV0@@Z=__thiscall_MSVCRT_bad_typeid_copy_ctor @7
-  ??0bad_typeid@@QAE at PBD@Z=__thiscall_MSVCRT_bad_typeid_ctor @8
-  ??0exception@@QAE at ABQBD@Z=__thiscall_MSVCRT_exception_ctor @9
-;  ??0exception@@QAE at ABQBDH@Z @10
-  ??0exception@@QAE at ABV0@@Z=__thiscall_MSVCRT_exception_copy_ctor @11
-  ??0exception@@QAE at XZ=__thiscall_MSVCRT_exception_default_ctor @12
-  ??1__non_rtti_object@@UAE at XZ=__thiscall_MSVCRT___non_rtti_object_dtor @13
-  ??1bad_cast@@UAE at XZ=__thiscall_MSVCRT_bad_cast_dtor @14
-  ??1bad_typeid@@UAE at XZ=__thiscall_MSVCRT_bad_typeid_dtor @15
-  ??1exception@@UAE at XZ=__thiscall_MSVCRT_exception_dtor @16
-  ??1type_info@@UAE at XZ=__thiscall_MSVCRT_type_info_dtor @17
-  ??2 at YAPAXI@Z=MSVCRT_operator_new @18
-  ??3 at YAXPAX@Z=MSVCRT_operator_delete @19
-  ??4__non_rtti_object@@QAEAAV0 at ABV0@@Z=__thiscall_MSVCRT___non_rtti_object_opequals @20
-  ??4bad_cast@@QAEAAV0 at ABV0@@Z=__thiscall_MSVCRT_bad_cast_opequals @21
-  ??4bad_typeid@@QAEAAV0 at ABV0@@Z=__thiscall_MSVCRT_bad_typeid_opequals @22
-  ??4exception@@QAEAAV0 at ABV0@@Z=__thiscall_MSVCRT_exception_opequals @23
-  ??8type_info@@QBEHABV0@@Z=__thiscall_MSVCRT_type_info_opequals_equals @24
-  ??9type_info@@QBEHABV0@@Z=__thiscall_MSVCRT_type_info_opnot_equals @25
-  ??_7__non_rtti_object@@6B@=MSVCRT___non_rtti_object_vtable@@6B@ @26 DATA
-  ??_7bad_cast@@6B@=MSVCRT_bad_cast_vtable @27 DATA
-  ??_7bad_typeid@@6B@=MSVCRT_bad_typeid_vtable @28 DATA
-  ??_7exception@@6B@=MSVCRT_exception_vtable @29 DATA
-  ??_E__non_rtti_object@@UAEPAXI at Z=__thiscall_MSVCRT___non_rtti_object_vector_dtor @30
-  ??_Ebad_cast@@UAEPAXI at Z=__thiscall_MSVCRT_bad_cast_vector_dtor @31
-  ??_Ebad_typeid@@UAEPAXI at Z=__thiscall_MSVCRT_bad_typeid_vector_dtor @32
-  ??_Eexception@@UAEPAXI at Z=__thiscall_MSVCRT_exception_vector_dtor @33
-;  ??_Fbad_cast@@QAEXXZ @34
-;  ??_Fbad_typeid@@QAEXXZ @35
-  ??_G__non_rtti_object@@UAEPAXI at Z=__thiscall_MSVCRT___non_rtti_object_scalar_dtor @36
-  ??_Gbad_cast@@UAEPAXI at Z=__thiscall_MSVCRT_bad_cast_scalar_dtor @37
-  ??_Gbad_typeid@@UAEPAXI at Z=__thiscall_MSVCRT_bad_typeid_scalar_dtor @38
-  ??_Gexception@@UAEPAXI at Z=__thiscall_MSVCRT_exception_scalar_dtor @39
-  ??_U at YAPAXI@Z=MSVCRT_operator_new @40
-  ??_V at YAXPAX@Z=MSVCRT_operator_delete @41
-  ?_query_new_handler@@YAP6AHI at ZXZ=MSVCRT__query_new_handler @43
-  ?_query_new_mode@@YAHXZ=MSVCRT__query_new_mode @44
-  ?_set_new_handler@@YAP6AHI at ZP6AHI@Z at Z=MSVCRT__set_new_handler @45
-  ?_set_new_mode@@YAHH at Z=MSVCRT__set_new_mode @46
-  ?_set_se_translator@@YAP6AXIPAU_EXCEPTION_POINTERS@@@ZP6AXI0 at Z@Z=MSVCRT__set_se_translator @47
-  ?before at type_info@@QBEHABV1@@Z=__thiscall_MSVCRT_type_info_before @48
-  ?name at type_info@@QBEPBDXZ=__thiscall_MSVCRT_type_info_name @49
-  ?raw_name at type_info@@QBEPBDXZ=__thiscall_MSVCRT_type_info_raw_name @50
-  ?set_new_handler@@YAP6AXXZP6AXXZ at Z=MSVCRT__set_new_handler @51
-  ?set_terminate@@YAP6AXXZP6AXXZ at Z=MSVCRT_set_terminate @52
-  ?set_unexpected@@YAP6AXXZP6AXXZ at Z=MSVCRT_set_unexpected @53
-  ?terminate@@YAXXZ=MSVCRT_terminate @54
-  ?unexpected@@YAXXZ=MSVCRT_unexpected @55
-  ?what at exception@@UBEPBDXZ=__thiscall_MSVCRT_what_exception @56
-  _CIacos @58
-  _CIasin @59
-  _CIatan @60
-  _CIatan2 @61
-  _CIcos @62
-  _CIcosh @63
-  _CIexp @64
-  _CIfmod @65
-  _CIlog @66
-  _CIlog10 @67
-  _CIpow @68
-  _CIsin @69
-  _CIsinh @70
-  _CIsqrt @71
-  _CItan @72
-  _CItanh @73
-  _CxxThrowException @74
-  _EH_prolog @75
-  _Getdays @76
-  _Getmonths @77
-  _Gettnames @78
-  _HUGE @79 DATA
-  _Strftime @80
-  _XcptFilter @81
-  __CppXcptFilter @82
-;  __CxxCallUnwindDtor @83
-;  __CxxCallUnwindVecDtor @84
-  __CxxDetectRethrow @85
-;  __CxxExceptionFilter @86
-  __CxxFrameHandler @87
-;  __CxxFrameHandler2 @88
-  __CxxLongjmpUnwind @89
-  __CxxQueryExceptionSize @90
-;  __CxxRegisterExceptionObject @91
-;  __CxxUnregisterExceptionObject @92
-;  __DestructExceptionObject @93
-  __RTCastToVoid=MSVCRT___RTCastToVoid @94
-  __RTDynamicCast=MSVCRT___RTDynamicCast @95
-  __RTtypeid=MSVCRT___RTtypeid @96
-  __STRINGTOLD @97
-;  ___lc_codepage_func @98
-;  ___lc_collate_cp_func @99
-;  ___lc_handle_func @100
-;  ___mb_cur_max_func @101
-  ___setlc_active_func @102
-  ___unguarded_readlc_active_add_func @103
-  __argc @104 DATA
-  __argv @105 DATA
-  __badioinfo @106 DATA
-  __crtCompareStringA=kernel32.CompareStringA @107
-  __crtCompareStringW=kernel32.CompareStringW @108
-  __crtGetLocaleInfoW=kernel32.GetLocaleInfo @109
-  __crtGetStringTypeW=kernel32.GetStringTypeW @110
-  __crtLCMapStringA @111
-;  __crtLCMapStringW @112
-  __dllonexit @113
-  __doserrno @114
-  __fpecode @115
-  __getmainargs @116
-  __initenv @117
-  __iob_func=__p__iob @118
-  __isascii @119
-  __iscsym @120
-  __iscsymf @121
-  __lc_codepage @122 DATA
-  __lc_collate_cp @123 DATA
-  __lc_handle @124 DATA
-  __lconv_init @125
-  __mb_cur_max @126 DATA
-  __p___argc @127
-  __p___argv @128
-  __p___initenv @129
-  __p___mb_cur_max @130
-  __p___wargv @131
-  __p___winitenv @132
-  __p__acmdln @133
-  __p__amblksiz @134
-  __p__commode @135
-  __p__daylight @136
-  __p__dstbias @137
-  __p__environ @138
-;  __p__fileinfo @139
-  __p__fmode @140
-  __p__iob @141
-;  __p__mbcasemap @142
-  __p__mbctype @143
-  __p__osver @144
-  __p__pctype @145
-  __p__pgmptr @146
-  __p__pwctype @147
-  __p__timezone @148
-  __p__tzname @149
-  __p__wcmdln @150
-  __p__wenviron @151
-  __p__winmajor @152
-  __p__winminor @153
-  __p__winver @154
-  __p__wpgmptr @155
-;  __pctype_func @156
-  __pioinfo @157 DATA
-;  __pwctype_func @158
-  __pxcptinfoptrs @159
-  __set_app_type @160
-  __setlc_active @161 DATA
-  __setusermatherr @162
-  __threadhandle @163
-  __threadid @164
-  __toascii @165
-  __unDName @166
-  __unDNameEx @167
-;  __uncaught_exception @42
-  __unguarded_readlc_active @168 DATA
-  __wargv @169 DATA
-;  __wcserror @170
-  __wgetmainargs @171
-  __winitenv @172 DATA
-  _abnormal_termination @173
-;  _abs64 @174
-  _access @175
-  _acmdln @176 DATA
-  _adj_fdiv_m16i @177
-  _adj_fdiv_m32 @178
-  _adj_fdiv_m32i @179
-  _adj_fdiv_m64 @180
-  _adj_fdiv_r @181
-  _adj_fdivr_m16i @182
-  _adj_fdivr_m32 @183
-  _adj_fdivr_m32i @184
-  _adj_fdivr_m64 @185
-  _adj_fpatan @186
-  _adj_fprem @187
-  _adj_fprem1 @188
-  _adj_fptan @189
-  _adjust_fdiv @190 DATA
-  _aexit_rtn @191
-  _aligned_free @192
-  _aligned_malloc @193
-  _aligned_offset_malloc @194
-  _aligned_offset_realloc @195
-  _aligned_realloc @196
-  _amsg_exit @197
-  _assert @198
-;  _atodbl @199
-  _atoi64 @200
-  _atoldbl @201
-  _beep @202
-  _beginthread @203
-  _beginthreadex @204
-  _c_exit @205
-  _cabs @206
-  _callnewh @207
-  _cexit @208
-  _cgets @209
-;  _cgetws @210
-  _chdir @211
-  _chdrive @212
-  _chgsign @213
-  _chkesp @214
-  _chmod @215
-  _chsize @216
-  _clearfp @217
-  _close @218
-  _commit @219
-  _commode @220 DATA
-  _control87 @221
-  _controlfp @222
-  _copysign @223
-  _cprintf @224
-  _cputs @225
-;  _cputws @226
-  _creat @227
-  _cscanf @228
-;  _ctime64 @229
-  _ctype @230 DATA
-  _cwait @231
-;  _cwprintf @232
-;  _cwscanf @233
-  _daylight @234 DATA
-  _dstbias @235 DATA
-  _dup @236
-  _dup2 @237
-  _ecvt @238
-  _endthread @239
-  _endthreadex @240
-  _environ @241 DATA
-  _eof @242
-  _errno @243
-  _except_handler2 @244
-  _except_handler3 @245
-  _execl @246
-  _execle @247
-  _execlp @248
-  _execlpe @249
-  _execv @250
-  _execve @251
-  _execvp @252
-  _execvpe @253
-  _exit @254
-  _expand @255
-  _fcloseall @256
-  _fcvt @257
-  _fdopen @258
-  _fgetchar @259
-  _fgetwchar @260
-  _filbuf @261
-;  _fileinfo @262
-  _filelength @263
-  _filelengthi64 @264
-  _fileno @265
-  _findclose @266
-  _findfirst @267
-  _findfirst64 @268
-  _findfirsti64 @269
-  _findnext @270
-  _findnext64 @271
-  _findnexti64 @272
-  _finite @273
-  _flsbuf @274
-  _flushall @275
-  _fmode @276 DATA
-  _fpclass @277
-  _fpieee_flt @278
-  _fpreset @279
-  _fputchar @280
-  _fputwchar @281
-  _fsopen @282
-  _fstat @283
-  _fstat64 @284
-  _fstati64 @285
-  _ftime @286
-;  _ftime64 @287
-  _ftol @288
-  _fullpath @289
-  _futime @290
-;  _futime64 @291
-  _gcvt @292
-;  _get_heap_handle @293
-  _get_osfhandle @294
-  _get_sbh_threshold @295
-  _getch @296
-  _getche @297
-  _getcwd @298
-  _getdcwd @299
-  _getdiskfree @300
-  _getdllprocaddr @301
-  _getdrive @302
-  _getdrives=kernel32.GetLogicalDrives @303
-  _getmaxstdio @304
-  _getmbcp @305
-  _getpid=kernel32.GetCurrentProcessId @306
-  _getsystime @307
-  _getw @308
-;  _getwch @309
-;  _getwche @310
-  _getws @311
-  _global_unwind2 @312
-;  _gmtime64 @313
-  _heapadd @314
-  _heapchk @315
-  _heapmin @316
-  _heapset @317
-;  _heapused @318
-  _heapwalk @319
-  _hypot @320
-  _i64toa @321
-  _i64tow @322
-  _initterm @323
-;  _inp @324
-;  _inpd @325
-;  _inpw @326
-  _iob @327 DATA
-  _isatty @328
-  _isctype @329
-  _ismbbalnum @330
-  _ismbbalpha @331
-  _ismbbgraph @332
-  _ismbbkalnum @333
-  _ismbbkana @334
-;  _ismbbkprint @335
-  _ismbbkpunct @336
-  _ismbblead @337
-  _ismbbprint @338
-  _ismbbpunct @339
-  _ismbbtrail @340
-  _ismbcalnum @341
-  _ismbcalpha @342
-  _ismbcdigit @343
-  _ismbcgraph @344
-  _ismbchira @345
-  _ismbckata @346
-  _ismbcl0 @347
-  _ismbcl1 @348
-  _ismbcl2 @349
-  _ismbclegal @350
-  _ismbclower @351
-  _ismbcprint @352
-  _ismbcpunct @353
-  _ismbcspace @354
-  _ismbcsymbol @355
-  _ismbcupper @356
-  _ismbslead @357
-  _ismbstrail @358
-  _isnan @359
-  _itoa @360
-  _itow @361
-  _j0 @362
-  _j1 @363
-  _jn @364
-  _kbhit @365
-  _lfind @366
-  _loaddll @367
-  _local_unwind2 @368
-;  _localtime64 @369
-  _lock @370
-  _locking @371
-  _logb @372
-  _longjmpex=longjmp @373
-  _lrotl @374
-  _lrotr @375
-  _lsearch @376
-  _lseek @377
-  _lseeki64 @378
-  _ltoa @379
-  _ltow @380
-  _makepath @381
-  _mbbtombc @382
-  _mbbtype @383
-;  _mbcasemap @384
-  _mbccpy @385
-  _mbcjistojms @386
-  _mbcjmstojis @387
-  _mbclen @388
-  _mbctohira @389
-  _mbctokata @390
-  _mbctolower @391
-  _mbctombb @392
-  _mbctoupper @393
-  _mbctype @394 DATA
-  _mbsbtype @395
-  _mbscat @396
-  _mbschr @397
-  _mbscmp @398
-  _mbscoll @399
-  _mbscpy @400
-  _mbscspn @401
-  _mbsdec @402
-  _mbsdup @403
-  _mbsicmp @404
-  _mbsicoll @405
-  _mbsinc @406
-  _mbslen @407
-  _mbslwr @408
-  _mbsnbcat @409
-  _mbsnbcmp @410
-  _mbsnbcnt @411
-  _mbsnbcoll @412
-  _mbsnbcpy @413
-  _mbsnbicmp @414
-  _mbsnbicoll @415
-  _mbsnbset @416
-  _mbsncat @417
-  _mbsnccnt @418
-  _mbsncmp @419
-  _mbsncoll @420
-  _mbsncpy @421
-  _mbsnextc @422
-  _mbsnicmp @423
-  _mbsnicoll @424
-  _mbsninc @425
-  _mbsnset @426
-  _mbspbrk @427
-  _mbsrchr @428
-  _mbsrev @429
-  _mbsset @430
-  _mbsspn @431
-  _mbsspnp @432
-  _mbsstr @433
-  _mbstok @434
-  _mbstrlen @435
-  _mbsupr @436
-  _memccpy @437
-  _memicmp @438
-  _mkdir @439
-;  _mkgmtime @440
-;  _mkgmtime64 @441
-  _mktemp @442
-;  _mktime64 @443
-  _msize @444
-  _nextafter @445
-  _onexit @446
-  _open @447
-  _open_osfhandle @448
-;  _osplatform @449
-  _osver @450 DATA
-;  _outp @451
-;  _outpd @452
-;  _outpw @453
-  _pclose @454
-  _pctype @455 DATA
-  _pgmptr @456 DATA
-  _pipe @457
-  _popen @458
-  _purecall @459
-  _putch @460
-  _putenv @461
-  _putw @462
-;  _putwch @463
-  _putws @464
-  _pwctype @465
-  _read @466
-;  _resetstkoflw @467
-  _rmdir @468
-  _rmtmp @469
-  _rotl @470
-;  _rotl64 @471
-  _rotr @472
-;  _rotr64 @473
-  _safe_fdiv @474
-  _safe_fdivr @475
-  _safe_fprem @476
-  _safe_fprem1 @477
-  _scalb @478
-;  _scprintf @479
-;  _scwprintf @480
-  _searchenv @481
-  _seh_longjmp_unwind=_seh_longjmp_unwind at 4 @482
-;  _set_SSE2_enable @483
-  _set_error_mode @484
-  _set_sbh_threshold @485
-  _seterrormode @486
-  _setjmp @487
-  _setjmp3 @488
-  _setmaxstdio @489
-  _setmbcp @490
-  _setmode @491
-  _setsystime @492
-  _sleep @493
-  _snprintf @494
-;  _snscanf @495
-  _snwprintf @496
-;  _snwscanf @497
-  _sopen @498
-  _spawnl @499
-  _spawnle @500
-  _spawnlp @501
-  _spawnlpe @502
-  _spawnv @503
-  _spawnve @504
-  _spawnvp @505
-  _spawnvpe @506
-  _splitpath @507
-  _stat @508
-  _stat64 @509
-  _stati64 @510
-  _statusfp @511
-  _strcmpi @512
-  _strdate @513
-  _strdup @514
-  _strerror @515
-  _stricmp @516
-  _stricoll @517
-  _strlwr @518
-  _strncoll @519
-  _strnicmp @520
-  _strnicoll @521
-  _strnset @522
-  _strrev @523
-  _strset @524
-  _strtime @525
-  _strtoi64 @526
-  _strtoui64=strtoull @527
-  _strupr @528
-  _swab @529
-  _sys_errlist @530 DATA
-  _sys_nerr @531 DATA
-  _tell @532
-  _telli64 @533
-  _tempnam @534
-;  _time64 @535
-  _timezone @536 DATA
-  _tolower @537
-  _toupper @538
-  _tzname @539 DATA
-  _tzset @540
-  _ui64toa @541
-  _ui64tow @542
-  _ultoa @543
-  _ultow @544
-  _umask @545
-  _ungetch @546
-;  _ungetwch @547
-  _unlink @548
-  _unloaddll @549
-  _unlock @550
-  _utime @551
-;  _utime64 @552
-;  _vscprintf @553
-;  _vscwprintf @554
-  _vsnprintf @555
-  _vsnwprintf @556
-  _waccess @557
-  _wasctime @558
-  _wchdir @559
-  _wchmod @560
-  _wcmdln @561
-  _wcreat @562
-  _wcsdup @563
-;  _wcserror @564
-  _wcsicmp @565
-  _wcsicoll @566
-  _wcslwr @567
-  _wcsncoll @568
-  _wcsnicmp @569
-  _wcsnicoll @570
-  _wcsnset @571
-  _wcsrev @572
-  _wcsset @573
-  _wcstoi64 @574
-  _wcstoui64 @575
-  _wcsupr @576
-  _wctime @577
-;  _wctime64 @578
-;  _wctype @579
-  _wenviron @580 DATA
-  _wexecl @581
-  _wexecle @582
-  _wexeclp @583
-  _wexeclpe @584
-  _wexecv @585
-  _wexecve @586
-  _wexecvp @587
-  _wexecvpe @588
-  _wfdopen @589
-  _wfindfirst @590
-  _wfindfirst64 @591
-  _wfindfirsti64 @592
-  _wfindnext @593
-  _wfindnext64 @594
-  _wfindnexti64 @595
-  _wfopen @596
-  _wfreopen @597
-  _wfsopen @598
-  _wfullpath @599
-  _wgetcwd @600
-  _wgetdcwd @601
-  _wgetenv @602
-  _winmajor @603 DATA
-  _winminor @604 DATA
-  _winver @605 DATA
-  _wmakepath @606
-  _wmkdir @607
-  _wmktemp @608
-  _wopen @609
-  _wperror @610
-  _wpgmptr @611 DATA
-  _wpopen @612
-  _wputenv @613
-  _wremove @614
-  _wrename @615
-  _write @616
-  _wrmdir @617
-  _wsearchenv @618
-  _wsetlocale @619
-  _wsopen @620
-  _wspawnl @621
-  _wspawnle @622
-  _wspawnlp @623
-  _wspawnlpe @624
-  _wspawnv @625
-  _wspawnve @626
-  _wspawnvp @627
-  _wspawnvpe @628
-  _wsplitpath @629
-  _wstat @630
-  _wstat64 @631
-  _wstati64 @632
-  _wstrdate @633
-  _wstrtime @634
-  _wsystem @635
-  _wtempnam @636
-  _wtmpnam @637
-;  _wtof @638
-  _wtoi @639
-  _wtoi64 @640
-  _wtol @641
-  _wunlink @642
-  _wutime @643
-;  _wutime64 @644
-  _y0 @645
-  _y1 @646
-  _yn @647
-  abort @648
-  abs @649
-  acos @650
-  asctime @651
-  asin @652
-  atan @653
-  atan2 @654
-  atexit @655
-  atof @656
-  atoi @657
-  atol @658
-  bsearch @659
-  calloc @660
-  ceil @661
-  clearerr @662
-  clock @663
-  cos @664
-  cosh @665
-  ctime @666
-  difftime @667
-  div @668
-  exit @669
-  exp @670
-  fabs @671
-  fclose @672
-  feof @673
-  ferror @674
-  fflush @675
-  fgetc @676
-  fgetpos @677
-  fgets @678
-  fgetwc @679
-  fgetws @680
-  floor @681
-  fmod @682
-  fopen @683
-  fprintf @684
-  fputc @685
-  fputs @686
-  fputwc @687
-  fputws @688
-  fread @689
-  free @690
-  freopen @691
-  frexp @692
-  fscanf @693
-  fseek @694
-  fsetpos @695
-  ftell @696
-  fwprintf @697
-  fwrite @698
-  fwscanf @699
-  getc @700
-  getchar @701
-  getenv @702
-  gets @703
-  getwc @704
-  getwchar @705
-  gmtime @706
-  is_wctype @707
-  isalnum @708
-  isalpha @709
-  iscntrl @710
-  isdigit @711
-  isgraph @712
-  isleadbyte @713
-  islower @714
-  isprint @715
-  ispunct @716
-  isspace @717
-  isupper @718
-  iswalnum @719
-  iswalpha @720
-  iswascii @721
-  iswcntrl @722
-  iswctype @723
-  iswdigit @724
-  iswgraph @725
-  iswlower @726
-  iswprint @727
-  iswpunct @728
-  iswspace @729
-  iswupper @730
-  iswxdigit @731
-  isxdigit @732
-  labs @733
-  ldexp @734
-  ldiv @735
-  localeconv @736
-  localtime @737
-  log @738
-  log10 @739
-  longjmp @740
-  malloc @741
-  mblen @742
-  mbstowcs @743
-  mbtowc @744
-  memchr @745
-  memcmp @746
-  memcpy @747
-  memmove @748
-  memset @749
-  mktime @750
-  modf @751
-  perror @752
-  pow @753
-  printf @754
-  putc @755
-  putchar @756
-  puts @757
-  putwc=fputwc @758
-  putwchar=_fputwchar @759
-  qsort @760
-  raise @761
-  rand @762
-  realloc @763
-  remove @764
-  rename @765
-  rewind @766
-  scanf @767
-  setbuf @768
-  setlocale @769
-  setvbuf @770
-  signal @771
-  sin @772
-  sinh @773
-  sprintf @774
-  sqrt @775
-  srand @776
-  sscanf @777
-  strcat @778
-  strchr @779
-  strcmp @780
-  strcoll @781
-  strcpy @782
-  strcspn @783
-  strerror @784
-  strftime @785
-  strlen @786
-  strncat @787
-  strncmp @788
-  strncpy @789
-  strpbrk @790
-  strrchr @791
-  strspn @792
-  strstr @793
-  strtod @794
-  strtok @795
-  strtol @796
-  strtoul @797
-  strxfrm @798
-  swprintf @799
-  swscanf @800
-  system @801
-  tan @802
-  tanh @803
-  time @804
-  tmpfile @805
-  tmpnam @806
-  tolower @807
-  toupper @808
-  towlower @809
-  towupper @810
-  ungetc @811
-  ungetwc @812
-  vfprintf @813
-  vfwprintf @814
-  vprintf @815
-  vsprintf @816
-  vswprintf @817
-  vwprintf @818
-  wcscat @819
-  wcschr @820
-  wcscmp @821
-  wcscoll @822
-  wcscpy @823
-  wcscspn @824
-  wcsftime @825
-  wcslen @826
-  wcsncat @827
-  wcsncmp @828
-  wcsncpy @829
-  wcspbrk @830
-  wcsrchr @831
-  wcsspn @832
-  wcsstr @833
-  wcstod @834
-  wcstok @835
-  wcstol @836
-  wcstombs @837
-  wcstoul @838
-  wcsxfrm @839
-  wctomb @840
-  wprintf @841
-  wscanf @842
-
-  _mbsnbcpy_s
-  wcscpy_s
-  wcsncpy_s
-  _ftol2=_ftol
-  _ftol2_sse=_ftol
-  strcat_s
-  strcpy_s
-
-  _swprintf=swprintf

Modified: branches/ros-amd64-bringup/reactos/lib/sdk/crt/crt.rbuild
URL: http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/lib/sdk/crt/crt.rbuild?rev=41949&r1=41948&r2=41949&view=diff
==============================================================================
--- branches/ros-amd64-bringup/reactos/lib/sdk/crt/crt.rbuild [iso-8859-1] (original)
+++ branches/ros-amd64-bringup/reactos/lib/sdk/crt/crt.rbuild [iso-8859-1] Tue Jul 14 03:49:14 2009
@@ -250,14 +250,12 @@
 		<if property="ARCH" value="i386">
 			<directory name="i386">
 				<file>memchr_asm.s</file>
-				<file>memcpy_asm.s</file>
 				<file>memmove_asm.s</file>
 				<file>memset_asm.s</file>
 			</directory>
 		</if>
 		<ifnot property="ARCH" value="i386">
 			<file>memchr.c</file>
-			<file>memcpy.c</file>
 			<file>memmove.c</file>
 			<file>memset.c</file>
 		</ifnot>

Modified: branches/ros-amd64-bringup/reactos/lib/sdk/crt/libcntpr.rbuild
URL: http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/lib/sdk/crt/libcntpr.rbuild?rev=41949&r1=41948&r2=41949&view=diff
==============================================================================
--- branches/ros-amd64-bringup/reactos/lib/sdk/crt/libcntpr.rbuild [iso-8859-1] (original)
+++ branches/ros-amd64-bringup/reactos/lib/sdk/crt/libcntpr.rbuild [iso-8859-1] Tue Jul 14 03:49:14 2009
@@ -90,14 +90,12 @@
 		<if property="ARCH" value="i386">
 			<directory name="i386">
 				<file>memchr_asm.s</file>
-				<file>memcpy_asm.s</file>
 				<file>memmove_asm.s</file>
 				<file>memset_asm.s</file>
 			</directory>
 		</if>
 		<ifnot property="ARCH" value="i386">
 			<file>memchr.c</file>
-			<file>memcpy.c</file>
 			<file>memmove.c</file>
 			<file>memset.c</file>
 		</ifnot>

Removed: branches/ros-amd64-bringup/reactos/lib/sdk/crt/mem/i386/memcpy_asm.s
URL: http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/lib/sdk/crt/mem/i386/memcpy_asm.s?rev=41948&view=auto
==============================================================================
--- branches/ros-amd64-bringup/reactos/lib/sdk/crt/mem/i386/memcpy_asm.s [iso-8859-1] (original)
+++ branches/ros-amd64-bringup/reactos/lib/sdk/crt/mem/i386/memcpy_asm.s (removed)
@@ -1,114 +1,0 @@
-/*
- * void *memcpy (void *to, const void *from, size_t count)
- *
- * NOTE: This code is a duplicate of memmove function from memmove_asm.s
- */
-
-.globl	_memcpy
-
-_memcpy:
-	push	%ebp
-	mov	%esp,%ebp
-	
-	push	%esi
-	push	%edi
-	
-	mov	8(%ebp),%edi
-	mov	12(%ebp),%esi
-	mov	16(%ebp),%ecx
-	
-	cmp	%esi,%edi
-	jbe	.CopyUp
-	mov	%ecx,%eax
-	add	%esi,%eax
-	cmp	%eax,%edi
-	jb	.CopyDown
-	
-.CopyUp:	
-	cld
-	
-	cmp	$16,%ecx
-	jb	.L1
-	mov	%ecx,%edx
-	test	$3,%edi
-	je	.L2
-/*
- * Make the destination dword aligned
- */
-        mov	%edi,%ecx
-        and	$3,%ecx
-        sub	$5,%ecx
-        not	%ecx
-        sub	%ecx,%edx
-        rep	movsb
-        mov	%edx,%ecx	
-.L2:
-	shr	$2,%ecx
-	rep	movsl
-	mov	%edx,%ecx
-	and	$3,%ecx
-.L1:	
-	test	%ecx,%ecx
-	je	.L3
-	rep	movsb
-.L3:
-	mov	8(%ebp),%eax
-	pop	%edi
-	pop	%esi
-	leave
-	ret
-
-.CopyDown:
-        std
-        
-	add	%ecx,%edi
-	add	%ecx,%esi
-	
-	cmp	$16,%ecx
-	jb	.L4
-        mov	%ecx,%edx
-	test	$3,%edi
-	je	.L5
-	
-/*
- * Make the destination dword aligned
- */
-	mov	%edi,%ecx
-	and	$3,%ecx
-	sub	%ecx,%edx
-	dec	%esi
-	dec	%edi
-	rep	movsb
-	mov	%edx,%ecx
-	
-	sub	$3,%esi
-	sub	$3,%edi
-.L6:	
-	shr	$2,%ecx
-	rep	movsl
-	mov	%edx,%ecx
-	and	$3,%ecx
-	je	.L7
-	add	$3,%esi
-	add	$3,%edi
-.L8:	
-	rep	movsb
-.L7:
-	cld
-	mov	8(%ebp),%eax
-	pop	%edi
-	pop	%esi
-	leave
-	ret
-.L5:
-	sub	$4,%edi
-	sub	$4,%esi
-	jmp	.L6
-		
-.L4:
-	test	%ecx,%ecx
-	je	.L7	
-	dec	%esi
-	dec	%edi
-	jmp	.L8
-

Removed: branches/ros-amd64-bringup/reactos/lib/sdk/crt/mem/memcpy.c
URL: http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/lib/sdk/crt/mem/memcpy.c?rev=41948&view=auto
==============================================================================
--- branches/ros-amd64-bringup/reactos/lib/sdk/crt/mem/memcpy.c [iso-8859-1] (original)
+++ branches/ros-amd64-bringup/reactos/lib/sdk/crt/mem/memcpy.c (removed)
@@ -1,36 +1,0 @@
-#include <string.h>
-
-/* NOTE: This code is a duplicate of memmove implementation! */
-void* memcpy(void* to, const void* from, size_t count)
-{
-    char *char_dest = (char *)dest;
-    char *char_src = (char *)src;
-
-    if ((char_dest <= char_src) || (char_dest >= (char_src+count)))
-    {
-        /*  non-overlapping buffers */
-        while(count > 0)
-	{
-            *char_dest = *char_src;
-            char_dest++;
-            char_src++;
-            count--;
-	}
-    }
-    else
-    {
-        /* overlaping buffers */
-        char_dest = (char *)dest + count - 1;
-        char_src = (char *)src + count - 1;
-
-        while(count > 0)
-	{
-           *char_dest = *char_src;
-           char_dest--;
-           char_src--;
-           count--;
-	}
-    }
-
-    return dest;
-}

Modified: branches/ros-amd64-bringup/reactos/ntoskrnl/ntoskrnl.pspec
URL: http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/ntoskrnl/ntoskrnl.pspec?rev=41949&r1=41948&r2=41949&view=diff
==============================================================================
--- branches/ros-amd64-bringup/reactos/ntoskrnl/ntoskrnl.pspec [iso-8859-1] (original)
+++ branches/ros-amd64-bringup/reactos/ntoskrnl/ntoskrnl.pspec [iso-8859-1] Tue Jul 14 03:49:14 2009
@@ -1599,7 +1599,7 @@
 @ cdecl mbstowcs()
 @ cdecl mbtowc()
 @ cdecl memchr()
-@ cdecl memcpy()
+@ cdecl memcpy() memmove
 @ cdecl memmove()
 @ cdecl memset()
 @ cdecl qsort()



More information about the Ros-diffs mailing list