mirror of
https://github.com/reactos/reactos.git
synced 2025-07-03 17:21:22 +00:00
Revert r45245 - r45247
Although the idea of using mingw-w64's routines is good, we can't because it's using x87. We need SSE2. svn path=/branches/ros-amd64-bringup/; revision=45255
This commit is contained in:
parent
3ec17c4a18
commit
9c9f4a9fd7
85 changed files with 2786 additions and 2128 deletions
|
@ -28,5 +28,8 @@
|
|||
<library>gdi32</library>
|
||||
<library>windowscodecs</library>
|
||||
<library>ntdll</library>
|
||||
<if property="ARCH" value="amd64">
|
||||
<library>crt</library>
|
||||
</if>
|
||||
</module>
|
||||
</group>
|
||||
|
|
|
@ -19,7 +19,7 @@
|
|||
* $Date$
|
||||
*
|
||||
*/
|
||||
#define _CRTBLD
|
||||
|
||||
#include <precomp.h>
|
||||
#include <internal/wine/msvcrt.h>
|
||||
#include <locale.h>
|
||||
|
|
850
reactos/dll/win32/msvcrt/msvcrt-amd64.def
Normal file
850
reactos/dll/win32/msvcrt/msvcrt-amd64.def
Normal file
|
@ -0,0 +1,850 @@
|
|||
;
|
||||
; ReactOS MSVCRT Library
|
||||
;
|
||||
LIBRARY msvcrt.dll
|
||||
|
||||
EXPORTS
|
||||
$I10_OUTPUT=MSVCRT_I10_OUTPUT @57
|
||||
??0__non_rtti_object@@QAE@ABV0@@Z=MSVCRT___non_rtti_object_copy_ctor @1
|
||||
??0__non_rtti_object@@QAE@PBD@Z=MSVCRT___non_rtti_object_ctor @2
|
||||
; ??0bad_cast@@AAE@PBQBD@Z @3
|
||||
??0bad_cast@@QAE@ABQBD@Z=MSVCRT_bad_cast_ctor @4
|
||||
??0bad_cast@@QAE@ABV0@@Z=MSVCRT_bad_cast_copy_ctor @5
|
||||
; ??0bad_cast@@QAE@PBD@Z @6
|
||||
??0bad_typeid@@QAE@ABV0@@Z=MSVCRT_bad_typeid_copy_ctor @7
|
||||
??0bad_typeid@@QAE@PBD@Z=MSVCRT_bad_typeid_ctor @8
|
||||
??0exception@@QAE@ABQBD@Z=MSVCRT_exception_ctor @9
|
||||
; ??0exception@@QAE@ABQBDH@Z @10
|
||||
??0exception@@QAE@ABV0@@Z=MSVCRT_exception_copy_ctor @11
|
||||
??0exception@@QAE@XZ=MSVCRT_exception_default_ctor @12
|
||||
??1__non_rtti_object@@UAE@XZ=MSVCRT___non_rtti_object_dtor @13
|
||||
??1bad_cast@@UAE@XZ=MSVCRT_bad_cast_dtor @14
|
||||
??1bad_typeid@@UAE@XZ=MSVCRT_bad_typeid_dtor @15
|
||||
??1exception@@UAE@XZ=MSVCRT_exception_dtor @16
|
||||
??1type_info@@UAE@XZ=MSVCRT_type_info_dtor @17
|
||||
??2@YAPAXI@Z=MSVCRT_operator_new @18
|
||||
??3@YAXPAX@Z=MSVCRT_operator_delete @19
|
||||
??4__non_rtti_object@@QAEAAV0@ABV0@@Z=MSVCRT___non_rtti_object_opequals @20
|
||||
??4bad_cast@@QAEAAV0@ABV0@@Z=MSVCRT_bad_cast_opequals @21
|
||||
??4bad_typeid@@QAEAAV0@ABV0@@Z=MSVCRT_bad_typeid_opequals @22
|
||||
??4exception@@QAEAAV0@ABV0@@Z=MSVCRT_exception_opequals @23
|
||||
??8type_info@@QBEHABV0@@Z=MSVCRT_type_info_opequals_equals @24
|
||||
??9type_info@@QBEHABV0@@Z=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@Z=MSVCRT___non_rtti_object_vector_dtor @30
|
||||
??_Ebad_cast@@UAEPAXI@Z=MSVCRT_bad_cast_vector_dtor @31
|
||||
??_Ebad_typeid@@UAEPAXI@Z=MSVCRT_bad_typeid_vector_dtor @32
|
||||
??_Eexception@@UAEPAXI@Z=MSVCRT_exception_vector_dtor @33
|
||||
; ??_Fbad_cast@@QAEXXZ @34
|
||||
; ??_Fbad_typeid@@QAEXXZ @35
|
||||
??_G__non_rtti_object@@UAEPAXI@Z=MSVCRT___non_rtti_object_scalar_dtor @36
|
||||
??_Gbad_cast@@UAEPAXI@Z=MSVCRT_bad_cast_scalar_dtor @37
|
||||
??_Gbad_typeid@@UAEPAXI@Z=MSVCRT_bad_typeid_scalar_dtor @38
|
||||
??_Gexception@@UAEPAXI@Z=MSVCRT_exception_scalar_dtor @39
|
||||
??_U@YAPAXI@Z=MSVCRT_operator_new @40
|
||||
??_V@YAXPAX@Z=MSVCRT_operator_delete @41
|
||||
?_query_new_handler@@YAP6AHI@ZXZ=MSVCRT__query_new_handler @43
|
||||
?_query_new_mode@@YAHXZ=MSVCRT__query_new_mode @44
|
||||
?_set_new_handler@@YAP6AHI@ZP6AHI@Z@Z=MSVCRT__set_new_handler @45
|
||||
?_set_new_mode@@YAHH@Z=MSVCRT__set_new_mode @46
|
||||
?_set_se_translator@@YAP6AXIPAU_EXCEPTION_POINTERS@@@ZP6AXI0@Z@Z=MSVCRT__set_se_translator @47
|
||||
?before@type_info@@QBEHABV1@@Z=MSVCRT_type_info_before @48
|
||||
?name@type_info@@QBEPBDXZ=MSVCRT_type_info_name @49
|
||||
?raw_name@type_info@@QBEPBDXZ=MSVCRT_type_info_raw_name @50
|
||||
?set_new_handler@@YAP6AXXZP6AXXZ@Z=MSVCRT__set_new_handler @51
|
||||
?set_terminate@@YAP6AXXZP6AXXZ@Z=MSVCRT_set_terminate @52
|
||||
?set_unexpected@@YAP6AXXZP6AXXZ@Z=MSVCRT_set_unexpected @53
|
||||
?terminate@@YAXXZ=MSVCRT_terminate @54
|
||||
?unexpected@@YAXXZ=MSVCRT_unexpected @55
|
||||
?what@exception@@UBEPBDXZ=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=gmtime @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
|
||||
; FIXME: these aren't actually implemented in CRT
|
||||
; _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 @482 ???
|
||||
; _set_SSE2_enable @483
|
||||
_set_error_mode @484
|
||||
_set_sbh_threshold @485
|
||||
_seterrormode @486
|
||||
_setjmp @487
|
||||
_setjmpex @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
|
||||
; FIXME: these aren't actually implemented in CRT
|
||||
; _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=memmove @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
|
860
reactos/dll/win32/msvcrt/msvcrt-i386.def
Normal file
860
reactos/dll/win32/msvcrt/msvcrt-i386.def
Normal file
|
@ -0,0 +1,860 @@
|
|||
;
|
||||
; ReactOS MSVCRT Library
|
||||
;
|
||||
LIBRARY msvcrt.dll
|
||||
|
||||
EXPORTS
|
||||
$I10_OUTPUT=MSVCRT_I10_OUTPUT @57
|
||||
??0__non_rtti_object@@QAE@ABV0@@Z=__thiscall_MSVCRT___non_rtti_object_copy_ctor @1
|
||||
??0__non_rtti_object@@QAE@PBD@Z=__thiscall_MSVCRT___non_rtti_object_ctor @2
|
||||
; ??0bad_cast@@AAE@PBQBD@Z @3
|
||||
??0bad_cast@@QAE@ABQBD@Z=__thiscall_MSVCRT_bad_cast_ctor @4
|
||||
??0bad_cast@@QAE@ABV0@@Z=__thiscall_MSVCRT_bad_cast_copy_ctor @5
|
||||
; ??0bad_cast@@QAE@PBD@Z @6
|
||||
??0bad_typeid@@QAE@ABV0@@Z=__thiscall_MSVCRT_bad_typeid_copy_ctor @7
|
||||
??0bad_typeid@@QAE@PBD@Z=__thiscall_MSVCRT_bad_typeid_ctor @8
|
||||
??0exception@@QAE@ABQBD@Z=__thiscall_MSVCRT_exception_ctor @9
|
||||
; ??0exception@@QAE@ABQBDH@Z @10
|
||||
??0exception@@QAE@ABV0@@Z=__thiscall_MSVCRT_exception_copy_ctor @11
|
||||
??0exception@@QAE@XZ=__thiscall_MSVCRT_exception_default_ctor @12
|
||||
??1__non_rtti_object@@UAE@XZ=__thiscall_MSVCRT___non_rtti_object_dtor @13
|
||||
??1bad_cast@@UAE@XZ=__thiscall_MSVCRT_bad_cast_dtor @14
|
||||
??1bad_typeid@@UAE@XZ=__thiscall_MSVCRT_bad_typeid_dtor @15
|
||||
??1exception@@UAE@XZ=__thiscall_MSVCRT_exception_dtor @16
|
||||
??1type_info@@UAE@XZ=__thiscall_MSVCRT_type_info_dtor @17
|
||||
??2@YAPAXI@Z=MSVCRT_operator_new @18
|
||||
??3@YAXPAX@Z=MSVCRT_operator_delete @19
|
||||
??4__non_rtti_object@@QAEAAV0@ABV0@@Z=__thiscall_MSVCRT___non_rtti_object_opequals @20
|
||||
??4bad_cast@@QAEAAV0@ABV0@@Z=__thiscall_MSVCRT_bad_cast_opequals @21
|
||||
??4bad_typeid@@QAEAAV0@ABV0@@Z=__thiscall_MSVCRT_bad_typeid_opequals @22
|
||||
??4exception@@QAEAAV0@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@Z=__thiscall_MSVCRT___non_rtti_object_vector_dtor @30
|
||||
??_Ebad_cast@@UAEPAXI@Z=__thiscall_MSVCRT_bad_cast_vector_dtor @31
|
||||
??_Ebad_typeid@@UAEPAXI@Z=__thiscall_MSVCRT_bad_typeid_vector_dtor @32
|
||||
??_Eexception@@UAEPAXI@Z=__thiscall_MSVCRT_exception_vector_dtor @33
|
||||
; ??_Fbad_cast@@QAEXXZ @34
|
||||
; ??_Fbad_typeid@@QAEXXZ @35
|
||||
??_G__non_rtti_object@@UAEPAXI@Z=__thiscall_MSVCRT___non_rtti_object_scalar_dtor @36
|
||||
??_Gbad_cast@@UAEPAXI@Z=__thiscall_MSVCRT_bad_cast_scalar_dtor @37
|
||||
??_Gbad_typeid@@UAEPAXI@Z=__thiscall_MSVCRT_bad_typeid_scalar_dtor @38
|
||||
??_Gexception@@UAEPAXI@Z=__thiscall_MSVCRT_exception_scalar_dtor @39
|
||||
??_U@YAPAXI@Z=MSVCRT_operator_new @40
|
||||
??_V@YAXPAX@Z=MSVCRT_operator_delete @41
|
||||
?_query_new_handler@@YAP6AHI@ZXZ=MSVCRT__query_new_handler @43
|
||||
?_query_new_mode@@YAHXZ=MSVCRT__query_new_mode @44
|
||||
?_set_new_handler@@YAP6AHI@ZP6AHI@Z@Z=MSVCRT__set_new_handler @45
|
||||
?_set_new_mode@@YAHH@Z=MSVCRT__set_new_mode @46
|
||||
?_set_se_translator@@YAP6AXIPAU_EXCEPTION_POINTERS@@@ZP6AXI0@Z@Z=MSVCRT__set_se_translator @47
|
||||
?before@type_info@@QBEHABV1@@Z=__thiscall_MSVCRT_type_info_before @48
|
||||
?name@type_info@@QBEPBDXZ=__thiscall_MSVCRT_type_info_name @49
|
||||
?raw_name@type_info@@QBEPBDXZ=__thiscall_MSVCRT_type_info_raw_name @50
|
||||
?set_new_handler@@YAP6AXXZP6AXXZ@Z=MSVCRT__set_new_handler @51
|
||||
?set_terminate@@YAP6AXXZP6AXXZ@Z=MSVCRT_set_terminate @52
|
||||
?set_unexpected@@YAP6AXXZP6AXXZ@Z=MSVCRT_set_unexpected @53
|
||||
?terminate@@YAXXZ=MSVCRT_terminate @54
|
||||
?unexpected@@YAXXZ=MSVCRT_unexpected @55
|
||||
?what@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
|
||||
; FIXME: these aren't actually implemented in CRT
|
||||
; _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@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
|
||||
; FIXME: these aren't actually implemented in CRT
|
||||
; _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
|
|
@ -1,5 +1,5 @@
|
|||
<module name="msvcrt" type="win32dll" baseaddress="${BASEADDRESS_MSVCRT}" installbase="system32" installname="msvcrt.dll" iscrt="yes">
|
||||
<importlibrary definition="msvcrt.spec" />
|
||||
<importlibrary definition="msvcrt-$(ARCH).def" />
|
||||
<include base="msvcrt">.</include>
|
||||
<include base="crt">include</include>
|
||||
<define name="USE_MSVCRT_PREFIX" />
|
||||
|
|
|
@ -1,839 +0,0 @@
|
|||
# msvcrt.dll - MS VC++ Run Time Library
|
||||
|
||||
@ cdecl $I10_OUTPUT() MSVCRT_I10_OUTPUT
|
||||
@ cdecl -i386 -norelay ??0__non_rtti_object@@QAE@ABV0@@Z(ptr) __thiscall_MSVCRT___non_rtti_object_copy_ctor
|
||||
@ cdecl -i386 -norelay ??0__non_rtti_object@@QAE@PBD@Z(ptr) __thiscall_MSVCRT___non_rtti_object_ctor
|
||||
@ cdecl -i386 -norelay ??0bad_cast@@QAE@ABQBD@Z(ptr) __thiscall_MSVCRT_bad_cast_ctor
|
||||
@ cdecl -i386 -norelay ??0bad_cast@@QAE@ABV0@@Z(ptr) __thiscall_MSVCRT_bad_cast_copy_ctor
|
||||
@ cdecl -i386 -norelay ??0bad_typeid@@QAE@ABV0@@Z(ptr) __thiscall_MSVCRT_bad_typeid_copy_ctor
|
||||
@ cdecl -i386 -norelay ??0bad_typeid@@QAE@PBD@Z(ptr) __thiscall_MSVCRT_bad_typeid_ctor
|
||||
@ cdecl -i386 -norelay ??0exception@@QAE@ABQBD@Z(ptr) __thiscall_MSVCRT_exception_ctor
|
||||
@ cdecl -i386 -norelay ??0exception@@QAE@ABV0@@Z(ptr) __thiscall_MSVCRT_exception_copy_ctor
|
||||
@ cdecl -i386 -norelay ??0exception@@QAE@XZ() __thiscall_MSVCRT_exception_default_ctor
|
||||
@ cdecl -i386 -norelay ??1__non_rtti_object@@UAE@XZ() __thiscall_MSVCRT___non_rtti_object_dtor
|
||||
@ cdecl -i386 -norelay ??1bad_cast@@UAE@XZ() __thiscall_MSVCRT_bad_cast_dtor
|
||||
@ cdecl -i386 -norelay ??1bad_typeid@@UAE@XZ() __thiscall_MSVCRT_bad_typeid_dtor
|
||||
@ cdecl -i386 -norelay ??1exception@@UAE@XZ() __thiscall_MSVCRT_exception_dtor
|
||||
@ cdecl -i386 -norelay ??1type_info@@UAE@XZ() __thiscall_MSVCRT_type_info_dtor
|
||||
@ cdecl ??2@YAPAXI@Z(long) MSVCRT_operator_new
|
||||
@ cdecl ??_U@YAPAXI@Z(long) MSVCRT_operator_new
|
||||
@ cdecl ??3@YAXPAX@Z(ptr) MSVCRT_operator_delete
|
||||
@ cdecl ??_V@YAXPAX@Z(ptr) MSVCRT_operator_delete
|
||||
@ cdecl -i386 -norelay ??4__non_rtti_object@@QAEAAV0@ABV0@@Z(ptr) __thiscall_MSVCRT___non_rtti_object_opequals
|
||||
@ cdecl -i386 -norelay ??4bad_cast@@QAEAAV0@ABV0@@Z(ptr) __thiscall_MSVCRT_bad_cast_opequals
|
||||
@ cdecl -i386 -norelay ??4bad_typeid@@QAEAAV0@ABV0@@Z(ptr) __thiscall_MSVCRT_bad_typeid_opequals
|
||||
@ cdecl -i386 -norelay ??4exception@@QAEAAV0@ABV0@@Z(ptr) __thiscall_MSVCRT_exception_opequals
|
||||
@ cdecl -i386 -norelay ??8type_info@@QBEHABV0@@Z(ptr) __thiscall_MSVCRT_type_info_opequals_equals
|
||||
@ cdecl -i386 -norelay ??9type_info@@QBEHABV0@@Z(ptr) __thiscall_MSVCRT_type_info_opnot_equals
|
||||
@ extern -i386 ??_7__non_rtti_object@@6B@ MSVCRT___non_rtti_object_vtable
|
||||
@ extern -i386 ??_7bad_cast@@6B@ MSVCRT_bad_cast_vtable
|
||||
@ extern -i386 ??_7bad_typeid@@6B@ MSVCRT_bad_typeid_vtable
|
||||
@ extern -i386 ??_7exception@@6B@ MSVCRT_exception_vtable
|
||||
@ cdecl -i386 -norelay ??_E__non_rtti_object@@UAEPAXI@Z(long) __thiscall_MSVCRT___non_rtti_object_vector_dtor
|
||||
@ cdecl -i386 -norelay ??_Ebad_cast@@UAEPAXI@Z(long) __thiscall_MSVCRT_bad_cast_vector_dtor
|
||||
@ cdecl -i386 -norelay ??_Ebad_typeid@@UAEPAXI@Z(long) __thiscall_MSVCRT_bad_typeid_vector_dtor
|
||||
@ cdecl -i386 -norelay ??_Eexception@@UAEPAXI@Z(long) __thiscall_MSVCRT_exception_vector_dtor
|
||||
@ cdecl -i386 -norelay ??_G__non_rtti_object@@UAEPAXI@Z(long) __thiscall_MSVCRT___non_rtti_object_scalar_dtor
|
||||
@ cdecl -i386 -norelay ??_Gbad_cast@@UAEPAXI@Z(long) __thiscall_MSVCRT_bad_cast_scalar_dtor
|
||||
@ cdecl -i386 -norelay ??_Gbad_typeid@@UAEPAXI@Z(long) __thiscall_MSVCRT_bad_typeid_scalar_dtor
|
||||
@ cdecl -i386 -norelay ??_Gexception@@UAEPAXI@Z(long) __thiscall_MSVCRT_exception_scalar_dtor
|
||||
@ cdecl ?_query_new_handler@@YAP6AHI@ZXZ() MSVCRT__query_new_handler
|
||||
@ cdecl ?_query_new_mode@@YAHXZ() MSVCRT__query_new_mode
|
||||
@ cdecl ?_set_new_handler@@YAP6AHI@ZP6AHI@Z@Z(ptr) MSVCRT__set_new_handler
|
||||
@ cdecl ?_set_new_mode@@YAHH@Z(long) MSVCRT__set_new_mode
|
||||
@ cdecl ?_set_se_translator@@YAP6AXIPAU_EXCEPTION_POINTERS@@@ZP6AXI0@Z@Z(ptr) MSVCRT__set_se_translator
|
||||
@ cdecl -i386 -norelay ?before@type_info@@QBEHABV1@@Z(ptr) __thiscall_MSVCRT_type_info_before
|
||||
@ cdecl -i386 -norelay ?name@type_info@@QBEPBDXZ() __thiscall_MSVCRT_type_info_name
|
||||
@ cdecl -i386 -norelay ?raw_name@type_info@@QBEPBDXZ() __thiscall_MSVCRT_type_info_raw_name
|
||||
@ cdecl ?set_new_handler@@YAP6AXXZP6AXXZ@Z(ptr) MSVCRT_set_new_handler
|
||||
@ cdecl ?set_terminate@@YAP6AXXZP6AXXZ@Z(ptr) MSVCRT_set_terminate
|
||||
@ cdecl ?set_unexpected@@YAP6AXXZP6AXXZ@Z(ptr) MSVCRT_set_unexpected
|
||||
@ cdecl ?terminate@@YAXXZ() MSVCRT_terminate
|
||||
@ cdecl ?unexpected@@YAXXZ() MSVCRT_unexpected
|
||||
@ cdecl -i386 -norelay ?what@exception@@UBEPBDXZ() __thiscall_MSVCRT_what_exception
|
||||
@ cdecl -arch=i386 _CIacos()
|
||||
@ cdecl -arch=i386 _CIasin()
|
||||
@ cdecl -arch=i386 _CIatan()
|
||||
@ cdecl -arch=i386 _CIatan2()
|
||||
@ cdecl -arch=i386 _CIcos()
|
||||
@ cdecl -arch=i386 _CIcosh()
|
||||
@ cdecl -arch=i386 _CIexp()
|
||||
@ cdecl -arch=i386 _CIfmod()
|
||||
@ cdecl -arch=i386 _CIlog()
|
||||
@ cdecl -arch=i386 _CIlog10()
|
||||
@ cdecl -arch=i386 _CIpow()
|
||||
@ cdecl -arch=i386 _CIsin()
|
||||
@ cdecl -arch=i386 _CIsinh()
|
||||
@ cdecl -arch=i386 _CIsqrt()
|
||||
@ cdecl -arch=i386 _CItan()
|
||||
@ cdecl -arch=i386 _CItanh()
|
||||
@ cdecl _CxxThrowException(long long)
|
||||
@ cdecl -i386 -norelay _EH_prolog()
|
||||
@ cdecl _Getdays()
|
||||
@ cdecl _Getmonths()
|
||||
@ cdecl _Gettnames()
|
||||
@ extern _HUGE
|
||||
@ cdecl _Strftime(str long str ptr ptr)
|
||||
@ cdecl _XcptFilter(long ptr)
|
||||
@ stdcall -arch=x86_64 __C_specific_handler(ptr long ptr ptr) ntdll.__C_specific_handler
|
||||
@ cdecl __CppXcptFilter(long ptr)
|
||||
@ cdecl __CxxDetectRethrow(ptr)
|
||||
@ cdecl -i386 -norelay __CxxFrameHandler(ptr ptr ptr ptr)
|
||||
# 88 56 0002AE4C __CxxFrameHandler2
|
||||
# 89 57 0002ADC8 __CxxFrameHandler3
|
||||
# 90 58 00029794 __DestructExceptionObject
|
||||
@ stdcall -i386 __CxxLongjmpUnwind(ptr)
|
||||
@ cdecl __CxxQueryExceptionSize()
|
||||
@ cdecl __RTCastToVoid(ptr) MSVCRT___RTCastToVoid
|
||||
@ cdecl __RTDynamicCast(ptr long ptr ptr long) MSVCRT___RTDynamicCast
|
||||
@ cdecl __RTtypeid(ptr) MSVCRT___RTtypeid
|
||||
@ cdecl __STRINGTOLD(ptr ptr str long)
|
||||
#@ cdecl ___lc_codepage_func()
|
||||
#@ cdecl ___lc_collate_cp_func()
|
||||
#@ cdecl ___lc_handle_func()
|
||||
#@ cdecl ___mb_cur_max_func()
|
||||
@ cdecl ___setlc_active_func()
|
||||
@ cdecl ___unguarded_readlc_active_add_func()
|
||||
@ extern __argc
|
||||
@ extern __argv
|
||||
@ extern __badioinfo
|
||||
@ cdecl __crtCompareStringA(long long str long str long) kernel32.CompareStringA
|
||||
@ cdecl __crtCompareStringW(long long wstr long wstr long) kernel32.CompareStringW
|
||||
@ cdecl __crtGetLocaleInfoW(long long ptr long)kernel32.GetLocaleInfo
|
||||
@ cdecl __crtGetStringTypeW(long wstr long ptr) kernel32.GetStringTypeW
|
||||
@ cdecl __crtLCMapStringA(long long str long ptr long long long)
|
||||
# 109 6B 000414E0 __crtLCMapStringW
|
||||
# 110 6C 00068CC4 __daylight
|
||||
@ cdecl __dllonexit(ptr ptr ptr)
|
||||
@ cdecl __doserrno()
|
||||
@ cdecl __fpecode()
|
||||
@ stub __get_app_type
|
||||
@ cdecl __getmainargs(ptr ptr ptr long ptr)
|
||||
@ extern __initenv
|
||||
@ cdecl __iob_func()
|
||||
@ cdecl __isascii(long)
|
||||
@ cdecl __iscsym(long)
|
||||
@ cdecl __iscsymf(long)
|
||||
@ extern __lc_codepage
|
||||
@ stub __lc_collate
|
||||
@ extern __lc_collate_cp
|
||||
@ extern __lc_handle
|
||||
@ cdecl __lconv_init()
|
||||
@ extern __mb_cur_max
|
||||
@ cdecl -arch=i386 __p___argc()
|
||||
@ cdecl -arch=i386 __p___argv()
|
||||
@ cdecl -arch=i386 __p___initenv()
|
||||
#@ cdecl -arch=i386 __p___mb_cur_max() ___mb_cur_max_func
|
||||
@ cdecl -arch=i386 __p___wargv()
|
||||
@ cdecl -arch=i386 __p___winitenv()
|
||||
@ cdecl -arch=i386 __p__acmdln()
|
||||
@ cdecl -arch=i386 __p__amblksiz()
|
||||
@ cdecl -arch=i386 __p__commode()
|
||||
@ cdecl -arch=i386 __p__daylight()
|
||||
@ cdecl -arch=i386 __p__dstbias()
|
||||
@ cdecl -arch=i386 __p__environ()
|
||||
@ stub -arch=i386 __p__fileinfo #()
|
||||
@ cdecl -arch=i386 __p__fmode()
|
||||
@ cdecl -arch=i386 __p__iob() __iob_func
|
||||
@ stub -arch=i386 __p__mbcasemap #()
|
||||
@ cdecl -arch=i386 __p__mbctype()
|
||||
@ cdecl -arch=i386 __p__osver()
|
||||
@ cdecl -arch=i386 __p__pctype() __pctype_func
|
||||
@ cdecl -arch=i386 __p__pgmptr()
|
||||
@ stub -arch=i386 __p__pwctype #()
|
||||
@ cdecl -arch=i386 __p__timezone() __p__timezone
|
||||
@ cdecl -arch=i386 __p__tzname()
|
||||
@ cdecl -arch=i386 __p__wcmdln()
|
||||
@ cdecl -arch=i386 __p__wenviron()
|
||||
@ cdecl -arch=i386 __p__winmajor()
|
||||
@ cdecl -arch=i386 __p__winminor()
|
||||
@ cdecl -arch=i386 __p__winver()
|
||||
@ cdecl -arch=i386 __p__wpgmptr()
|
||||
@ cdecl __pctype_func() __pctype_func
|
||||
@ extern __pioinfo
|
||||
@ stub __pxcptinfoptrs #()
|
||||
@ cdecl __set_app_type(long)
|
||||
@ extern __setlc_active
|
||||
@ cdecl __setusermatherr(ptr)
|
||||
@ cdecl __threadhandle() kernel32.GetCurrentThread
|
||||
@ cdecl __threadid() kernel32.GetCurrentThreadId
|
||||
@ cdecl __toascii(long)
|
||||
@ cdecl __uncaught_exception()
|
||||
@ cdecl __unDName(ptr str long ptr ptr long)
|
||||
@ cdecl __unDNameEx(ptr str long ptr ptr ptr long)
|
||||
@ extern __unguarded_readlc_active
|
||||
@ extern __wargv
|
||||
@ cdecl __wgetmainargs(ptr ptr ptr long ptr)
|
||||
@ extern __winitenv
|
||||
@ cdecl _abnormal_termination()
|
||||
@ cdecl _access(str long)
|
||||
@ extern _acmdln
|
||||
@ stdcall -arch=i386 _adj_fdiv_m16i(long)
|
||||
@ stdcall -arch=i386 _adj_fdiv_m32(long)
|
||||
@ stdcall -arch=i386 _adj_fdiv_m32i(long)
|
||||
@ stdcall -arch=i386 _adj_fdiv_m64(double)
|
||||
@ cdecl -arch=i386 _adj_fdiv_r()
|
||||
@ stdcall -arch=i386 _adj_fdivr_m16i(long)
|
||||
@ stdcall -arch=i386 _adj_fdivr_m32(long)
|
||||
@ stdcall -arch=i386 _adj_fdivr_m32i(long)
|
||||
@ stdcall -arch=i386 _adj_fdivr_m64(double)
|
||||
@ cdecl -arch=i386 _adj_fpatan()
|
||||
@ cdecl -arch=i386 _adj_fprem()
|
||||
@ cdecl -arch=i386 _adj_fprem1()
|
||||
@ cdecl -arch=i386 _adj_fptan()
|
||||
@ extern -arch=i386 _adjust_fdiv
|
||||
# extern _aexit_rtn
|
||||
@ cdecl _aligned_free(ptr)
|
||||
@ cdecl _aligned_malloc(long long)
|
||||
@ cdecl _aligned_offset_malloc(long long long)
|
||||
@ cdecl _aligned_offset_realloc(ptr long long long)
|
||||
@ cdecl _aligned_realloc(ptr long long)
|
||||
@ cdecl _amsg_exit(long)
|
||||
@ cdecl _assert(str str long)
|
||||
@ stub _atodbl #(ptr str)
|
||||
@ cdecl -ret64 _atoi64(str) ntdll._atoi64
|
||||
@ cdecl _atoldbl(ptr str)
|
||||
@ cdecl _beep(long long)
|
||||
@ cdecl _beginthread (ptr long ptr)
|
||||
@ cdecl _beginthreadex (ptr long ptr ptr long ptr)
|
||||
@ cdecl _c_exit()
|
||||
@ cdecl _cabs(long)
|
||||
@ cdecl _callnewh(long)
|
||||
@ cdecl _cexit()
|
||||
@ cdecl _cgets(str)
|
||||
@ cdecl _chdir(str)
|
||||
@ cdecl _chdrive(long)
|
||||
@ cdecl _chgsign( double )
|
||||
@ cdecl -i386 -norelay _chkesp()
|
||||
@ cdecl _chmod(str long)
|
||||
@ cdecl _chsize (long long)
|
||||
@ cdecl _clearfp()
|
||||
@ cdecl _close(long)
|
||||
@ cdecl _commit(long)
|
||||
@ extern _commode
|
||||
@ cdecl _control87(long long)
|
||||
@ cdecl _controlfp(long long)
|
||||
@ cdecl _copysign( double double )
|
||||
@ varargs _cprintf(str)
|
||||
@ cdecl _cputs(str)
|
||||
@ cdecl _creat(str long)
|
||||
@ varargs _cscanf(str)
|
||||
@ cdecl _ctime32(ptr)
|
||||
@ cdecl _ctime64(ptr)
|
||||
@ extern _ctype
|
||||
@ cdecl _cwait(ptr long long)
|
||||
@ extern _daylight
|
||||
@ cdecl _difftime32(long long)
|
||||
@ cdecl _difftime64(long long)
|
||||
@ extern _dstbias
|
||||
@ cdecl _dup (long)
|
||||
@ cdecl _dup2 (long long)
|
||||
@ cdecl _ecvt(double long ptr ptr)
|
||||
@ cdecl _endthread ()
|
||||
@ cdecl _endthreadex(long)
|
||||
@ extern _environ
|
||||
@ cdecl _eof(long)
|
||||
@ cdecl _errno()
|
||||
@ cdecl _except_handler2(ptr ptr ptr ptr)
|
||||
@ cdecl _except_handler3(ptr ptr ptr ptr)
|
||||
@ varargs _execl(str str)
|
||||
@ varargs _execle(str str)
|
||||
@ varargs _execlp(str str)
|
||||
@ varargs _execlpe(str str)
|
||||
@ cdecl _execv(str ptr)
|
||||
@ cdecl _execve(str ptr ptr)
|
||||
@ cdecl _execvp(str ptr)
|
||||
@ cdecl _execvpe(str ptr ptr)
|
||||
@ cdecl _exit(long)
|
||||
@ cdecl _expand(ptr long)
|
||||
@ cdecl _fcloseall()
|
||||
@ cdecl _fcvt(double long ptr ptr)
|
||||
@ cdecl _fdopen(long str)
|
||||
@ cdecl _fgetchar()
|
||||
@ cdecl _fgetwchar()
|
||||
@ cdecl _filbuf(ptr)
|
||||
# extern _fileinfo
|
||||
@ cdecl _filelength(long)
|
||||
@ cdecl -ret64 _filelengthi64(long)
|
||||
@ cdecl _fileno(ptr)
|
||||
@ cdecl _findclose(long)
|
||||
@ cdecl _findfirst(str ptr)
|
||||
@ cdecl _findfirsti64(str ptr)
|
||||
@ cdecl _findnext(long ptr)
|
||||
@ cdecl _findnexti64(long ptr)
|
||||
@ cdecl _finite( double )
|
||||
@ cdecl _flsbuf(long ptr)
|
||||
@ cdecl _flushall()
|
||||
@ extern _fmode
|
||||
@ cdecl _fpclass(double)
|
||||
@ stub _fpieee_flt #(long ptr ptr)
|
||||
@ cdecl _fpreset()
|
||||
@ cdecl _fputchar(long)
|
||||
@ cdecl _fputwchar(long)
|
||||
@ cdecl _fsopen(str str long)
|
||||
@ cdecl _fstat(long ptr)
|
||||
@ cdecl _fstat64(long ptr)
|
||||
@ cdecl _fstati64(long ptr)
|
||||
@ cdecl _ftime(ptr)
|
||||
@ cdecl _ftime32(ptr)
|
||||
@ cdecl _ftime64(ptr)
|
||||
@ cdecl -ret64 _ftol() ntdll._ftol
|
||||
@ cdecl -ret64 _ftol2_sse() ntdll._ftol #FIXME: SSE variant should be implemented
|
||||
@ cdecl _fullpath(ptr str long)
|
||||
@ cdecl _futime(long ptr)
|
||||
@ cdecl _futime32(long ptr)
|
||||
@ cdecl _futime64(long ptr)
|
||||
@ cdecl _gcvt(double long str)
|
||||
@ cdecl _get_osfhandle(long)
|
||||
@ cdecl _get_sbh_threshold()
|
||||
@ stub _get_terminate
|
||||
@ stub _get_unexpected
|
||||
@ cdecl _getch()
|
||||
@ cdecl _getche()
|
||||
@ cdecl _getcwd(str long)
|
||||
@ cdecl _getdcwd(long str long)
|
||||
@ cdecl _getdiskfree(long ptr)
|
||||
@ cdecl _getdllprocaddr(long str long)
|
||||
@ cdecl _getdrive()
|
||||
@ cdecl _getdrives() kernel32.GetLogicalDrives
|
||||
@ cdecl _getmaxstdio()
|
||||
@ cdecl _getmbcp()
|
||||
@ cdecl _getpid() kernel32.GetCurrentProcessId
|
||||
@ stub _getsystime #(ptr)
|
||||
@ cdecl _getw(ptr)
|
||||
@ cdecl _getws(ptr)
|
||||
@ cdecl _global_unwind2(ptr)
|
||||
@ cdecl _gmtime32(ptr)
|
||||
@ cdecl _gmtime64(ptr)
|
||||
@ cdecl _heapadd (ptr long)
|
||||
@ cdecl _heapchk()
|
||||
@ cdecl _heapmin()
|
||||
@ cdecl _heapset(long)
|
||||
@ stub _heapused #(ptr ptr)
|
||||
@ cdecl _heapwalk(ptr)
|
||||
@ cdecl _hypot(double double)
|
||||
@ cdecl _i64toa(long long ptr long) ntdll._i64toa
|
||||
@ cdecl _i64tow(long long ptr long) ntdll._i64tow
|
||||
@ cdecl _initterm(ptr ptr)
|
||||
@ stub _inp #(long) -i386
|
||||
@ stub _inpd #(long) -i386
|
||||
@ stub _inpw #(long) -i386
|
||||
@ extern _iob
|
||||
@ cdecl _isatty(long)
|
||||
@ cdecl _isctype(long long)
|
||||
@ stub _ismbbalnum #(long)
|
||||
@ stub _ismbbalpha #(long)
|
||||
@ stub _ismbbgraph #(long)
|
||||
@ stub _ismbbkalnum #(long)
|
||||
@ cdecl _ismbbkana(long)
|
||||
@ stub _ismbbkprint #(long)
|
||||
@ stub _ismbbkpunct #(long)
|
||||
@ cdecl _ismbblead(long)
|
||||
@ stub _ismbbprint #(long)
|
||||
@ stub _ismbbpunct #(long)
|
||||
@ cdecl _ismbbtrail(long)
|
||||
@ cdecl _ismbcalnum(long)
|
||||
@ cdecl _ismbcalpha(long)
|
||||
@ cdecl _ismbcdigit(long)
|
||||
@ cdecl _ismbcgraph(long)
|
||||
@ cdecl _ismbchira(long)
|
||||
@ cdecl _ismbckata(long)
|
||||
@ stub _ismbcl0 #(long)
|
||||
@ stub _ismbcl1 #(long)
|
||||
@ stub _ismbcl2 #(long)
|
||||
@ stub _ismbclegal #(long)
|
||||
@ cdecl _ismbclower(long)
|
||||
@ cdecl _ismbcprint(long)
|
||||
@ cdecl _ismbcpunct(long)
|
||||
@ cdecl _ismbcspace(long)
|
||||
@ cdecl _ismbcsymbol(long)
|
||||
@ cdecl _ismbcupper(long)
|
||||
@ cdecl _ismbslead(ptr ptr)
|
||||
@ cdecl _ismbstrail(ptr ptr)
|
||||
@ cdecl _isnan( double )
|
||||
@ cdecl _itoa(long ptr long) ntdll._itoa
|
||||
@ cdecl _itow(long ptr long) ntdll._itow
|
||||
#@ cdecl _j0(double)
|
||||
#@ cdecl _j1(double)
|
||||
#@ cdecl _jn(long double)
|
||||
@ cdecl _kbhit()
|
||||
@ cdecl _lfind(ptr ptr ptr long ptr)
|
||||
@ cdecl _loaddll(str)
|
||||
@ cdecl -i386 _local_unwind2(ptr long)
|
||||
@ cdecl _localtime32(ptr)
|
||||
@ cdecl _localtime64(ptr)
|
||||
@ cdecl _lock(long)
|
||||
@ cdecl _locking(long long long)
|
||||
@ cdecl _logb( double )
|
||||
@ cdecl -i386 _longjmpex(ptr long) longjmp
|
||||
@ cdecl _lrotl(long long)
|
||||
@ cdecl _lrotr(long long)
|
||||
@ cdecl _lsearch(ptr ptr long long ptr)
|
||||
@ cdecl _lseek(long long long)
|
||||
@ cdecl -ret64 _lseeki64(long double long)
|
||||
@ cdecl _ltoa(long ptr long) ntdll._ltoa
|
||||
@ cdecl _ltow(long ptr long) ntdll._ltow
|
||||
@ cdecl _makepath(ptr str str str str)
|
||||
@ cdecl _matherr(ptr)
|
||||
@ cdecl _mbbtombc(long)
|
||||
@ cdecl _mbbtype(long long)
|
||||
# extern _mbcasemap
|
||||
@ cdecl _mbccpy (str str)
|
||||
@ cdecl _mbcjistojms (long)
|
||||
@ cdecl _mbcjmstojis (long)
|
||||
@ cdecl _mbclen(ptr)
|
||||
@ cdecl _mbctohira (long)
|
||||
@ cdecl _mbctokata (long)
|
||||
@ cdecl _mbctolower(long)
|
||||
@ cdecl _mbctombb (long)
|
||||
@ cdecl _mbctoupper(long)
|
||||
@ extern _mbctype _mbctype
|
||||
@ cdecl _mbsbtype(str long)
|
||||
@ cdecl _mbscat(str str)
|
||||
@ cdecl _mbschr(str long)
|
||||
@ cdecl _mbscmp(str str)
|
||||
@ cdecl _mbscoll(str str)
|
||||
@ cdecl _mbscpy(ptr str)
|
||||
@ cdecl _mbscspn (str str)
|
||||
@ cdecl _mbsdec(ptr ptr)
|
||||
@ cdecl _mbsdup(str) _strdup
|
||||
@ cdecl _mbsicmp(str str)
|
||||
@ cdecl _mbsicoll(str str)
|
||||
@ cdecl _mbsinc(str)
|
||||
@ cdecl _mbslen(str)
|
||||
@ cdecl _mbslwr(str)
|
||||
@ cdecl _mbsnbcat (str str long)
|
||||
@ cdecl _mbsnbcmp(str str long)
|
||||
@ cdecl _mbsnbcnt(ptr long)
|
||||
@ cdecl _mbsnbcoll (str str long)
|
||||
@ cdecl _mbsnbcpy(ptr str long)
|
||||
@ cdecl _mbsnbcpy_s(ptr long str long)
|
||||
@ cdecl _mbsnbicmp(str str long)
|
||||
@ cdecl _mbsnbicoll (str str long)
|
||||
@ cdecl _mbsnbset(str long long)
|
||||
@ cdecl _mbsncat(str str long)
|
||||
@ cdecl _mbsnccnt(str long)
|
||||
@ cdecl _mbsncmp(str str long)
|
||||
@ cdecl _mbsncoll (str str long)
|
||||
@ cdecl _mbsncpy(str str long)
|
||||
@ cdecl _mbsnextc(str)
|
||||
@ cdecl _mbsnicmp(str str long)
|
||||
@ cdecl _mbsnicoll (str str long)
|
||||
@ cdecl _mbsninc(str long)
|
||||
@ cdecl _mbsnset(str long long)
|
||||
@ cdecl _mbspbrk(str str)
|
||||
@ cdecl _mbsrchr(str long)
|
||||
@ cdecl _mbsrev(str)
|
||||
@ cdecl _mbsset(str long)
|
||||
@ cdecl _mbsspn(str str)
|
||||
@ cdecl _mbsspnp(str str)
|
||||
@ cdecl _mbsstr(str str)
|
||||
@ cdecl _mbstok(str str)
|
||||
@ cdecl _mbstrlen(str)
|
||||
@ cdecl _mbsupr(str)
|
||||
@ cdecl _memccpy(ptr ptr long long) ntdll._memccpy
|
||||
@ cdecl _memicmp(str str long) ntdll._memicmp
|
||||
@ cdecl _mkdir(str)
|
||||
@ cdecl _mktemp(str)
|
||||
@ cdecl _mktime32(ptr)
|
||||
@ cdecl _mktime64(ptr)
|
||||
@ cdecl _msize(ptr)
|
||||
@ cdecl _nextafter(double double)
|
||||
@ cdecl _onexit(ptr)
|
||||
@ varargs _open(str long)
|
||||
@ cdecl _open_osfhandle(long long)
|
||||
@ extern _osver
|
||||
@ stub _outp #(long long)
|
||||
@ stub _outpd #(long long)
|
||||
@ stub _outpw #(long long)
|
||||
@ cdecl _pclose (ptr)
|
||||
@ extern _pctype
|
||||
@ extern _pgmptr
|
||||
@ cdecl _pipe (ptr long long)
|
||||
@ cdecl _popen (str str)
|
||||
@ cdecl _purecall()
|
||||
@ cdecl _putch(long)
|
||||
@ cdecl _putenv(str)
|
||||
@ cdecl _putw(long ptr)
|
||||
@ cdecl _putws(wstr)
|
||||
# extern _pwctype
|
||||
@ cdecl _read(long ptr long)
|
||||
@ cdecl _rmdir(str)
|
||||
@ cdecl _rmtmp()
|
||||
@ cdecl _rotl(long long)
|
||||
@ cdecl _rotr(long long)
|
||||
@ cdecl -arch=i386 _safe_fdiv()
|
||||
@ cdecl -arch=i386 _safe_fdivr()
|
||||
@ cdecl -arch=i386 _safe_fprem()
|
||||
@ cdecl -arch=i386 _safe_fprem1()
|
||||
@ cdecl _scalb( double long)
|
||||
@ cdecl _searchenv(str str ptr)
|
||||
@ stdcall -i386 _seh_longjmp_unwind(ptr)
|
||||
@ cdecl _set_error_mode(long)
|
||||
@ cdecl _set_sbh_threshold(long)
|
||||
@ cdecl _seterrormode(long)
|
||||
@ cdecl -norelay _setjmp(ptr)
|
||||
@ cdecl -i386 -norelay _setjmp3(ptr long)
|
||||
@ cdecl _setmaxstdio(long)
|
||||
@ cdecl _setmbcp(long)
|
||||
@ cdecl _setmode(long long)
|
||||
@ stub _setsystime #(ptr long)
|
||||
@ cdecl _sleep(long)
|
||||
@ varargs _snprintf(ptr long str)
|
||||
@ varargs _snwprintf(ptr long wstr)
|
||||
@ varargs _sopen(str long long)
|
||||
@ varargs _spawnl(long str str)
|
||||
@ varargs _spawnle(long str str)
|
||||
@ varargs _spawnlp(long str str)
|
||||
@ varargs _spawnlpe(long str str)
|
||||
@ cdecl _spawnv(long str ptr)
|
||||
@ cdecl _spawnve(long str ptr ptr)
|
||||
@ cdecl _spawnvp(long str ptr)
|
||||
@ cdecl _spawnvpe(long str ptr ptr)
|
||||
@ cdecl _splitpath(str ptr ptr ptr ptr) ntdll._splitpath
|
||||
@ cdecl _stat(str ptr)
|
||||
@ cdecl _stat64(str ptr)
|
||||
@ cdecl _stati64(str ptr)
|
||||
@ cdecl _statusfp()
|
||||
@ cdecl _strcmpi(str str) ntdll._strcmpi
|
||||
@ cdecl _strdate(ptr)
|
||||
@ cdecl _strdup(str)
|
||||
@ cdecl _strerror(long)
|
||||
@ cdecl _stricmp(str str) ntdll._stricmp
|
||||
@ cdecl _stricoll(str str)
|
||||
@ cdecl _strlwr(str) ntdll._strlwr
|
||||
@ cdecl _strncoll (str str long)
|
||||
@ cdecl _strnicmp(str str long) ntdll._strnicmp
|
||||
@ cdecl _strnicoll (str str long)
|
||||
@ cdecl _strnset(str long long)
|
||||
@ cdecl _strrev(str)
|
||||
@ cdecl _strset(str long)
|
||||
@ cdecl _strtime(ptr)
|
||||
@ cdecl _strtoui64(ptr ptr long) strtoull
|
||||
@ cdecl _strupr(str) ntdll._strupr
|
||||
@ cdecl _swab(str str long)
|
||||
@ extern _sys_errlist
|
||||
@ extern _sys_nerr
|
||||
@ cdecl _tell(long)
|
||||
@ cdecl -ret64 _telli64(long)
|
||||
@ cdecl _tempnam(str str)
|
||||
@ cdecl _time32(ptr)
|
||||
@ cdecl _time64(ptr)
|
||||
@ extern _timezone
|
||||
@ cdecl _tolower(long)
|
||||
@ cdecl _toupper(long)
|
||||
@ extern _tzname
|
||||
@ cdecl _tzset()
|
||||
@ cdecl _ui64toa(long long ptr long) ntdll._ui64toa
|
||||
@ cdecl _ui64tow(long long ptr long) ntdll._ui64tow
|
||||
@ cdecl _ultoa(long ptr long) ntdll._ultoa
|
||||
@ cdecl _ultow(long ptr long) ntdll._ultow
|
||||
@ cdecl _umask(long)
|
||||
@ cdecl _ungetch(long)
|
||||
@ cdecl _unlink(str)
|
||||
@ cdecl _unloaddll(long)
|
||||
@ cdecl _unlock(long)
|
||||
@ cdecl _utime32(str ptr)
|
||||
@ cdecl _utime64(str ptr)
|
||||
@ cdecl _utime(str ptr)
|
||||
#@ cdecl _vscprintf(str ptr)
|
||||
#@ cdecl _vscwprintf(wstr ptr)
|
||||
@ cdecl _vsnprintf(ptr long str ptr)
|
||||
@ cdecl _vsnwprintf(ptr long wstr ptr)
|
||||
@ cdecl _waccess(wstr long)
|
||||
@ cdecl _wasctime(ptr)
|
||||
@ cdecl _wchdir(wstr)
|
||||
@ cdecl _wchmod(wstr long)
|
||||
@ extern _wcmdln
|
||||
@ cdecl _wcreat(wstr long)
|
||||
@ cdecl _wcsdup(wstr)
|
||||
@ cdecl _wcsicmp(wstr wstr) ntdll._wcsicmp
|
||||
@ cdecl _wcsicoll(wstr wstr)
|
||||
@ cdecl _wcslwr(wstr) ntdll._wcslwr
|
||||
@ cdecl _wcsncoll (wstr wstr long)
|
||||
@ cdecl _wcsnicmp(wstr wstr long) ntdll._wcsnicmp
|
||||
@ cdecl _wcsnicoll (wstr wstr long)
|
||||
@ cdecl _wcsnset(wstr long long)
|
||||
@ cdecl _wcsrev(wstr)
|
||||
@ cdecl _wcsset(wstr long)
|
||||
@ cdecl _wcsupr(wstr) ntdll._wcsupr
|
||||
@ cdecl _wcsupr_s(wstr long)
|
||||
@ cdecl _wctime(ptr)
|
||||
@ cdecl _wctime32(ptr)
|
||||
@ cdecl _wctime64(ptr)
|
||||
@ extern _wenviron
|
||||
@ varargs _wexecl(wstr wstr)
|
||||
@ varargs _wexecle(wstr wstr)
|
||||
@ varargs _wexeclp(wstr wstr)
|
||||
@ varargs _wexeclpe(wstr wstr)
|
||||
@ cdecl _wexecv(wstr ptr)
|
||||
@ cdecl _wexecve(wstr ptr ptr)
|
||||
@ cdecl _wexecvp(wstr ptr)
|
||||
@ cdecl _wexecvpe(wstr ptr ptr)
|
||||
@ cdecl _wfdopen(long wstr)
|
||||
@ cdecl _wfindfirst(wstr ptr)
|
||||
@ cdecl _wfindfirsti64(wstr ptr)
|
||||
@ cdecl _wfindnext(long ptr)
|
||||
@ cdecl _wfindnexti64(long ptr)
|
||||
@ cdecl _wfopen(wstr wstr)
|
||||
@ cdecl _wfreopen(wstr wstr ptr)
|
||||
@ cdecl _wfsopen(wstr wstr long)
|
||||
@ cdecl _wfullpath(ptr wstr long)
|
||||
@ cdecl _wgetcwd(wstr long)
|
||||
@ cdecl _wgetdcwd(long wstr long)
|
||||
@ cdecl _wgetenv(wstr)
|
||||
@ extern _winmajor
|
||||
@ extern _winminor
|
||||
@ extern _winver
|
||||
@ cdecl _wmakepath(wstr wstr wstr wstr wstr)
|
||||
@ cdecl _wmkdir(wstr)
|
||||
@ cdecl _wmktemp(wstr)
|
||||
@ varargs _wopen(wstr long)
|
||||
@ stub _wperror #(wstr)
|
||||
@ extern _wpgmptr
|
||||
@ cdecl _wpopen (wstr wstr)
|
||||
@ cdecl _wputenv(wstr)
|
||||
@ cdecl _wremove(wstr)
|
||||
@ cdecl _wrename(wstr wstr)
|
||||
@ cdecl _write(long ptr long)
|
||||
@ cdecl _wrmdir(wstr)
|
||||
@ cdecl _wsearchenv(wstr wstr ptr)
|
||||
@ cdecl _wsetlocale(long wstr)
|
||||
@ varargs _wsopen (wstr long long)
|
||||
@ varargs _wspawnl(long wstr wstr)
|
||||
@ varargs _wspawnle(long wstr wstr)
|
||||
@ varargs _wspawnlp(long wstr wstr)
|
||||
@ varargs _wspawnlpe(long wstr wstr)
|
||||
@ cdecl _wspawnv(long wstr ptr)
|
||||
@ cdecl _wspawnve(long wstr ptr ptr)
|
||||
@ cdecl _wspawnvp(long wstr ptr)
|
||||
@ cdecl _wspawnvpe(long wstr ptr ptr)
|
||||
@ cdecl _wsplitpath(wstr ptr ptr ptr ptr)
|
||||
#@ cdecl _wsplitpath_s(wstr ptr long ptr long ptr long ptr long)
|
||||
@ cdecl _wstat(wstr ptr)
|
||||
@ cdecl _wstati64(wstr ptr)
|
||||
@ cdecl _wstat64(wstr ptr)
|
||||
@ cdecl _wstrdate(ptr)
|
||||
@ cdecl _wstrtime(ptr)
|
||||
@ cdecl _wsystem(wstr)
|
||||
@ cdecl _wtempnam(wstr wstr)
|
||||
@ stub _wtmpnam #(ptr)
|
||||
@ cdecl _wtoi(wstr) ntdll._wtoi
|
||||
@ cdecl _wtoi64(wstr) ntdll._wtoi64
|
||||
@ cdecl _wtol(wstr) ntdll._wtol
|
||||
@ cdecl _wunlink(wstr)
|
||||
@ cdecl _wutime(wstr ptr)
|
||||
@ cdecl _wutime32(wstr ptr)
|
||||
@ cdecl _wutime64(wstr ptr)
|
||||
#@ cdecl _y0(double)
|
||||
#@ cdecl _y1(double)
|
||||
#@ cdecl _yn(long double )
|
||||
@ cdecl abort()
|
||||
@ cdecl abs(long) ntdll.abs
|
||||
@ cdecl acos(double)
|
||||
@ cdecl asctime(ptr)
|
||||
@ cdecl asin(double)
|
||||
@ cdecl atan(double)
|
||||
@ cdecl atan2(double double)
|
||||
@ cdecl atexit(ptr)
|
||||
@ cdecl atof(str)
|
||||
@ cdecl atoi(str) ntdll.atoi
|
||||
@ cdecl atol(str) ntdll.atol
|
||||
@ cdecl bsearch(ptr ptr long long ptr) ntdll.bsearch
|
||||
@ cdecl calloc(long long)
|
||||
@ cdecl ceil(double)
|
||||
@ cdecl ceilf(double)
|
||||
@ cdecl clearerr(ptr)
|
||||
@ cdecl clock()
|
||||
@ cdecl cos(double)
|
||||
@ cdecl cosh(double)
|
||||
@ cdecl cosf(double)
|
||||
@ cdecl ctime(ptr)
|
||||
@ cdecl difftime(long long)
|
||||
@ cdecl div(long long)
|
||||
@ cdecl exit(long)
|
||||
@ cdecl exp(double)
|
||||
@ cdecl fabs(double)
|
||||
@ cdecl fclose(ptr)
|
||||
@ cdecl feof(ptr)
|
||||
@ cdecl ferror(ptr)
|
||||
@ cdecl fflush(ptr)
|
||||
@ cdecl fgetc(ptr)
|
||||
@ cdecl fgetpos(ptr ptr)
|
||||
@ cdecl fgets(ptr long ptr)
|
||||
@ cdecl fgetwc(ptr)
|
||||
@ cdecl fgetws(ptr long ptr)
|
||||
@ cdecl floor(double)
|
||||
@ cdecl fmod(double double)
|
||||
@ cdecl fmodf(double double)
|
||||
@ cdecl fopen(str str)
|
||||
@ varargs fprintf(ptr str)
|
||||
@ cdecl fputc(long ptr)
|
||||
@ cdecl fputs(str ptr)
|
||||
@ cdecl fputwc(long ptr)
|
||||
@ cdecl fputws(wstr ptr)
|
||||
@ cdecl fread(ptr long long ptr)
|
||||
@ cdecl free(ptr)
|
||||
@ cdecl freopen(str str ptr)
|
||||
@ cdecl frexp(double ptr)
|
||||
@ varargs fscanf(ptr str)
|
||||
@ cdecl fseek(ptr long long)
|
||||
@ cdecl fsetpos(ptr ptr)
|
||||
@ cdecl ftell(ptr)
|
||||
@ varargs fwprintf(ptr wstr)
|
||||
@ cdecl fwrite(ptr long long ptr)
|
||||
@ varargs fwscanf(ptr wstr)
|
||||
@ cdecl getc(ptr)
|
||||
@ cdecl getchar()
|
||||
@ cdecl getenv(str)
|
||||
@ cdecl gets(str)
|
||||
@ cdecl getwc(ptr)
|
||||
@ cdecl getwchar()
|
||||
@ cdecl gmtime(ptr)
|
||||
@ cdecl is_wctype(long long) ntdll.iswctype
|
||||
@ cdecl isalnum(long)
|
||||
@ cdecl isalpha(long)
|
||||
@ cdecl iscntrl(long)
|
||||
@ cdecl isdigit(long)
|
||||
@ cdecl isgraph(long)
|
||||
@ cdecl isleadbyte(long)
|
||||
@ cdecl islower(long)
|
||||
@ cdecl isprint(long)
|
||||
@ cdecl ispunct(long)
|
||||
@ cdecl isspace(long)
|
||||
@ cdecl isupper(long)
|
||||
@ cdecl iswalnum(long)
|
||||
@ cdecl iswalpha(long) ntdll.iswalpha
|
||||
@ cdecl iswascii(long)
|
||||
@ cdecl iswcntrl(long)
|
||||
@ cdecl iswctype(long long) ntdll.iswctype
|
||||
@ cdecl iswdigit(long)
|
||||
@ cdecl iswgraph(long)
|
||||
@ cdecl iswlower(long)
|
||||
@ cdecl iswprint(long)
|
||||
@ cdecl iswpunct(long)
|
||||
@ cdecl iswspace(long)
|
||||
@ cdecl iswupper(long)
|
||||
@ cdecl iswxdigit(long)
|
||||
@ cdecl isxdigit(long)
|
||||
@ cdecl labs(long) ntdll.labs
|
||||
@ cdecl ldexp( double long)
|
||||
@ cdecl ldiv(long long)
|
||||
@ cdecl localeconv()
|
||||
@ cdecl localtime(ptr)
|
||||
@ cdecl log(double)
|
||||
@ cdecl logf(double)
|
||||
@ cdecl log10(double)
|
||||
@ cdecl longjmp(ptr long)
|
||||
@ cdecl malloc(long)
|
||||
@ cdecl mblen(ptr long)
|
||||
@ cdecl mbstowcs(ptr str long) ntdll.mbstowcs
|
||||
@ cdecl mbtowc(wstr str long)
|
||||
@ cdecl memchr(ptr long long) ntdll.memchr
|
||||
@ cdecl memcmp(ptr ptr long) ntdll.memcmp
|
||||
@ cdecl memcpy(ptr ptr long) ntdll.memcpy
|
||||
@ cdecl memmove(ptr ptr long) ntdll.memmove
|
||||
@ cdecl memset(ptr long long) ntdll.memset
|
||||
@ cdecl mktime(ptr)
|
||||
@ cdecl modf(double ptr)
|
||||
@ cdecl perror(str)
|
||||
@ cdecl pow(double double)
|
||||
@ varargs printf(str)
|
||||
@ cdecl putc(long ptr)
|
||||
@ cdecl putchar(long)
|
||||
@ cdecl puts(str)
|
||||
@ cdecl putwc(long ptr) fputwc #redirection is hack
|
||||
@ cdecl putwchar(long) _fputwchar #redirection is hack
|
||||
@ cdecl qsort(ptr long long ptr) ntdll.qsort
|
||||
@ cdecl raise(long)
|
||||
@ cdecl rand()
|
||||
#@ cdecl rand_s(ptr)
|
||||
@ cdecl realloc(ptr long)
|
||||
@ cdecl remove(str)
|
||||
@ cdecl rename(str str)
|
||||
@ cdecl rewind(ptr)
|
||||
@ varargs scanf(str)
|
||||
@ cdecl setbuf(ptr ptr)
|
||||
@ cdecl setlocale(long str)
|
||||
@ cdecl setvbuf(ptr str long long)
|
||||
@ cdecl signal(long long)
|
||||
@ cdecl sin(double)
|
||||
@ cdecl sinh(double)
|
||||
@ varargs sprintf(ptr str)
|
||||
#@ varargs sprintf_s(ptr long str)
|
||||
@ cdecl sqrt(double)
|
||||
@ cdecl sqrtf(double)
|
||||
@ cdecl srand(long)
|
||||
@ varargs sscanf(str str)
|
||||
@ cdecl strcat(str str) ntdll.strcat
|
||||
@ cdecl strcat_s(str long str)
|
||||
@ cdecl strchr(str long) ntdll.strchr
|
||||
@ cdecl strcmp(str str) ntdll.strcmp
|
||||
@ cdecl strcoll(str str)
|
||||
@ cdecl strcpy(ptr str) ntdll.strcpy
|
||||
@ cdecl strcpy_s(ptr long str)
|
||||
@ cdecl strcspn(str str) ntdll.strcspn
|
||||
@ cdecl strerror(long)
|
||||
@ cdecl strftime(str long str ptr)
|
||||
@ cdecl strlen(str) ntdll.strlen
|
||||
@ cdecl strncat(str str long) ntdll.strncat
|
||||
@ cdecl strncmp(str str long) ntdll.strncmp
|
||||
@ cdecl strncpy(ptr str long) ntdll.strncpy
|
||||
@ cdecl strpbrk(str str) ntdll.strpbrk
|
||||
@ cdecl strrchr(str long) ntdll.strrchr
|
||||
@ cdecl strspn(str str) ntdll.strspn
|
||||
@ cdecl strstr(str str) ntdll.strstr
|
||||
@ cdecl strtod(str ptr)
|
||||
@ cdecl strtok(str str)
|
||||
@ cdecl strtol(str ptr long)
|
||||
@ cdecl strtoul(str ptr long)
|
||||
@ cdecl strxfrm(ptr str long)
|
||||
@ varargs swprintf(ptr wstr)
|
||||
@ varargs swscanf(wstr wstr)
|
||||
@ cdecl system(str)
|
||||
@ cdecl tan(double)
|
||||
@ cdecl tanh(double)
|
||||
@ cdecl time(ptr)
|
||||
@ cdecl tmpfile()
|
||||
@ cdecl tmpnam(ptr)
|
||||
@ cdecl tolower(long) ntdll.tolower
|
||||
@ cdecl toupper(long) ntdll.toupper
|
||||
@ cdecl towlower(long) ntdll.towlower
|
||||
@ cdecl towupper(long) ntdll.towupper
|
||||
@ cdecl ungetc(long ptr)
|
||||
@ cdecl ungetwc(long ptr)
|
||||
@ cdecl vfprintf(ptr str ptr)
|
||||
@ cdecl vfwprintf(ptr wstr ptr)
|
||||
@ cdecl vprintf(str ptr)
|
||||
@ cdecl vsprintf(ptr str ptr)
|
||||
#@ cdecl vsprintf_s(ptr long str ptr)
|
||||
@ cdecl vswprintf(ptr wstr ptr)
|
||||
#@ cdecl vswprintf_s(ptr long wstr ptr)
|
||||
@ cdecl vwprintf(wstr ptr)
|
||||
@ cdecl wcscat(wstr wstr) ntdll.wcscat
|
||||
#@ cdecl wcscat_s(wstr long wstr)
|
||||
@ cdecl wcschr(wstr long) ntdll.wcschr
|
||||
@ cdecl wcscmp(wstr wstr) ntdll.wcscmp
|
||||
@ cdecl wcscoll(wstr wstr)
|
||||
@ cdecl wcscpy(ptr wstr) ntdll.wcscpy
|
||||
@ cdecl wcscpy_s(ptr long wstr)
|
||||
@ cdecl wcscspn(wstr wstr) ntdll.wcscspn
|
||||
@ cdecl wcsftime(ptr long wstr ptr)
|
||||
@ cdecl wcslen(wstr) ntdll.wcslen
|
||||
@ cdecl wcsncat(wstr wstr long) ntdll.wcsncat
|
||||
@ cdecl wcsncmp(wstr wstr long) ntdll.wcsncmp
|
||||
@ cdecl wcsncpy(ptr wstr long) ntdll.wcsncpy
|
||||
@ cdecl wcsncpy_s(ptr long wstr long)
|
||||
@ cdecl wcspbrk(wstr wstr)
|
||||
@ cdecl wcsrchr(wstr long) ntdll.wcsrchr
|
||||
@ cdecl wcsspn(wstr wstr) ntdll.wcsspn
|
||||
@ cdecl wcsstr(wstr wstr) ntdll.wcsstr
|
||||
@ cdecl wcstod(wstr ptr)
|
||||
@ cdecl wcstok(wstr wstr)
|
||||
@ cdecl wcstol(wstr ptr long) ntdll.wcstol
|
||||
@ cdecl wcstombs(ptr ptr long) ntdll.wcstombs
|
||||
@ cdecl wcstoul(wstr ptr long) ntdll.wcstoul
|
||||
@ stub wcsxfrm #(ptr wstr long)
|
||||
@ cdecl wctomb(ptr long)
|
||||
@ varargs wprintf(wstr)
|
||||
@ varargs wscanf(wstr)
|
|
@ -187,8 +187,31 @@ extern "C" {
|
|||
return (_Df);
|
||||
}
|
||||
|
||||
//missing in msvcrt but needed by gdiplus
|
||||
#if !defined(__x86_64) && !defined(_M_AMD64)
|
||||
__CRT_INLINE float acosf(float _X) { return ((float)acos((double)_X)); }
|
||||
__CRT_INLINE float asinf(float _X) { return ((float)asin((double)_X)); }
|
||||
__CRT_INLINE float atanf(float _X) { return ((float)atan((double)_X)); }
|
||||
__CRT_INLINE float atan2f(float _X,float _Y) { return ((float)atan2((double)_X,(double)_Y)); }
|
||||
__CRT_INLINE float ceilf(float _X) { return ((float)ceil((double)_X)); }
|
||||
__CRT_INLINE float cosf(float _X) { return ((float)cos((double)_X)); }
|
||||
__CRT_INLINE float coshf(float _X) { return ((float)cosh((double)_X)); }
|
||||
__CRT_INLINE float expf(float _X) { return ((float)exp((double)_X)); }
|
||||
__CRT_INLINE float floorf(float _X) { return ((float)floor((double)_X)); }
|
||||
__CRT_INLINE float fmodf(float _X,float _Y) { return ((float)fmod((double)_X,(double)_Y)); }
|
||||
__CRT_INLINE float logf(float _X) { return ((float)log((double)_X)); }
|
||||
__CRT_INLINE float log10f(float _X) { return ((float)log10((double)_X)); }
|
||||
__CRT_INLINE float modff(float _X,float *_Y) {
|
||||
double _Di,_Df = modf((double)_X,&_Di);
|
||||
*_Y = (float)_Di;
|
||||
return ((float)_Df);
|
||||
}
|
||||
__CRT_INLINE float powf(float _X,float _Y) { return ((float)pow((double)_X,(double)_Y)); }
|
||||
__CRT_INLINE float sinf(float _X) { return ((float)sin((double)_X)); }
|
||||
__CRT_INLINE float sinhf(float _X) { return ((float)sinh((double)_X)); }
|
||||
__CRT_INLINE float sqrtf(float _X) { return ((float)sqrt((double)_X)); }
|
||||
__CRT_INLINE float tanf(float _X) { return ((float)tan((double)_X)); }
|
||||
__CRT_INLINE float tanhf(float _X) { return ((float)tanh((double)_X)); }
|
||||
#endif
|
||||
|
||||
#ifndef NO_OLDNAMES
|
||||
#define DOMAIN _DOMAIN
|
||||
|
|
|
@ -22,7 +22,6 @@
|
|||
<define name="__MINGW_IMPORT">extern</define>
|
||||
<define name="USE_MSVCRT_PREFIX" />
|
||||
<define name="_MSVCRT_LIB_" />
|
||||
<define name="_CRTBLD" />
|
||||
<define name="_MSVCRT_" />
|
||||
<define name="_MT" />
|
||||
<directory name="conio">
|
||||
|
@ -107,84 +106,87 @@
|
|||
<file>locale.c</file>
|
||||
</directory>
|
||||
<directory name="math">
|
||||
<file>abs.c</file>
|
||||
<file>acos.c</file>
|
||||
<file>acosf.c</file>
|
||||
<file>adjust.c</file>
|
||||
<file>asin.c</file>
|
||||
<file>asinf.c</file>
|
||||
<file>atan.c</file>
|
||||
<file>atan2.c</file>
|
||||
<file>atan2f.c</file>
|
||||
<file>atanf.c</file>
|
||||
<file>cabs.c</file>
|
||||
<file>copysign.c</file>
|
||||
<file>copysignf.c</file>
|
||||
<file>cosf.c</file>
|
||||
<file>cosh.c</file>
|
||||
<file>div.c</file>
|
||||
<file>exp.c</file>
|
||||
<file>expf.c</file>
|
||||
<file>fabs.c</file>
|
||||
<file>fdivbug.c</file>
|
||||
<file>fmod.c</file>
|
||||
<file>fmodf.c</file>
|
||||
<file>frexp.c</file>
|
||||
<file>huge_val.c</file>
|
||||
<file>hypot.c</file>
|
||||
<file>hypotf.c</file>
|
||||
<file>ldexp.c</file>
|
||||
<file>ldiv.c</file>
|
||||
<file>log10f.c</file>
|
||||
<file>logb.c</file>
|
||||
<file>logbf.c</file>
|
||||
<file>logf.c</file>
|
||||
<file>modf.c</file>
|
||||
<file>modff.c</file>
|
||||
<file>nextafter.c</file>
|
||||
<file>nextafterf.c</file>
|
||||
<file>powf.c</file>
|
||||
<file>rand.c</file>
|
||||
<file>s_modf.c</file>
|
||||
<file>sinf.c</file>
|
||||
<file>sinh.c</file>
|
||||
<file>sinhf.c</file>
|
||||
<file>sqrt.c</file>
|
||||
<file>sqrtf.c</file>
|
||||
<file>tanf.c</file>
|
||||
<file>tanh.c</file>
|
||||
<file>tanhf.c</file>
|
||||
<file>pow_asm.c</file>
|
||||
|
||||
<if property="ARCH" value="i386">
|
||||
<directory name="i386">
|
||||
<file>ceil.S</file>
|
||||
<file>ceilf.S</file>
|
||||
<file>cos.S</file>
|
||||
<file>floor.S</file>
|
||||
<file>floorf.S</file>
|
||||
<file>log.S</file>
|
||||
<file>log10.S</file>
|
||||
<file>sin.S</file>
|
||||
<file>tan.S</file>
|
||||
<file>ci.c</file>
|
||||
<file>alldiv_asm.s</file>
|
||||
<file>alldvrm_asm.s</file>
|
||||
<file>allmul_asm.s</file>
|
||||
<file>allrem_asm.s</file>
|
||||
<file>allshl_asm.s</file>
|
||||
<file>allshr_asm.s</file>
|
||||
<file>atan_asm.s</file>
|
||||
<file>aulldiv_asm.s</file>
|
||||
<file>aulldvrm_asm.s</file>
|
||||
<file>aullrem_asm.s</file>
|
||||
<file>aullshr_asm.s</file>
|
||||
<file>ceil_asm.s</file>
|
||||
<file>cos_asm.s</file>
|
||||
<file>fabs_asm.s</file>
|
||||
<file>floor_asm.s</file>
|
||||
<file>ftol_asm.s</file>
|
||||
<file>log_asm.s</file>
|
||||
<file>log10_asm.s</file>
|
||||
<file>pow_asm.s</file>
|
||||
<file>sin_asm.s</file>
|
||||
<file>sqrt_asm.s</file>
|
||||
<file>tan_asm.s</file>
|
||||
|
||||
<file>atan2.c</file>
|
||||
<file>ci.c</file>
|
||||
<file>exp.c</file>
|
||||
<file>fmod.c</file>
|
||||
<file>ldexp.c</file>
|
||||
</directory>
|
||||
<!-- FIXME: we don't actually implement these... they recursively call themselves through an alias -->
|
||||
<!--<file>j0_y0.c</file>
|
||||
<file>j1_y1.c</file>
|
||||
<file>jn_yn.c</file>-->
|
||||
</if>
|
||||
<if property="ARCH" value="amd64">
|
||||
<directory name="i386">
|
||||
<directory name="amd64">
|
||||
<file>alldiv.S</file>
|
||||
<file>atan.S</file>
|
||||
<file>atan2.S</file>
|
||||
<file>ceil.S</file>
|
||||
<file>ceilf.S</file>
|
||||
<file>cos.S</file>
|
||||
<file>exp.S</file>
|
||||
<file>fabs.S</file>
|
||||
<file>floor.S</file>
|
||||
<file>floorf.S</file>
|
||||
<file>fmod.S</file>
|
||||
<file>fmodf.S</file>
|
||||
<file>ldexp.S</file>
|
||||
<file>log.S</file>
|
||||
<file>log10.S</file>
|
||||
<file>sin.S</file>
|
||||
<file>tan.S</file>
|
||||
<file>ci.c</file>
|
||||
</directory>
|
||||
<directory name="amd64">
|
||||
<file>pow.S</file>
|
||||
<file>sin.S</file>
|
||||
<file>sqrt.S</file>
|
||||
<file>sqrtf.S</file>
|
||||
<file>tan.S</file>
|
||||
</directory>
|
||||
<!-- FIXME: we don't actually implement these... they recursively call themselves through an alias -->
|
||||
<!--<file>j0_y0.c</file>
|
||||
<file>j1_y1.c</file>
|
||||
<file>jn_yn.c</file>-->
|
||||
</if>
|
||||
<ifnot property="ARCH" value="i386">
|
||||
<file>stubs.c</file>
|
||||
|
|
|
@ -491,11 +491,3 @@ unsigned int CDECL __CxxQueryExceptionSize(void)
|
|||
{
|
||||
return sizeof(cxx_exception_type);
|
||||
}
|
||||
|
||||
/******************************************************************
|
||||
* MSVCRT___uncaught_exception
|
||||
*/
|
||||
BOOL CDECL __uncaught_exception(void)
|
||||
{
|
||||
return FALSE;
|
||||
}
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
#define WIN32_NO_STATUS
|
||||
#include <precomp.h>
|
||||
#include <windows.h>
|
||||
#include <setjmp.h>
|
||||
#define NTOS_MODE_USER
|
||||
#include <ndk/umtypes.h>
|
||||
#include <ndk/extypes.h>
|
||||
|
@ -26,6 +25,23 @@ typedef struct _MSVCRT_EXCEPTION_FRAME
|
|||
PEXCEPTION_POINTERS xpointers;
|
||||
} MSVCRT_EXCEPTION_FRAME;
|
||||
|
||||
|
||||
typedef struct __JUMP_BUFFER
|
||||
{
|
||||
unsigned long Ebp;
|
||||
unsigned long Ebx;
|
||||
unsigned long Edi;
|
||||
unsigned long Esi;
|
||||
unsigned long Esp;
|
||||
unsigned long Eip;
|
||||
unsigned long Registration;
|
||||
unsigned long TryLevel;
|
||||
/* Start of new struct members */
|
||||
unsigned long Cookie;
|
||||
unsigned long UnwindFunc;
|
||||
unsigned long UnwindData[6];
|
||||
} _JUMP_BUFFER;
|
||||
|
||||
void
|
||||
_local_unwind2(MSVCRT_EXCEPTION_FRAME *RegistrationFrame,
|
||||
LONG TryLevel);
|
||||
|
|
|
@ -6,7 +6,6 @@
|
|||
<define name="NO_RTL_INLINES" />
|
||||
<define name="_NTSYSTEM_" />
|
||||
<define name="_NTDLLBUILD_" />
|
||||
<define name="_CRTBLD" />
|
||||
<define name="_LIBCNT_" />
|
||||
<if property="ARCH" value="i386">
|
||||
<define name="__MINGW_IMPORT">"extern __attribute__ ((dllexport))"</define>
|
||||
|
@ -41,44 +40,48 @@
|
|||
<file>allrem_asm.s</file>
|
||||
<file>allshl_asm.s</file>
|
||||
<file>allshr_asm.s</file>
|
||||
<file>atan_asm.s</file>
|
||||
<file>aulldiv_asm.s</file>
|
||||
<file>aulldvrm_asm.s</file>
|
||||
<file>aullrem_asm.s</file>
|
||||
<file>aullshr_asm.s</file>
|
||||
<file>ci.c</file>
|
||||
<file>ceil_asm.s</file>
|
||||
<file>cos_asm.s</file>
|
||||
<file>fabs_asm.s</file>
|
||||
<file>floor_asm.s</file>
|
||||
<file>ftol_asm.s</file>
|
||||
<file>log_asm.s</file>
|
||||
<file>pow_asm.s</file>
|
||||
<file>ceil.S</file>
|
||||
<file>cos.S</file>
|
||||
<file>log.S</file>
|
||||
<file>log10.S</file>
|
||||
<file>sin.S</file>
|
||||
<file>tan.S</file>
|
||||
<file>sin_asm.s</file>
|
||||
<file>sqrt_asm.s</file>
|
||||
<file>tan_asm.s</file>
|
||||
</directory>
|
||||
</if>
|
||||
<if property="ARCH" value="amd64">
|
||||
<directory name="i386">
|
||||
<file>ceil.S</file>
|
||||
<file>cos.S</file>
|
||||
<file>floor.S</file>
|
||||
<file>log.S</file>
|
||||
<file>log10.S</file>
|
||||
<file>sin.S</file>
|
||||
<file>tan.S</file>
|
||||
</directory>
|
||||
<directory name="amd64">
|
||||
<file>alldiv.S</file>
|
||||
<file>atan.S</file>
|
||||
<file>atan2.S</file>
|
||||
<file>ceil.S</file>
|
||||
<file>cos.S</file>
|
||||
<file>exp.S</file>
|
||||
<file>fabs.S</file>
|
||||
<file>floor.S</file>
|
||||
<file>fmod.S</file>
|
||||
<file>ldexp.S</file>
|
||||
<file>log.S</file>
|
||||
<file>log10.S</file>
|
||||
<file>pow.S</file>
|
||||
<file>sin.S</file>
|
||||
<file>sqrt.S</file>
|
||||
<file>tan.S</file>
|
||||
</directory>
|
||||
</if>
|
||||
<file>abs.c</file>
|
||||
<file>atan.c</file>
|
||||
<file>fabs.c</file>
|
||||
<file>div.c</file>
|
||||
<file>labs.c</file>
|
||||
<file>rand_nt.c</file>
|
||||
<file>sqrt.c</file>
|
||||
</directory>
|
||||
|
||||
<directory name="mem">
|
||||
|
|
|
@ -1,29 +0,0 @@
|
|||
/**
|
||||
* This file has no copyright assigned and is placed in the Public Domain.
|
||||
* This file is part of the w64 mingw-runtime package.
|
||||
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
|
||||
*/
|
||||
/*
|
||||
* Written by J.T. Conklin <jtc@netbsd.org>.
|
||||
* Public domain.
|
||||
*/
|
||||
|
||||
#include <math.h>
|
||||
|
||||
float
|
||||
acosf (float x)
|
||||
{
|
||||
float res = 0.0F;
|
||||
#ifdef __GNUC__
|
||||
/* acosl = atanl (sqrtl(1 - x^2) / x) */
|
||||
asm ( "fld %%st\n\t"
|
||||
"fmul %%st(0)\n\t" /* x^2 */
|
||||
"fld1\n\t"
|
||||
"fsubp\n\t" /* 1 - x^2 */
|
||||
"fsqrt\n\t" /* sqrtl (1 - x^2) */
|
||||
"fxch %%st(1)\n\t"
|
||||
"fpatan"
|
||||
: "=t" (res) : "0" (x) : "st(1)");
|
||||
#endif
|
||||
return res;
|
||||
}
|
21
reactos/lib/sdk/crt/math/amd64/atan.S
Normal file
21
reactos/lib/sdk/crt/math/amd64/atan.S
Normal file
|
@ -0,0 +1,21 @@
|
|||
/*
|
||||
* COPYRIGHT: See COPYING in the top level directory
|
||||
* PROJECT: ReactOS system libraries
|
||||
* PURPOSE: Implementation of atan
|
||||
* FILE: lib/sdk/crt/math/amd64/atan.S
|
||||
* PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org)
|
||||
*/
|
||||
|
||||
/* INCLUDES ******************************************************************/
|
||||
|
||||
#include <ndk/amd64/asm.h>
|
||||
#include <ndk/amd64/asmmacro.S>
|
||||
|
||||
.intel_syntax noprefix
|
||||
|
||||
|
||||
.proc atan
|
||||
UNIMPLEMENTED atan
|
||||
ret
|
||||
|
||||
.endproc
|
21
reactos/lib/sdk/crt/math/amd64/atan2.S
Normal file
21
reactos/lib/sdk/crt/math/amd64/atan2.S
Normal file
|
@ -0,0 +1,21 @@
|
|||
/*
|
||||
* COPYRIGHT: See COPYING in the top level directory
|
||||
* PROJECT: ReactOS system libraries
|
||||
* PURPOSE: Implementation of atan2
|
||||
* FILE: lib/sdk/crt/math/amd64/atan2.S
|
||||
* PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org)
|
||||
*/
|
||||
|
||||
/* INCLUDES ******************************************************************/
|
||||
|
||||
#include <ndk/amd64/asm.h>
|
||||
#include <ndk/amd64/asmmacro.S>
|
||||
|
||||
.intel_syntax noprefix
|
||||
|
||||
|
||||
.proc atan2
|
||||
UNIMPLEMENTED atan2
|
||||
ret
|
||||
|
||||
.endproc
|
21
reactos/lib/sdk/crt/math/amd64/ceil.S
Normal file
21
reactos/lib/sdk/crt/math/amd64/ceil.S
Normal file
|
@ -0,0 +1,21 @@
|
|||
/*
|
||||
* COPYRIGHT: See COPYING in the top level directory
|
||||
* PROJECT: ReactOS system libraries
|
||||
* PURPOSE: Implementation of ceil
|
||||
* FILE: lib/sdk/crt/math/amd64/ceil.S
|
||||
* PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org)
|
||||
*/
|
||||
|
||||
/* INCLUDES ******************************************************************/
|
||||
|
||||
#include <ndk/amd64/asm.h>
|
||||
#include <ndk/amd64/asmmacro.S>
|
||||
|
||||
.intel_syntax noprefix
|
||||
|
||||
|
||||
.proc ceil
|
||||
UNIMPLEMENTED ceil
|
||||
ret
|
||||
|
||||
.endproc
|
40
reactos/lib/sdk/crt/math/amd64/ceilf.S
Normal file
40
reactos/lib/sdk/crt/math/amd64/ceilf.S
Normal file
|
@ -0,0 +1,40 @@
|
|||
/*
|
||||
* COPYRIGHT: See COPYING in the top level directory
|
||||
* PROJECT: ReactOS system libraries
|
||||
* PURPOSE: Implementation of tan
|
||||
* FILE: lib/sdk/crt/math/amd64/ceilf.S
|
||||
* PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org)
|
||||
*/
|
||||
|
||||
/* INCLUDES ******************************************************************/
|
||||
|
||||
#include <ndk/amd64/asm.h>
|
||||
#include <ndk/amd64/asmmacro.S>
|
||||
|
||||
.intel_syntax noprefix
|
||||
|
||||
|
||||
.proc ceilf
|
||||
/* Put parameter on the stack */
|
||||
movss [rsp - 0x10], xmm0
|
||||
fld dword ptr [rsp]
|
||||
|
||||
/* Change fpu control word to round up */
|
||||
fstcw [rsp - 0x10]
|
||||
mov eax, [rsp - 0x10]
|
||||
or eax, 0x00800
|
||||
and eax, 0x0fbff
|
||||
mov [rsp - 0x08], eax
|
||||
fldcw [rsp - 0x08]
|
||||
|
||||
/* Round to integer */
|
||||
frndint
|
||||
|
||||
/* Restore fpu control word */
|
||||
fldcw [rsp - 0x10]
|
||||
|
||||
fstp dword ptr [rsp - 0x10]
|
||||
movss xmm0, [rsp - 0x10]
|
||||
ret
|
||||
|
||||
.endproc
|
21
reactos/lib/sdk/crt/math/amd64/cos.S
Normal file
21
reactos/lib/sdk/crt/math/amd64/cos.S
Normal file
|
@ -0,0 +1,21 @@
|
|||
/*
|
||||
* COPYRIGHT: See COPYING in the top level directory
|
||||
* PROJECT: ReactOS system libraries
|
||||
* PURPOSE: Implementation of cos
|
||||
* FILE: lib/sdk/crt/math/amd64/cos.S
|
||||
* PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org)
|
||||
*/
|
||||
|
||||
/* INCLUDES ******************************************************************/
|
||||
|
||||
#include <ndk/amd64/asm.h>
|
||||
#include <ndk/amd64/asmmacro.S>
|
||||
|
||||
.intel_syntax noprefix
|
||||
|
||||
|
||||
.proc cos
|
||||
UNIMPLEMENTED cos
|
||||
ret
|
||||
|
||||
.endproc
|
21
reactos/lib/sdk/crt/math/amd64/exp.S
Normal file
21
reactos/lib/sdk/crt/math/amd64/exp.S
Normal file
|
@ -0,0 +1,21 @@
|
|||
/*
|
||||
* COPYRIGHT: See COPYING in the top level directory
|
||||
* PROJECT: ReactOS system libraries
|
||||
* PURPOSE: Implementation of exp
|
||||
* FILE: lib/sdk/crt/math/amd64/exp.S
|
||||
* PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org)
|
||||
*/
|
||||
|
||||
/* INCLUDES ******************************************************************/
|
||||
|
||||
#include <ndk/amd64/asm.h>
|
||||
#include <ndk/amd64/asmmacro.S>
|
||||
|
||||
.intel_syntax noprefix
|
||||
|
||||
|
||||
.proc exp
|
||||
UNIMPLEMENTED exp
|
||||
ret
|
||||
|
||||
.endproc
|
21
reactos/lib/sdk/crt/math/amd64/fabs.S
Normal file
21
reactos/lib/sdk/crt/math/amd64/fabs.S
Normal file
|
@ -0,0 +1,21 @@
|
|||
/*
|
||||
* COPYRIGHT: See COPYING in the top level directory
|
||||
* PROJECT: ReactOS system libraries
|
||||
* PURPOSE: Implementation of fabs
|
||||
* FILE: lib/sdk/crt/math/amd64/fabs.S
|
||||
* PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org)
|
||||
*/
|
||||
|
||||
/* INCLUDES ******************************************************************/
|
||||
|
||||
#include <ndk/amd64/asm.h>
|
||||
#include <ndk/amd64/asmmacro.S>
|
||||
|
||||
.intel_syntax noprefix
|
||||
|
||||
|
||||
.proc fabs
|
||||
UNIMPLEMENTED fabs
|
||||
ret
|
||||
|
||||
.endproc
|
21
reactos/lib/sdk/crt/math/amd64/floor.S
Normal file
21
reactos/lib/sdk/crt/math/amd64/floor.S
Normal file
|
@ -0,0 +1,21 @@
|
|||
/*
|
||||
* COPYRIGHT: See COPYING in the top level directory
|
||||
* PROJECT: ReactOS system libraries
|
||||
* PURPOSE: Implementation of floor
|
||||
* FILE: lib/sdk/crt/math/amd64/floor.S
|
||||
* PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org)
|
||||
*/
|
||||
|
||||
/* INCLUDES ******************************************************************/
|
||||
|
||||
#include <ndk/amd64/asm.h>
|
||||
#include <ndk/amd64/asmmacro.S>
|
||||
|
||||
.intel_syntax noprefix
|
||||
|
||||
|
||||
.proc floor
|
||||
UNIMPLEMENTED floor
|
||||
ret
|
||||
|
||||
.endproc
|
40
reactos/lib/sdk/crt/math/amd64/floorf.S
Normal file
40
reactos/lib/sdk/crt/math/amd64/floorf.S
Normal file
|
@ -0,0 +1,40 @@
|
|||
/*
|
||||
* COPYRIGHT: See COPYING in the top level directory
|
||||
* PROJECT: ReactOS system libraries
|
||||
* PURPOSE: Implementation of tan
|
||||
* FILE: lib/sdk/crt/math/amd64/floorf.S
|
||||
* PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org)
|
||||
*/
|
||||
|
||||
/* INCLUDES ******************************************************************/
|
||||
|
||||
#include <ndk/amd64/asm.h>
|
||||
#include <ndk/amd64/asmmacro.S>
|
||||
|
||||
.intel_syntax noprefix
|
||||
|
||||
|
||||
.proc floorf
|
||||
/* Put parameter on the stack */
|
||||
movss [rsp - 0x10], xmm0
|
||||
fld dword ptr [rsp]
|
||||
|
||||
/* Change fpu control word to round down */
|
||||
fstcw [rsp - 0x10]
|
||||
mov eax, [rsp - 0x10]
|
||||
or eax, 0x00400
|
||||
and eax, 0x0f7ff
|
||||
mov [rsp - 0x08], eax
|
||||
fldcw [rsp - 0x08]
|
||||
|
||||
/* Round to integer */
|
||||
frndint
|
||||
|
||||
/* Restore fpu control word */
|
||||
fldcw [rsp - 0x10]
|
||||
|
||||
fstp dword ptr [rsp - 0x10]
|
||||
movss xmm0, [rsp - 0x10]
|
||||
ret
|
||||
|
||||
.endproc
|
21
reactos/lib/sdk/crt/math/amd64/fmod.S
Normal file
21
reactos/lib/sdk/crt/math/amd64/fmod.S
Normal file
|
@ -0,0 +1,21 @@
|
|||
/*
|
||||
* COPYRIGHT: See COPYING in the top level directory
|
||||
* PROJECT: ReactOS system libraries
|
||||
* PURPOSE: Implementation of fmod
|
||||
* FILE: lib/sdk/crt/math/amd64/fmod.S
|
||||
* PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org)
|
||||
*/
|
||||
|
||||
/* INCLUDES ******************************************************************/
|
||||
|
||||
#include <ndk/amd64/asm.h>
|
||||
#include <ndk/amd64/asmmacro.S>
|
||||
|
||||
.intel_syntax noprefix
|
||||
|
||||
|
||||
.proc fmod
|
||||
UNIMPLEMENTED fmod
|
||||
ret
|
||||
|
||||
.endproc
|
21
reactos/lib/sdk/crt/math/amd64/fmodf.S
Normal file
21
reactos/lib/sdk/crt/math/amd64/fmodf.S
Normal file
|
@ -0,0 +1,21 @@
|
|||
/*
|
||||
* COPYRIGHT: See COPYING in the top level directory
|
||||
* PROJECT: ReactOS system libraries
|
||||
* PURPOSE: Implementation of fmodf
|
||||
* FILE: lib/sdk/crt/math/amd64/fmodf.S
|
||||
* PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org)
|
||||
*/
|
||||
|
||||
/* INCLUDES ******************************************************************/
|
||||
|
||||
#include <ndk/amd64/asm.h>
|
||||
#include <ndk/amd64/asmmacro.S>
|
||||
|
||||
.intel_syntax noprefix
|
||||
|
||||
|
||||
.proc fmodf
|
||||
UNIMPLEMENTED fmodf
|
||||
ret
|
||||
|
||||
.endproc
|
21
reactos/lib/sdk/crt/math/amd64/ldexp.S
Normal file
21
reactos/lib/sdk/crt/math/amd64/ldexp.S
Normal file
|
@ -0,0 +1,21 @@
|
|||
/*
|
||||
* COPYRIGHT: See COPYING in the top level directory
|
||||
* PROJECT: ReactOS system libraries
|
||||
* PURPOSE: Implementation of ldexp
|
||||
* FILE: lib/sdk/crt/math/amd64/ldexp.S
|
||||
* PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org)
|
||||
*/
|
||||
|
||||
/* INCLUDES ******************************************************************/
|
||||
|
||||
#include <ndk/amd64/asm.h>
|
||||
#include <ndk/amd64/asmmacro.S>
|
||||
|
||||
.intel_syntax noprefix
|
||||
|
||||
|
||||
.proc ldexp
|
||||
UNIMPLEMENTED ldexp
|
||||
ret
|
||||
|
||||
.endproc
|
21
reactos/lib/sdk/crt/math/amd64/log.S
Normal file
21
reactos/lib/sdk/crt/math/amd64/log.S
Normal file
|
@ -0,0 +1,21 @@
|
|||
/*
|
||||
* COPYRIGHT: See COPYING in the top level directory
|
||||
* PROJECT: ReactOS system libraries
|
||||
* PURPOSE: Implementation of log
|
||||
* FILE: lib/sdk/crt/math/amd64/log.S
|
||||
* PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org)
|
||||
*/
|
||||
|
||||
/* INCLUDES ******************************************************************/
|
||||
|
||||
#include <ndk/amd64/asm.h>
|
||||
#include <ndk/amd64/asmmacro.S>
|
||||
|
||||
.intel_syntax noprefix
|
||||
|
||||
|
||||
.proc log
|
||||
UNIMPLEMENTED log
|
||||
ret
|
||||
|
||||
.endproc
|
21
reactos/lib/sdk/crt/math/amd64/log10.S
Normal file
21
reactos/lib/sdk/crt/math/amd64/log10.S
Normal file
|
@ -0,0 +1,21 @@
|
|||
/*
|
||||
* COPYRIGHT: See COPYING in the top level directory
|
||||
* PROJECT: ReactOS system libraries
|
||||
* PURPOSE: Implementation of log10
|
||||
* FILE: lib/sdk/crt/math/amd64/log10.S
|
||||
* PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org)
|
||||
*/
|
||||
|
||||
/* INCLUDES ******************************************************************/
|
||||
|
||||
#include <ndk/amd64/asm.h>
|
||||
#include <ndk/amd64/asmmacro.S>
|
||||
|
||||
.intel_syntax noprefix
|
||||
|
||||
|
||||
.proc log10
|
||||
UNIMPLEMENTED log10
|
||||
ret
|
||||
|
||||
.endproc
|
21
reactos/lib/sdk/crt/math/amd64/sin.S
Normal file
21
reactos/lib/sdk/crt/math/amd64/sin.S
Normal file
|
@ -0,0 +1,21 @@
|
|||
/*
|
||||
* COPYRIGHT: See COPYING in the top level directory
|
||||
* PROJECT: ReactOS system libraries
|
||||
* PURPOSE: Implementation of sin
|
||||
* FILE: lib/sdk/crt/math/amd64/sin.S
|
||||
* PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org)
|
||||
*/
|
||||
|
||||
/* INCLUDES ******************************************************************/
|
||||
|
||||
#include <ndk/amd64/asm.h>
|
||||
#include <ndk/amd64/asmmacro.S>
|
||||
|
||||
.intel_syntax noprefix
|
||||
|
||||
|
||||
.proc sin
|
||||
UNIMPLEMENTED sin
|
||||
ret
|
||||
|
||||
.endproc
|
21
reactos/lib/sdk/crt/math/amd64/sqrt.S
Normal file
21
reactos/lib/sdk/crt/math/amd64/sqrt.S
Normal file
|
@ -0,0 +1,21 @@
|
|||
/*
|
||||
* COPYRIGHT: See COPYING in the top level directory
|
||||
* PROJECT: ReactOS system libraries
|
||||
* PURPOSE: Implementation of sqrt
|
||||
* FILE: lib/sdk/crt/math/amd64/sqrt.S
|
||||
* PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org)
|
||||
*/
|
||||
|
||||
/* INCLUDES ******************************************************************/
|
||||
|
||||
#include <ndk/amd64/asm.h>
|
||||
#include <ndk/amd64/asmmacro.S>
|
||||
|
||||
.intel_syntax noprefix
|
||||
|
||||
|
||||
.proc sqrt
|
||||
UNIMPLEMENTED sqrt
|
||||
ret
|
||||
|
||||
.endproc
|
20
reactos/lib/sdk/crt/math/amd64/sqrtf.S
Normal file
20
reactos/lib/sdk/crt/math/amd64/sqrtf.S
Normal file
|
@ -0,0 +1,20 @@
|
|||
/*
|
||||
* COPYRIGHT: See COPYING in the top level directory
|
||||
* PROJECT: ReactOS system libraries
|
||||
* PURPOSE: Implementation of tan
|
||||
* FILE: lib/sdk/crt/math/amd64/sqrtf.S
|
||||
* PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org)
|
||||
*/
|
||||
|
||||
/* INCLUDES ******************************************************************/
|
||||
|
||||
#include <ndk/amd64/asm.h>
|
||||
#include <ndk/amd64/asmmacro.S>
|
||||
|
||||
.intel_syntax noprefix
|
||||
|
||||
|
||||
.proc sqrtf
|
||||
sqrtss xmm0, xmm0
|
||||
ret
|
||||
.endproc
|
21
reactos/lib/sdk/crt/math/amd64/tan.S
Normal file
21
reactos/lib/sdk/crt/math/amd64/tan.S
Normal file
|
@ -0,0 +1,21 @@
|
|||
/*
|
||||
* COPYRIGHT: See COPYING in the top level directory
|
||||
* PROJECT: ReactOS system libraries
|
||||
* PURPOSE: Implementation of tan
|
||||
* FILE: lib/sdk/crt/math/amd64/tan.S
|
||||
* PROGRAMMER: Timo Kreuzer (timo.kreuzer@reactos.org)
|
||||
*/
|
||||
|
||||
/* INCLUDES ******************************************************************/
|
||||
|
||||
#include <ndk/amd64/asm.h>
|
||||
#include <ndk/amd64/asmmacro.S>
|
||||
|
||||
.intel_syntax noprefix
|
||||
|
||||
|
||||
.proc tan
|
||||
UNIMPLEMENTED tan
|
||||
ret
|
||||
|
||||
.endproc
|
|
@ -1,27 +0,0 @@
|
|||
/**
|
||||
* This file has no copyright assigned and is placed in the Public Domain.
|
||||
* This file is part of the w64 mingw-runtime package.
|
||||
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
|
||||
*/
|
||||
/*
|
||||
* Written by J.T. Conklin <jtc@netbsd.org>.
|
||||
* Public domain.
|
||||
*/
|
||||
|
||||
/* asin = atan (x / sqrt(1 - x^2)) */
|
||||
|
||||
float asinf (float x);
|
||||
|
||||
float asinf (float x)
|
||||
{
|
||||
float res = 0.0F;
|
||||
|
||||
asm ( "fld %%st\n\t"
|
||||
"fmul %%st(0)\n\t" /* x^2 */
|
||||
"fld1\n\t"
|
||||
"fsubp\n\t" /* 1 - x^2 */
|
||||
"fsqrt\n\t" /* sqrt (1 - x^2) */
|
||||
"fpatan"
|
||||
: "=t" (res) : "0" (x) : "st(1)");
|
||||
return res;
|
||||
}
|
|
@ -1,18 +0,0 @@
|
|||
/**
|
||||
* This file has no copyright assigned and is placed in the Public Domain.
|
||||
* This file is part of the w64 mingw-runtime package.
|
||||
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
|
||||
*/
|
||||
#include <math.h>
|
||||
|
||||
double
|
||||
atan (double x)
|
||||
{
|
||||
double res = 0.0L;
|
||||
#if defined(__GNUC__)
|
||||
asm ("fld1\n\t"
|
||||
"fpatan"
|
||||
: "=t" (res) : "0" (x));
|
||||
#endif
|
||||
return res;
|
||||
}
|
|
@ -1,16 +0,0 @@
|
|||
/**
|
||||
* This file has no copyright assigned and is placed in the Public Domain.
|
||||
* This file is part of the w64 mingw-runtime package.
|
||||
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
|
||||
*/
|
||||
#include <math.h>
|
||||
|
||||
double
|
||||
atan2 (double y, double x)
|
||||
{
|
||||
long double res = 0.0L;
|
||||
#ifdef __GNUC__
|
||||
asm ("fpatan" : "=t" (res) : "u" (y), "0" (x) : "st(1)");
|
||||
#endif
|
||||
return res;
|
||||
}
|
|
@ -1,22 +0,0 @@
|
|||
/**
|
||||
* This file has no copyright assigned and is placed in the Public Domain.
|
||||
* This file is part of the w64 mingw-runtime package.
|
||||
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
|
||||
*/
|
||||
/*
|
||||
* Written by J.T. Conklin <jtc@netbsd.org>.
|
||||
* Public domain.
|
||||
*
|
||||
*/
|
||||
|
||||
#include <math.h>
|
||||
|
||||
float
|
||||
atan2f (float y, float x)
|
||||
{
|
||||
float res = 0.0F;
|
||||
#ifdef __GNUC__
|
||||
asm ("fpatan" : "=t" (res) : "u" (y), "0" (x) : "st(1)");
|
||||
#endif
|
||||
return res;
|
||||
}
|
|
@ -1,23 +0,0 @@
|
|||
/**
|
||||
* This file has no copyright assigned and is placed in the Public Domain.
|
||||
* This file is part of the w64 mingw-runtime package.
|
||||
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
|
||||
*/
|
||||
/*
|
||||
* Written by J.T. Conklin <jtc@netbsd.org>.
|
||||
* Public domain.
|
||||
*
|
||||
*/
|
||||
|
||||
#include <math.h>
|
||||
|
||||
float
|
||||
atanf (float x)
|
||||
{
|
||||
float res = 0.0F;
|
||||
#ifdef __GNUC__
|
||||
asm ("fld1\n\t"
|
||||
"fpatan" : "=t" (res) : "0" (x));
|
||||
#endif
|
||||
return res;
|
||||
}
|
|
@ -1,21 +0,0 @@
|
|||
/**
|
||||
* This file has no copyright assigned and is placed in the Public Domain.
|
||||
* This file is part of the w64 mingw-runtime package.
|
||||
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
|
||||
*/
|
||||
#include <math.h>
|
||||
|
||||
typedef union U
|
||||
{
|
||||
unsigned int u[2];
|
||||
double d;
|
||||
} U;
|
||||
|
||||
double copysign(double x, double y)
|
||||
{
|
||||
U h,j;
|
||||
h.d = x;
|
||||
j.d = y;
|
||||
h.u[1] = (h.u[1] & 0x7fffffff) | (j.u[1] & 0x80000000);
|
||||
return h.d;
|
||||
}
|
|
@ -1,19 +0,0 @@
|
|||
/**
|
||||
* This file has no copyright assigned and is placed in the Public Domain.
|
||||
* This file is part of the w64 mingw-runtime package.
|
||||
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
|
||||
*/
|
||||
#include <math.h>
|
||||
|
||||
typedef union ui_f {
|
||||
float f;
|
||||
unsigned int ui;
|
||||
} ui_f;
|
||||
|
||||
float copysignf(float aX, float aY)
|
||||
{
|
||||
ui_f x,y;
|
||||
x.f=aX; y.f=aY;
|
||||
x.ui= (x.ui & 0x7fffffff) | (y.ui & 0x80000000);
|
||||
return x.f;
|
||||
}
|
|
@ -1,11 +0,0 @@
|
|||
/**
|
||||
* This file has no copyright assigned and is placed in the Public Domain.
|
||||
* This file is part of the w64 mingw-runtime package.
|
||||
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
|
||||
*/
|
||||
#include <math.h>
|
||||
|
||||
float cosf(float _X)
|
||||
{
|
||||
return ((float)cos((double)_X));
|
||||
}
|
|
@ -1,55 +0,0 @@
|
|||
/**
|
||||
* This file has no copyright assigned and is placed in the Public Domain.
|
||||
* This file is part of the w64 mingw-runtime package.
|
||||
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
|
||||
*/
|
||||
#include <math.h>
|
||||
#define MAXLOG 7.09782712893383996843E2
|
||||
#define MINLOG -7.08396418532264106224E2
|
||||
|
||||
static double c0 = 1.44268798828125L;
|
||||
static double c1 = 7.05260771340735992468e-6L;
|
||||
|
||||
static double
|
||||
__exp(double x)
|
||||
{
|
||||
double res = 0.0L;
|
||||
#ifdef __GNUC__
|
||||
asm ("fldl2e\n\t" /* 1 log2(e) */
|
||||
"fmul %%st(1),%%st\n\t" /* 1 x log2(e) */
|
||||
"frndint\n\t" /* 1 i */
|
||||
"fld %%st(1)\n\t" /* 2 x */
|
||||
"frndint\n\t" /* 2 xi */
|
||||
"fld %%st(1)\n\t" /* 3 i */
|
||||
"fldt %2\n\t" /* 4 c0 */
|
||||
"fld %%st(2)\n\t" /* 5 xi */
|
||||
"fmul %%st(1),%%st\n\t" /* 5 c0 xi */
|
||||
"fsubp %%st,%%st(2)\n\t" /* 4 f = c0 xi - i */
|
||||
"fld %%st(4)\n\t" /* 5 x */
|
||||
"fsub %%st(3),%%st\n\t" /* 5 xf = x - xi */
|
||||
"fmulp %%st,%%st(1)\n\t" /* 4 c0 xf */
|
||||
"faddp %%st,%%st(1)\n\t" /* 3 f = f + c0 xf */
|
||||
"fldt %3\n\t" /* 4 */
|
||||
"fmul %%st(4),%%st\n\t" /* 4 c1 * x */
|
||||
"faddp %%st,%%st(1)\n\t" /* 3 f = f + c1 * x */
|
||||
"f2xm1\n\t" /* 3 2^(fract(x * log2(e))) - 1 */
|
||||
"fld1\n\t" /* 4 1.0 */
|
||||
"faddp\n\t" /* 3 2^(fract(x * log2(e))) */
|
||||
"fstp %%st(1)\n\t" /* 2 */
|
||||
"fscale\n\t" /* 2 scale factor is st(1); e^x */
|
||||
"fstp %%st(1)\n\t" /* 1 */
|
||||
"fstp %%st(1)\n\t" /* 0 */
|
||||
: "=t" (res) : "0" (x), "m" (c0), "m" (c1) : "ax", "dx");
|
||||
#endif
|
||||
return res;
|
||||
}
|
||||
|
||||
double exp (double x)
|
||||
{
|
||||
if (x > MAXLOG)
|
||||
return INFINITY;
|
||||
else if (x < MINLOG)
|
||||
return 0.0L;
|
||||
else
|
||||
return __exp (x);
|
||||
}
|
|
@ -1,10 +0,0 @@
|
|||
/**
|
||||
* This file has no copyright assigned and is placed in the Public Domain.
|
||||
* This file is part of the w64 mingw-runtime package.
|
||||
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
|
||||
*/
|
||||
#include <math.h>
|
||||
float expf (float x)
|
||||
{
|
||||
return (float) exp (x);
|
||||
}
|
|
@ -1,16 +0,0 @@
|
|||
/**
|
||||
* This file has no copyright assigned and is placed in the Public Domain.
|
||||
* This file is part of the w64 mingw-runtime package.
|
||||
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
|
||||
*/
|
||||
#include <math.h>
|
||||
|
||||
double
|
||||
fabs (double x)
|
||||
{
|
||||
double res = 0.0;
|
||||
#ifdef __GNUC__
|
||||
asm ("fabs;" : "=t" (res) : "0" (x));
|
||||
#endif
|
||||
return res;
|
||||
}
|
|
@ -1,21 +0,0 @@
|
|||
/**
|
||||
* This file has no copyright assigned and is placed in the Public Domain.
|
||||
* This file is part of the w64 mingw-runtime package.
|
||||
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
|
||||
*/
|
||||
#include <math.h>
|
||||
|
||||
double
|
||||
fmod (double x, double y)
|
||||
{
|
||||
double res = 0.0L;
|
||||
#ifdef __GNUC__
|
||||
asm ("1:\tfprem\n\t"
|
||||
"fstsw %%ax\n\t"
|
||||
"sahf\n\t"
|
||||
"jp 1b\n\t"
|
||||
"fstp %%st(1)"
|
||||
: "=t" (res) : "0" (x), "u" (y) : "ax", "st(1)");
|
||||
#endif
|
||||
return res;
|
||||
}
|
|
@ -1,29 +0,0 @@
|
|||
/**
|
||||
* This file has no copyright assigned and is placed in the Public Domain.
|
||||
* This file is part of the w64 mingw-runtime package.
|
||||
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
|
||||
*/
|
||||
/*
|
||||
* Written by J.T. Conklin <jtc@netbsd.org>.
|
||||
* Public domain.
|
||||
*
|
||||
* Adapted for float type by Danny Smith
|
||||
* <dannysmith@users.sourceforge.net>.
|
||||
*/
|
||||
|
||||
#include <math.h>
|
||||
|
||||
float
|
||||
fmodf (float x, float y)
|
||||
{
|
||||
float res = 0.0F;
|
||||
#ifdef __GNUC__
|
||||
asm ("1:\tfprem\n\t"
|
||||
"fstsw %%ax\n\t"
|
||||
"sahf\n\t"
|
||||
"jp 1b\n\t"
|
||||
"fstp %%st(1)"
|
||||
: "=t" (res) : "0" (x), "u" (y) : "ax", "st(1)");
|
||||
#endif
|
||||
return res;
|
||||
}
|
|
@ -1,12 +0,0 @@
|
|||
/**
|
||||
* This file has no copyright assigned and is placed in the Public Domain.
|
||||
* This file is part of the w64 mingw-runtime package.
|
||||
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
|
||||
*/
|
||||
#include <math.h>
|
||||
|
||||
float hypotf (float x, float y)
|
||||
{
|
||||
return (float) _hypot (x, y);
|
||||
}
|
||||
|
50
reactos/lib/sdk/crt/math/i386/atan_asm.s
Normal file
50
reactos/lib/sdk/crt/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
|
|
@ -1,54 +0,0 @@
|
|||
/**
|
||||
* This file has no copyright assigned and is placed in the Public Domain.
|
||||
* This file is part of the w64 mingw-runtime package.
|
||||
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
|
||||
*/
|
||||
|
||||
.file "ceil.S"
|
||||
.text
|
||||
#ifdef _WIN64
|
||||
.align 8
|
||||
#else
|
||||
.align 4
|
||||
#endif
|
||||
.globl _ceil
|
||||
.def _ceil; .scl 2; .type 32; .endef
|
||||
_ceil:
|
||||
#ifdef _WIN64
|
||||
fldt (%rdx)
|
||||
subq $24,%rsp
|
||||
|
||||
fstcw 8(%rsp) /* store fpu control word */
|
||||
|
||||
/* We use here %edx although only the low 1 bits are defined.
|
||||
But none of the operations should care and they are faster
|
||||
than the 16 bit operations. */
|
||||
movl $0x0800,%edx /* round towards +oo */
|
||||
orl 8(%rsp),%edx
|
||||
andl $0xfbff,%edx
|
||||
movl %edx,(%rsp)
|
||||
fldcw (%rsp) /* load modified control word */
|
||||
|
||||
frndint /* round */
|
||||
|
||||
fldcw 8(%rsp) /* restore original control word */
|
||||
|
||||
addq $24,%rsp
|
||||
movq %rcx,%rax
|
||||
movq $0,8(%rcx)
|
||||
fstpt (%rcx)
|
||||
ret
|
||||
#else
|
||||
fldt 4(%esp)
|
||||
subl $8,%esp
|
||||
fstcw 4(%esp)
|
||||
movl $0x0800,%edx
|
||||
orl 4(%esp),%edx
|
||||
andl $0xfbff,%edx
|
||||
movl %edx,(%esp)
|
||||
fldcw (%esp)
|
||||
frndint
|
||||
fldcw 4(%esp)
|
||||
addl $8,%esp
|
||||
ret
|
||||
#endif
|
57
reactos/lib/sdk/crt/math/i386/ceil_asm.s
Normal file
57
reactos/lib/sdk/crt/math/i386/ceil_asm.s
Normal file
|
@ -0,0 +1,57 @@
|
|||
/*
|
||||
* COPYRIGHT: See COPYING in the top level directory
|
||||
* PROJECT: ReactOS kernel
|
||||
* PURPOSE: Run-Time Library
|
||||
* FILE: lib/rtl/i386/ceil.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 _ceil
|
||||
|
||||
.intel_syntax noprefix
|
||||
|
||||
/* FUNCTIONS ***************************************************************/
|
||||
|
||||
_ceil:
|
||||
push ebp
|
||||
mov ebp,esp
|
||||
sub esp,4 // Allocate temporary space
|
||||
fld qword ptr [ebp+8] // Load real from stack
|
||||
fstcw [ebp-2] // Save control word
|
||||
fclex // Clear exceptions
|
||||
mov word ptr [ebp-4],0xb63 // Rounding control word
|
||||
fldcw [ebp-4] // Set new rounding control
|
||||
frndint // Round to integer
|
||||
fclex // Clear exceptions
|
||||
fldcw [ebp-2] // Restore control word
|
||||
mov esp,ebp // Deallocate temporary space
|
||||
pop ebp
|
||||
ret
|
|
@ -1,54 +0,0 @@
|
|||
/**
|
||||
* This file has no copyright assigned and is placed in the Public Domain.
|
||||
* This file is part of the w64 mingw-runtime package.
|
||||
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
|
||||
*/
|
||||
|
||||
.file "ceilf.S"
|
||||
.text
|
||||
.align 4
|
||||
.globl _ceilf
|
||||
.def _ceilf; .scl 2; .type 32; .endef
|
||||
_ceilf:
|
||||
#ifdef _WIN64
|
||||
subq $24,%rsp
|
||||
movss %xmm0,8(%rsp)
|
||||
flds 8(%rsp)
|
||||
|
||||
fstcw 4(%rsp) /* store fpu control word */
|
||||
|
||||
movl $0x0800,%edx /* round towards +oo */
|
||||
orl 4(%rsp),%edx
|
||||
andl $0xfbff,%edx
|
||||
movl %edx,(%rsp)
|
||||
fldcw (%rsp) /* load modified control word */
|
||||
|
||||
frndint /* round */
|
||||
|
||||
fldcw 4(%rsp) /* restore original control word */
|
||||
fstps 8(%rsp)
|
||||
movss 8(%rsp),%xmm0
|
||||
addq $24,%rsp
|
||||
ret
|
||||
#else
|
||||
flds 4(%esp)
|
||||
subl $8,%esp
|
||||
|
||||
fstcw 4(%esp) /* store fpu control word */
|
||||
|
||||
/* We use here %edx although only the low 1 bits are defined.
|
||||
But none of the operations should care and they are faster
|
||||
than the 16 bit operations. */
|
||||
movl $0x0800,%edx /* round towards +oo */
|
||||
orl 4(%esp),%edx
|
||||
andl $0xfbff,%edx
|
||||
movl %edx,(%esp)
|
||||
fldcw (%esp) /* load modified control word */
|
||||
|
||||
frndint /* round */
|
||||
|
||||
fldcw 4(%esp) /* restore original control word */
|
||||
|
||||
addl $8,%esp
|
||||
ret
|
||||
#endif
|
|
@ -1,53 +0,0 @@
|
|||
/**
|
||||
* This file has no copyright assigned and is placed in the Public Domain.
|
||||
* This file is part of the w64 mingw-runtime package.
|
||||
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
|
||||
*/
|
||||
.file "cos.S"
|
||||
.text
|
||||
#ifdef _WIN64
|
||||
.align 8
|
||||
#else
|
||||
.align 4
|
||||
#endif
|
||||
.globl _cos
|
||||
.def _cos; .scl 2; .type 32; .endef
|
||||
_cos:
|
||||
#ifdef _WIN64
|
||||
fldt (%rdx)
|
||||
fcos
|
||||
fnstsw %ax
|
||||
testl $0x400,%eax
|
||||
jz 1f
|
||||
fldpi
|
||||
fadd %st(0)
|
||||
fxch %st(1)
|
||||
2: fprem1
|
||||
fnstsw %ax
|
||||
testl $0x400,%eax
|
||||
jnz 2b
|
||||
fstp %st(1)
|
||||
fcos
|
||||
1: movq %rcx,%rax
|
||||
movq $0,8(%rcx)
|
||||
fstpt (%rcx)
|
||||
ret
|
||||
#else
|
||||
fldt 4(%esp)
|
||||
fcos
|
||||
fnstsw %ax
|
||||
testl $0x400,%eax
|
||||
jnz 1f
|
||||
ret
|
||||
1: fldpi
|
||||
fadd %st(0)
|
||||
fxch %st(1)
|
||||
2: fprem1
|
||||
fnstsw %ax
|
||||
testl $0x400,%eax
|
||||
jnz 2b
|
||||
fstp %st(1)
|
||||
fcos
|
||||
ret
|
||||
#endif
|
||||
|
49
reactos/lib/sdk/crt/math/i386/cos_asm.s
Normal file
49
reactos/lib/sdk/crt/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/crt/math/i386/fabs_asm.s
Normal file
49
reactos/lib/sdk/crt/math/i386/fabs_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/fabs.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 _fabs
|
||||
|
||||
.intel_syntax noprefix
|
||||
|
||||
/* FUNCTIONS ***************************************************************/
|
||||
|
||||
_fabs:
|
||||
push ebp
|
||||
mov ebp,esp
|
||||
fld qword ptr [ebp+8] // Load real from stack
|
||||
fabs // Take the absolute value
|
||||
pop ebp
|
||||
ret
|
|
@ -1,62 +0,0 @@
|
|||
/**
|
||||
* This file has no copyright assigned and is placed in the Public Domain.
|
||||
* This file is part of the w64 mingw-runtime package.
|
||||
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
|
||||
*/
|
||||
|
||||
.file "floor.S"
|
||||
.text
|
||||
#ifdef _WIN64
|
||||
.align 8
|
||||
#else
|
||||
.align 4
|
||||
#endif
|
||||
.globl _floor
|
||||
.def _floor; .scl 2; .type 32; .endef
|
||||
_floor:
|
||||
#ifdef _WIN64
|
||||
fldt (%rdx)
|
||||
subq $24,%rsp
|
||||
|
||||
fstcw 8(%rsp) /* store fpu control word */
|
||||
|
||||
/* We use here %edx although only the low 1 bits are defined.
|
||||
But none of the operations should care and they are faster
|
||||
than the 16 bit operations. */
|
||||
movl $0x400,%edx /* round towards -oo */
|
||||
orl 8(%rsp),%edx
|
||||
andl $0xf7ff,%edx
|
||||
movl %edx,(%rsp)
|
||||
fldcw (%rsp) /* load modified control word */
|
||||
|
||||
frndint /* round */
|
||||
|
||||
fldcw 8(%rsp) /* restore original control word */
|
||||
|
||||
addq $24,%rsp
|
||||
movq %rcx,%rax
|
||||
movq $0,8(%rcx)
|
||||
fstpt (%rcx)
|
||||
ret
|
||||
#else
|
||||
fldt 4(%esp)
|
||||
subl $8,%esp
|
||||
|
||||
fstcw 4(%esp) /* store fpu control word */
|
||||
|
||||
/* We use here %edx although only the low 1 bits are defined.
|
||||
But none of the operations should care and they are faster
|
||||
than the 16 bit operations. */
|
||||
movl $0x400,%edx /* round towards -oo */
|
||||
orl 4(%esp),%edx
|
||||
andl $0xf7ff,%edx
|
||||
movl %edx,(%esp)
|
||||
fldcw (%esp) /* load modified control word */
|
||||
|
||||
frndint /* round */
|
||||
|
||||
fldcw 4(%esp) /* restore original control word */
|
||||
|
||||
addl $8,%esp
|
||||
ret
|
||||
#endif
|
|
@ -1,61 +0,0 @@
|
|||
/*
|
||||
* Written by J.T. Conklin <jtc@netbsd.org>.
|
||||
* Public domain.
|
||||
*
|
||||
* Changes for long double by Ulrich Drepper <drepper@cygnus.com>
|
||||
*
|
||||
* Removed header file dependency for use in libmingwex.a by
|
||||
* Danny Smith <dannysmith@users.sourceforge.net>
|
||||
*/
|
||||
.file "floorf.S"
|
||||
.text
|
||||
#ifdef _WIN64
|
||||
.align 8
|
||||
#else
|
||||
.align 4
|
||||
#endif
|
||||
.globl _floorf
|
||||
.def _floorf; .scl 2; .type 32; .endef
|
||||
_floorf:
|
||||
#ifdef _WIN64
|
||||
subq $24,%rsp
|
||||
movss %xmm0,8(%rsp)
|
||||
flds 8(%rsp)
|
||||
|
||||
fstcw 4(%rsp) /* store fpu control word */
|
||||
movl $0x400,%edx /* round towards -oo */
|
||||
orl 4(%rsp),%edx
|
||||
andl $0xf7ff,%edx
|
||||
movl %edx,(%rsp)
|
||||
fldcw (%rsp) /* load modified control word */
|
||||
|
||||
frndint /* round */
|
||||
|
||||
fldcw 4(%rsp) /* restore original control word */
|
||||
|
||||
fstps 8(%rsp)
|
||||
movss 8(%rsp),%xmm0
|
||||
addq $24,%rsp
|
||||
ret
|
||||
#else
|
||||
flds 4(%esp)
|
||||
subl $8,%esp
|
||||
|
||||
fstcw 4(%esp) /* store fpu control word */
|
||||
|
||||
/* We use here %edx although only the low 1 bits are defined.
|
||||
But none of the operations should care and they are faster
|
||||
than the 16 bit operations. */
|
||||
movl $0x400,%edx /* round towards -oo */
|
||||
orl 4(%esp),%edx
|
||||
andl $0xf7ff,%edx
|
||||
movl %edx,(%esp)
|
||||
fldcw (%esp) /* load modified control word */
|
||||
|
||||
frndint /* round */
|
||||
|
||||
fldcw 4(%esp) /* restore original control word */
|
||||
|
||||
addl $8,%esp
|
||||
ret
|
||||
#endif
|
|
@ -1,65 +0,0 @@
|
|||
/**
|
||||
* This file has no copyright assigned and is placed in the Public Domain.
|
||||
* This file is part of the w64 mingw-runtime package.
|
||||
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
|
||||
*/
|
||||
|
||||
.file "log.S"
|
||||
.text
|
||||
#ifdef _WIN64
|
||||
.align 8
|
||||
#else
|
||||
.align 4
|
||||
#endif
|
||||
one: .double 1.0
|
||||
/* It is not important that this constant is precise. It is only
|
||||
a value which is known to be on the safe side for using the
|
||||
fyl2xp1 instruction. */
|
||||
limit: .double 0.29
|
||||
|
||||
.globl _log
|
||||
.def _log; .scl 2; .type 32; .endef
|
||||
_log:
|
||||
#ifdef _WIN64
|
||||
fldln2 // log(2)
|
||||
fldt (%rdx) // x : log(2)
|
||||
fld %st // x : x : log(2)
|
||||
fsubl one // x-1 : x : log(2)
|
||||
fld %st // x-1 : x-1 : x : log(2)
|
||||
fabs // |x-1| : x-1 : x : log(2)
|
||||
fcompl limit // x-1 : x : log(2)
|
||||
fnstsw // x-1 : x : log(2)
|
||||
andb $0x45, %ah
|
||||
jz 2f
|
||||
fstp %st(1) // x-1 : log(2)
|
||||
fyl2xp1 // log(x)
|
||||
movq %rcx,%rax
|
||||
movq $0,8(%rcx)
|
||||
fstpt (%rcx)
|
||||
ret
|
||||
|
||||
2: fstp %st(0) // x : log(2)
|
||||
fyl2x // log(x)
|
||||
movq %rcx,%rax
|
||||
movq $0,8(%rcx)
|
||||
fstpt (%rcx)
|
||||
ret
|
||||
#else
|
||||
fldln2 // log(2)
|
||||
fldt 4(%esp) // x : log(2)
|
||||
fld %st // x : x : log(2)
|
||||
fsubl one // x-1 : x : log(2)
|
||||
fld %st // x-1 : x-1 : x : log(2)
|
||||
fabs // |x-1| : x-1 : x : log(2)
|
||||
fcompl limit // x-1 : x : log(2)
|
||||
fnstsw // x-1 : x : log(2)
|
||||
andb $0x45, %ah
|
||||
jz 2f
|
||||
fstp %st(1) // x-1 : log(2)
|
||||
fyl2xp1 // log(x)
|
||||
ret
|
||||
|
||||
2: fstp %st(0) // x : log(2)
|
||||
fyl2x // log(x)
|
||||
ret
|
||||
#endif
|
|
@ -1,92 +0,0 @@
|
|||
/**
|
||||
* This file has no copyright assigned and is placed in the Public Domain.
|
||||
* This file is part of the w64 mingw-runtime package.
|
||||
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
|
||||
*/
|
||||
|
||||
.file "log10.S"
|
||||
.text
|
||||
#ifdef _WIN64
|
||||
.align 8
|
||||
#else
|
||||
.align 4
|
||||
#endif
|
||||
one: .double 1.0
|
||||
/* It is not important that this constant is precise. It is only
|
||||
a value which is known to be on the safe side for using the
|
||||
fyl2xp1 instruction. */
|
||||
limit: .double 0.29
|
||||
|
||||
.text
|
||||
#ifdef _WIN64
|
||||
.align 8
|
||||
#else
|
||||
.align 4
|
||||
#endif
|
||||
.globl _log10
|
||||
.def _log10; .scl 2; .type 32; .endef
|
||||
_log10:
|
||||
#ifdef _WIN64
|
||||
fldlg2 // log10(2)
|
||||
fldt (%rdx) // x : log10(2)
|
||||
fxam
|
||||
fnstsw
|
||||
fld %st // x : x : log10(2)
|
||||
sahf
|
||||
jc 3f // in case x is NaN or ±Inf
|
||||
4: fsubl one // x-1 : x : log10(2)
|
||||
fld %st // x-1 : x-1 : x : log10(2)
|
||||
fabs // |x-1| : x-1 : x : log10(2)
|
||||
fcompl limit // x-1 : x : log10(2)
|
||||
fnstsw // x-1 : x : log10(2)
|
||||
andb $0x45, %ah
|
||||
jz 2f
|
||||
fstp %st(1) // x-1 : log10(2)
|
||||
fyl2xp1 // log10(x)
|
||||
movq %rcx,%rax
|
||||
movq $0,8(%rcx)
|
||||
fstpt (%rcx)
|
||||
ret
|
||||
|
||||
2: fstp %st(0) // x : log10(2)
|
||||
fyl2x // log10(x)
|
||||
movq %rcx,%rax
|
||||
movq $0,8(%rcx)
|
||||
fstpt (%rcx)
|
||||
ret
|
||||
|
||||
3: jp 4b // in case x is ±Inf
|
||||
fstp %st(1)
|
||||
fstp %st(1)
|
||||
movq %rcx,%rax
|
||||
movq $0,8(%rcx)
|
||||
fstpt (%rcx)
|
||||
ret
|
||||
#else
|
||||
fldlg2 // log10(2)
|
||||
fldt 4(%esp) // x : log10(2)
|
||||
fxam
|
||||
fnstsw
|
||||
fld %st // x : x : log10(2)
|
||||
sahf
|
||||
jc 3f // in case x is NaN or ±Inf
|
||||
4: fsubl one // x-1 : x : log10(2)
|
||||
fld %st // x-1 : x-1 : x : log10(2)
|
||||
fabs // |x-1| : x-1 : x : log10(2)
|
||||
fcompl limit // x-1 : x : log10(2)
|
||||
fnstsw // x-1 : x : log10(2)
|
||||
andb $0x45, %ah
|
||||
jz 2f
|
||||
fstp %st(1) // x-1 : log10(2)
|
||||
fyl2xp1 // log10(x)
|
||||
ret
|
||||
|
||||
2: fstp %st(0) // x : log10(2)
|
||||
fyl2x // log10(x)
|
||||
ret
|
||||
|
||||
3: jp 4b // in case x is ±Inf
|
||||
fstp %st(1)
|
||||
fstp %st(1)
|
||||
ret
|
||||
#endif
|
27
reactos/lib/sdk/crt/math/i386/log10_asm.s
Normal file
27
reactos/lib/sdk/crt/math/i386/log10_asm.s
Normal file
|
@ -0,0 +1,27 @@
|
|||
|
||||
/*
|
||||
* COPYRIGHT: See COPYING in the top level directory
|
||||
* PROJECT: ReactOS kernel
|
||||
* PURPOSE:
|
||||
* FILE:
|
||||
* PROGRAMER: Magnus Olsen (magnus@greatlord.com)
|
||||
*
|
||||
*/
|
||||
|
||||
.globl _log10
|
||||
|
||||
.intel_syntax noprefix
|
||||
|
||||
/* FUNCTIONS ***************************************************************/
|
||||
|
||||
_log10:
|
||||
|
||||
push ebp
|
||||
mov ebp,esp
|
||||
fld qword ptr [ebp+8] // Load real from stack
|
||||
fldlg2 // Load log base 10 of 2
|
||||
fxch st(1) // Exchange st, st(1)
|
||||
fyl2x // Compute the log base 10(x)
|
||||
pop ebp
|
||||
ret
|
||||
|
51
reactos/lib/sdk/crt/math/i386/log_asm.s
Normal file
51
reactos/lib/sdk/crt/math/i386/log_asm.s
Normal file
|
@ -0,0 +1,51 @@
|
|||
/*
|
||||
* COPYRIGHT: See COPYING in the top level directory
|
||||
* PROJECT: ReactOS kernel
|
||||
* PURPOSE: Run-Time Library
|
||||
* FILE: lib/rtl/i386/log.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 _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
|
||||
ret
|
|
@ -1,57 +0,0 @@
|
|||
/**
|
||||
* This file has no copyright assigned and is placed in the Public Domain.
|
||||
* This file is part of the w64 mingw-runtime package.
|
||||
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
|
||||
*/
|
||||
|
||||
.file "sin.S"
|
||||
.text
|
||||
#ifdef _WIN64
|
||||
.align 8
|
||||
#else
|
||||
.align 4
|
||||
#endif
|
||||
.globl _sin
|
||||
.def _sin; .scl 2; .type 32; .endef
|
||||
_sin:
|
||||
#ifdef _WIN64
|
||||
fldt (%rdx)
|
||||
fsin
|
||||
fnstsw %ax
|
||||
testl $0x400,%eax
|
||||
jnz 1f
|
||||
movq %rcx,%rax
|
||||
movq $0,8(%rcx)
|
||||
fstpt (%rcx)
|
||||
ret
|
||||
1: fldpi
|
||||
fadd %st(0)
|
||||
fxch %st(1)
|
||||
2: fprem1
|
||||
fnstsw %ax
|
||||
testl $0x400,%eax
|
||||
jnz 2b
|
||||
fstp %st(1)
|
||||
fsin
|
||||
movq %rcx,%rax
|
||||
movq $0,8(%rcx)
|
||||
fstpt (%rcx)
|
||||
ret
|
||||
#else
|
||||
fldt 4(%esp)
|
||||
fsin
|
||||
fnstsw %ax
|
||||
testl $0x400,%eax
|
||||
jnz 1f
|
||||
ret
|
||||
1: fldpi
|
||||
fadd %st(0)
|
||||
fxch %st(1)
|
||||
2: fprem1
|
||||
fnstsw %ax
|
||||
testl $0x400,%eax
|
||||
jnz 2b
|
||||
fstp %st(1)
|
||||
fsin
|
||||
ret
|
||||
#endif
|
49
reactos/lib/sdk/crt/math/i386/sin_asm.s
Normal file
49
reactos/lib/sdk/crt/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
|
49
reactos/lib/sdk/crt/math/i386/sqrt_asm.s
Normal file
49
reactos/lib/sdk/crt/math/i386/sqrt_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/sqrt.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 _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
|
||||
ret
|
|
@ -1,61 +0,0 @@
|
|||
/**
|
||||
* This file has no copyright assigned and is placed in the Public Domain.
|
||||
* This file is part of the w64 mingw-runtime package.
|
||||
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
|
||||
*/
|
||||
|
||||
.file "tan.S"
|
||||
.text
|
||||
#ifdef _WIN64
|
||||
.align 8
|
||||
#else
|
||||
.align 4
|
||||
#endif
|
||||
.globl _tan
|
||||
.def _tan; .scl 2; .type 32; .endef
|
||||
_tan:
|
||||
#ifdef _WIN64
|
||||
fldt (%rdx)
|
||||
fptan
|
||||
fnstsw %ax
|
||||
testl $0x400,%eax
|
||||
jnz 1f
|
||||
fstp %st(0)
|
||||
movq %rcx,%rax
|
||||
movq $0,8(%rcx)
|
||||
fstpt (%rcx)
|
||||
ret
|
||||
1: fldpi
|
||||
fadd %st(0)
|
||||
fxch %st(1)
|
||||
2: fprem1
|
||||
fstsw %ax
|
||||
testl $0x400,%eax
|
||||
jnz 2b
|
||||
fstp %st(1)
|
||||
fptan
|
||||
fstp %st(0)
|
||||
movq %rcx,%rax
|
||||
movq $0,8(%rcx)
|
||||
fstpt (%rcx)
|
||||
ret
|
||||
#else
|
||||
fldt 4(%esp)
|
||||
fptan
|
||||
fnstsw %ax
|
||||
testl $0x400,%eax
|
||||
jnz 1f
|
||||
fstp %st(0)
|
||||
ret
|
||||
1: fldpi
|
||||
fadd %st(0)
|
||||
fxch %st(1)
|
||||
2: fprem1
|
||||
fstsw %ax
|
||||
testl $0x400,%eax
|
||||
jnz 2b
|
||||
fstp %st(1)
|
||||
fptan
|
||||
fstp %st(0)
|
||||
ret
|
||||
#endif
|
52
reactos/lib/sdk/crt/math/i386/tan_asm.s
Normal file
52
reactos/lib/sdk/crt/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
|
30
reactos/lib/sdk/crt/math/j0_y0.c
Normal file
30
reactos/lib/sdk/crt/math/j0_y0.c
Normal file
|
@ -0,0 +1,30 @@
|
|||
#include <math.h>
|
||||
|
||||
typedef int fpclass_t;
|
||||
fpclass_t _fpclass(double __d);
|
||||
int *_errno(void);
|
||||
|
||||
/*
|
||||
* @unimplemented
|
||||
*/
|
||||
double _j0(double num)
|
||||
{
|
||||
/* FIXME: errno handling */
|
||||
return j0(num);
|
||||
}
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
double _y0(double num)
|
||||
{
|
||||
double retval;
|
||||
if (!isfinite(num)) *_errno() = EDOM;
|
||||
retval = y0(num);
|
||||
if (_fpclass(retval) == _FPCLASS_NINF)
|
||||
{
|
||||
*_errno() = EDOM;
|
||||
retval = sqrt(-1);
|
||||
}
|
||||
return retval;
|
||||
}
|
30
reactos/lib/sdk/crt/math/j1_y1.c
Normal file
30
reactos/lib/sdk/crt/math/j1_y1.c
Normal file
|
@ -0,0 +1,30 @@
|
|||
#include <math.h>
|
||||
|
||||
typedef int fpclass_t;
|
||||
fpclass_t _fpclass(double __d);
|
||||
int *_errno(void);
|
||||
|
||||
/*
|
||||
* @unimplemented
|
||||
*/
|
||||
double _j1(double num)
|
||||
{
|
||||
/* FIXME: errno handling */
|
||||
return j1(num);
|
||||
}
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
double _y1(double num)
|
||||
{
|
||||
double retval;
|
||||
if (!isfinite(num)) *_errno() = EDOM;
|
||||
retval = y1(num);
|
||||
if (_fpclass(retval) == _FPCLASS_NINF)
|
||||
{
|
||||
*_errno() = EDOM;
|
||||
retval = sqrt(-1);
|
||||
}
|
||||
return retval;
|
||||
}
|
30
reactos/lib/sdk/crt/math/jn_yn.c
Normal file
30
reactos/lib/sdk/crt/math/jn_yn.c
Normal file
|
@ -0,0 +1,30 @@
|
|||
#include <math.h>
|
||||
|
||||
typedef int fpclass_t;
|
||||
fpclass_t _fpclass(double __d);
|
||||
int *_errno(void);
|
||||
|
||||
/*
|
||||
* @unimplemented
|
||||
*/
|
||||
double _jn(int n, double num)
|
||||
{
|
||||
/* FIXME: errno handling */
|
||||
return jn(n, num);
|
||||
}
|
||||
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
double _yn(int order, double num)
|
||||
{
|
||||
double retval;
|
||||
if (!isfinite(num)) *_errno() = EDOM;
|
||||
retval = yn(order,num);
|
||||
if (_fpclass(retval) == _FPCLASS_NINF)
|
||||
{
|
||||
*_errno() = EDOM;
|
||||
retval = sqrt(-1);
|
||||
}
|
||||
return retval;
|
||||
}
|
|
@ -1,11 +0,0 @@
|
|||
/**
|
||||
* This file has no copyright assigned and is placed in the Public Domain.
|
||||
* This file is part of the w64 mingw-runtime package.
|
||||
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
|
||||
*/
|
||||
#include <math.h>
|
||||
|
||||
float log10f(float _X)
|
||||
{
|
||||
return ((float)log10((double)_X));
|
||||
}
|
|
@ -1,23 +0,0 @@
|
|||
/**
|
||||
* This file has no copyright assigned and is placed in the Public Domain.
|
||||
* This file is part of the w64 mingw-runtime package.
|
||||
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
|
||||
*/
|
||||
/*
|
||||
* Written by J.T. Conklin <jtc@netbsd.org>.
|
||||
* Changes for long double by Ulrich Drepper <drepper@cygnus.com>
|
||||
* Public domain.
|
||||
*/
|
||||
|
||||
#include <math.h>
|
||||
|
||||
double
|
||||
logb (double x)
|
||||
{
|
||||
double res = 0.0;
|
||||
#ifdef __GNUC__
|
||||
asm ("fxtract\n\t"
|
||||
"fstp %%st" : "=t" (res) : "0" (x));
|
||||
#endif
|
||||
return res;
|
||||
}
|
|
@ -1,23 +0,0 @@
|
|||
/**
|
||||
* This file has no copyright assigned and is placed in the Public Domain.
|
||||
* This file is part of the w64 mingw-runtime package.
|
||||
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
|
||||
*/
|
||||
/*
|
||||
* Written by J.T. Conklin <jtc@netbsd.org>.
|
||||
* Changes for long double by Ulrich Drepper <drepper@cygnus.com>
|
||||
* Public domain.
|
||||
*/
|
||||
|
||||
#include <math.h>
|
||||
|
||||
float
|
||||
logbf (float x)
|
||||
{
|
||||
float res = 0.0F;
|
||||
#ifndef __GNUC__
|
||||
asm ("fxtract\n\t"
|
||||
"fstp %%st" : "=t" (res) : "0" (x));
|
||||
#endif
|
||||
return res;
|
||||
}
|
|
@ -1,11 +0,0 @@
|
|||
/**
|
||||
* This file has no copyright assigned and is placed in the Public Domain.
|
||||
* This file is part of the w64 mingw-runtime package.
|
||||
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
|
||||
*/
|
||||
#include <math.h>
|
||||
|
||||
float logf(float _X)
|
||||
{
|
||||
return ((float)log((double)_X));
|
||||
}
|
|
@ -1,27 +0,0 @@
|
|||
/**
|
||||
* This file has no copyright assigned and is placed in the Public Domain.
|
||||
* This file is part of the w64 mingw-runtime package.
|
||||
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
|
||||
*/
|
||||
#include <fenv.h>
|
||||
#include <math.h>
|
||||
#include <errno.h>
|
||||
#define FE_ROUNDING_MASK \
|
||||
(FE_TONEAREST | FE_DOWNWARD | FE_UPWARD | FE_TOWARDZERO)
|
||||
|
||||
float
|
||||
modff (float value, float* iptr)
|
||||
{
|
||||
float int_part = 0.0F;
|
||||
unsigned short saved_cw;
|
||||
unsigned short tmp_cw;
|
||||
/* truncate */
|
||||
asm ("fnstcw %0;" : "=m" (saved_cw)); /* save control word */
|
||||
tmp_cw = (saved_cw & ~FE_ROUNDING_MASK) | FE_TOWARDZERO;
|
||||
asm ("fldcw %0;" : : "m" (tmp_cw));
|
||||
asm ("frndint;" : "=t" (int_part) : "0" (value)); /* round */
|
||||
asm ("fldcw %0;" : : "m" (saved_cw)); /* restore saved cw */
|
||||
if (iptr)
|
||||
*iptr = int_part;
|
||||
return (isinf (value) ? 0.0F : value - int_part);
|
||||
}
|
|
@ -1,66 +0,0 @@
|
|||
/**
|
||||
* This file has no copyright assigned and is placed in the Public Domain.
|
||||
* This file is part of the w64 mingw-runtime package.
|
||||
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
|
||||
*/
|
||||
/*
|
||||
nextafterl.c
|
||||
Contributed by Danny Smith <dannysmith@users.sourceforge.net>
|
||||
No copyright claimed, absolutely no warranties.
|
||||
|
||||
2005-05-09
|
||||
*/
|
||||
|
||||
#include <math.h>
|
||||
|
||||
double
|
||||
nextafter (double x, double y)
|
||||
{
|
||||
union {
|
||||
long double ld;
|
||||
struct {
|
||||
/* packed attribute is unnecessary on x86/x64 for these three variables */
|
||||
unsigned long long mantissa;
|
||||
unsigned short expn;
|
||||
unsigned short pad;
|
||||
} parts;
|
||||
} u;
|
||||
|
||||
/* The normal bit is explicit for long doubles, unlike
|
||||
float and double. */
|
||||
static const unsigned long long normal_bit = 0x8000000000000000ull;
|
||||
u.ld = 0.0L;
|
||||
if (isnan (y) || isnan (x))
|
||||
return x + y;
|
||||
|
||||
if (x == y )
|
||||
/* nextafter (0.0, -O.0) should return -0.0. */
|
||||
return y;
|
||||
|
||||
u.ld = x;
|
||||
if (x == 0.0L)
|
||||
{
|
||||
u.parts.mantissa = 1ull;
|
||||
return y > 0.0L ? u.ld : -u.ld;
|
||||
}
|
||||
|
||||
if (((x > 0.0L) ^ (y > x)) == 0)
|
||||
{
|
||||
u.parts.mantissa++;
|
||||
if ((u.parts.mantissa & ~normal_bit) == 0ull)
|
||||
u.parts.expn++;
|
||||
}
|
||||
else
|
||||
{
|
||||
if ((u.parts.mantissa & ~normal_bit) == 0ull)
|
||||
u.parts.expn--;
|
||||
u.parts.mantissa--;
|
||||
}
|
||||
|
||||
/* If we have updated the expn of a normal number,
|
||||
or moved from denormal to normal, [re]set the normal bit. */
|
||||
if (u.parts.expn & 0x7fff)
|
||||
u.parts.mantissa |= normal_bit;
|
||||
|
||||
return u.ld;
|
||||
}
|
|
@ -1,32 +0,0 @@
|
|||
/**
|
||||
* This file has no copyright assigned and is placed in the Public Domain.
|
||||
* This file is part of the w64 mingw-runtime package.
|
||||
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
|
||||
*/
|
||||
#include <math.h>
|
||||
|
||||
float
|
||||
nextafterf (float x, float y)
|
||||
{
|
||||
union
|
||||
{
|
||||
float f;
|
||||
unsigned int i;
|
||||
} u;
|
||||
if (isnan (y) || isnan (x))
|
||||
return x + y;
|
||||
if (x == y )
|
||||
/* nextafter (0.0, -O.0) should return -0.0. */
|
||||
return y;
|
||||
u.f = x;
|
||||
if (x == 0.0F)
|
||||
{
|
||||
u.i = 1;
|
||||
return y > 0.0F ? u.f : -u.f;
|
||||
}
|
||||
if (((x > 0.0F) ^ (y > x)) == 0)
|
||||
u.i++;
|
||||
else
|
||||
u.i--;
|
||||
return u.f;
|
||||
}
|
|
@ -21,24 +21,11 @@
|
|||
|
||||
#include <math.h>
|
||||
|
||||
double ldexp (double __x, int __y);
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
|
||||
double ldexp (double __x, int __y)
|
||||
long double powl (long double __x,long double __y)
|
||||
{
|
||||
register double __val;
|
||||
#ifdef __GNUC__
|
||||
__asm __volatile__
|
||||
("fscale"
|
||||
: "=t" (__val) : "0" (__x), "u" ((double) __y));
|
||||
#else
|
||||
register double __dy = (double)__y;
|
||||
__asm
|
||||
{
|
||||
fld __dy
|
||||
fld __x
|
||||
fscale
|
||||
fstp __val
|
||||
}
|
||||
#endif /*__GNUC__*/
|
||||
return __val;
|
||||
return pow(__x,__y/2)*pow(__x,__y/2);
|
||||
}
|
|
@ -1,10 +0,0 @@
|
|||
/**
|
||||
* This file has no copyright assigned and is placed in the Public Domain.
|
||||
* This file is part of the w64 mingw-runtime package.
|
||||
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
|
||||
*/
|
||||
#include <math.h>
|
||||
float powf (float x, float y)
|
||||
{
|
||||
return (float) pow ((double) x, (double) y);
|
||||
}
|
|
@ -1,11 +0,0 @@
|
|||
/**
|
||||
* This file has no copyright assigned and is placed in the Public Domain.
|
||||
* This file is part of the w64 mingw-runtime package.
|
||||
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
|
||||
*/
|
||||
#include <math.h>
|
||||
|
||||
float sinf(float _X)
|
||||
{
|
||||
return ((float) sin ((double) _X));
|
||||
}
|
|
@ -1,10 +0,0 @@
|
|||
/**
|
||||
* This file has no copyright assigned and is placed in the Public Domain.
|
||||
* This file is part of the w64 mingw-runtime package.
|
||||
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
|
||||
*/
|
||||
#include <math.h>
|
||||
float sinhf (float x)
|
||||
{
|
||||
return (float) sinh (x);
|
||||
}
|
|
@ -1,25 +0,0 @@
|
|||
/**
|
||||
* This file has no copyright assigned and is placed in the Public Domain.
|
||||
* This file is part of the w64 mingw-runtime package.
|
||||
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
|
||||
*/
|
||||
#include <math.h>
|
||||
#include <errno.h>
|
||||
|
||||
double
|
||||
sqrt (double x)
|
||||
{
|
||||
if (x < 0.0L )
|
||||
{
|
||||
#ifndef _LIBCNT_
|
||||
errno = EDOM;
|
||||
#endif
|
||||
return NAN;
|
||||
}
|
||||
else
|
||||
{
|
||||
long double res = 0.0L;
|
||||
asm ("fsqrt" : "=t" (res) : "0" (x));
|
||||
return res;
|
||||
}
|
||||
}
|
|
@ -1,23 +0,0 @@
|
|||
/**
|
||||
* This file has no copyright assigned and is placed in the Public Domain.
|
||||
* This file is part of the w64 mingw-runtime package.
|
||||
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
|
||||
*/
|
||||
#include <math.h>
|
||||
#include <errno.h>
|
||||
|
||||
float
|
||||
sqrtf (float x)
|
||||
{
|
||||
if (x < 0.0F )
|
||||
{
|
||||
errno = EDOM;
|
||||
return NAN;
|
||||
}
|
||||
else
|
||||
{
|
||||
float res = 0.0F;
|
||||
asm ("fsqrt" : "=t" (res) : "0" (x));
|
||||
return res;
|
||||
}
|
||||
}
|
|
@ -1,11 +0,0 @@
|
|||
/**
|
||||
* This file has no copyright assigned and is placed in the Public Domain.
|
||||
* This file is part of the w64 mingw-runtime package.
|
||||
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
|
||||
*/
|
||||
#include <math.h>
|
||||
|
||||
float tanf(float _X)
|
||||
{
|
||||
return ((float)tan((double)_X));
|
||||
}
|
|
@ -1,10 +0,0 @@
|
|||
/**
|
||||
* This file has no copyright assigned and is placed in the Public Domain.
|
||||
* This file is part of the w64 mingw-runtime package.
|
||||
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
|
||||
*/
|
||||
#include <math.h>
|
||||
float tanhf (float x)
|
||||
{
|
||||
return (float) tanh (x);
|
||||
}
|
|
@ -117,6 +117,11 @@ static CRITICAL_SECTION FILE_cs;
|
|||
#define LOCK_FILES() do { EnterCriticalSection(&FILE_cs); } while (0)
|
||||
#define UNLOCK_FILES() do { LeaveCriticalSection(&FILE_cs); } while (0)
|
||||
|
||||
FILE *__cdecl __iob_func()
|
||||
{
|
||||
return _iob;
|
||||
}
|
||||
|
||||
static inline BOOL is_valid_fd(int fd)
|
||||
{
|
||||
return fd >= 0 && fd < fdend && (fdesc[fd].wxflag & WX_OPEN);
|
||||
|
@ -447,11 +452,11 @@ static void int_to_base32(int num, char *str)
|
|||
}
|
||||
|
||||
/*********************************************************************
|
||||
* __iob_func(MSVCRT.@)
|
||||
* __p__iob(MSVCRT.@)
|
||||
*/
|
||||
FILE * CDECL __iob_func(void)
|
||||
FILE * CDECL __p__iob(void)
|
||||
{
|
||||
return &_iob[0];
|
||||
return _iob;
|
||||
}
|
||||
|
||||
/*********************************************************************
|
||||
|
|
|
@ -292,12 +292,12 @@ const unsigned short _ctype[] = {
|
|||
const unsigned short *_pctype = _ctype + 1;
|
||||
const unsigned short *_pwctype = _ctype + 1;
|
||||
|
||||
/*********************************************************************
|
||||
* __pctype_func (MSVCRT.@)
|
||||
/*
|
||||
* @implemented
|
||||
*/
|
||||
const unsigned short* __cdecl __pctype_func(void)
|
||||
const unsigned short **__p__pctype(void)
|
||||
{
|
||||
return _pctype;
|
||||
return &_pctype;
|
||||
}
|
||||
|
||||
/*
|
||||
|
|
|
@ -5,7 +5,6 @@
|
|||
* PURPOSE: Implementation of asctime(), _asctime_s()
|
||||
* PROGRAMERS: Timo Kreuzer
|
||||
*/
|
||||
#define MINGW_HAS_SECURE_API
|
||||
#include <precomp.h>
|
||||
#include <tchar.h>
|
||||
#include <time.h>
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
* PURPOSE: Implementation of ctime, _ctime_s
|
||||
* PROGRAMERS: Timo Kreuzer
|
||||
*/
|
||||
#define MINGW_HAS_SECURE_API
|
||||
#define MINGW_HAS_SECURE_API 1
|
||||
|
||||
#include <tchar.h>
|
||||
#include <time.h>
|
||||
|
|
|
@ -10,7 +10,7 @@
|
|||
#include <sys/utime.h>
|
||||
#include "bitsfixup.h"
|
||||
|
||||
int __cdecl
|
||||
int
|
||||
_tutime(const _TCHAR* path, struct _utimbuf *t)
|
||||
{
|
||||
int fd = _topen(path, _O_WRONLY | _O_BINARY);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue