update mingw-w64 source files to v7.0.0

This commit is contained in:
Andrew Kelley 2020-03-05 14:53:48 -05:00
parent 8e5913cfee
commit c0242f2310
No known key found for this signature in database
GPG Key ID: 7C5F548F728501A9
112 changed files with 1624 additions and 2387 deletions

View File

@ -4,35 +4,9 @@
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#include <internal.h>
#include <math.h>
#include <stdio.h>
typedef int (__cdecl *fUserMathErr)(struct _exception *);
static fUserMathErr stUserMathErr;
void __mingw_raise_matherr (int typ, const char *name, double a1, double a2,
double rslt)
{
struct _exception ex;
if (!stUserMathErr)
return;
ex.type = typ;
ex.name = (char*)name;
ex.arg1 = a1;
ex.arg2 = a2;
ex.retval = rslt;
(*stUserMathErr)(&ex);
}
#undef __setusermatherr
void __mingw_setusermatherr (int (__cdecl *f)(struct _exception *))
{
stUserMathErr = f;
__setusermatherr (f);
}
int __CRTDECL
_matherr (struct _exception *pexcept)
{

View File

@ -4,28 +4,5 @@
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#include <oscalls.h>
#include <internal.h>
#include <process.h>
#include <math.h>
#include <stdlib.h>
#include <tchar.h>
#include <sect_attribs.h>
#include <locale.h>
extern const PIMAGE_TLS_CALLBACK __dyn_tls_init_callback;
void * __cdecl
_decode_pointer (void *codedptr)
{
return (void *) codedptr;
}
void * __cdecl
_encode_pointer (void *ptr)
{
return ptr;
}
/* 0:console, 1:windows. */
int mingw_app_type = 0;

View File

@ -10,8 +10,8 @@
use, modify or distribute it freely.
This code is distributed in the hope that it will be useful but
WITHOUT ANY WARRANTY. ALL WARRENTIES, EXPRESS OR IMPLIED ARE HEREBY
DISCLAMED. This includes but is not limited to warrenties of
WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY
DISCLAMED. This includes but is not limited to warranties of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
*/

View File

@ -0,0 +1,32 @@
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#include <math.h>
typedef int (__cdecl *fUserMathErr)(struct _exception *);
static fUserMathErr stUserMathErr;
void __mingw_raise_matherr (int typ, const char *name, double a1, double a2,
double rslt)
{
struct _exception ex;
if (!stUserMathErr)
return;
ex.type = typ;
ex.name = (char*)name;
ex.arg1 = a1;
ex.arg2 = a2;
ex.retval = rslt;
(*stUserMathErr)(&ex);
}
#undef __setusermatherr
void __mingw_setusermatherr (int (__cdecl *f)(struct _exception *))
{
stUserMathErr = f;
__setusermatherr (f);
}

View File

@ -1,3 +1,5 @@
#include "func.def.in"
#define ADD_UNDERSCORE(symbol) symbol == _ ## symbol
#define ADD_DOUBLE_UNDERSCORE(symbol) symbol == __ ## symbol
@ -44,7 +46,13 @@ ADD_UNDERSCORE(gcvt)
ADD_UNDERSCORE(getch)
ADD_UNDERSCORE(getche)
ADD_UNDERSCORE(getcwd)
#ifdef UCRTBASE
; ucrtbase.dll has got _getpid for all archs
ADD_UNDERSCORE(getpid)
#elif !defined(NO_GETPID_ALIAS)
; msvcrt.dll for arm/arm64 lacks _getpid
F_X86_ANY(ADD_UNDERSCORE(getpid))
#endif
ADD_UNDERSCORE(getw)
ADD_UNDERSCORE(heapwalk)
ADD_UNDERSCORE(isatty)
@ -131,6 +139,8 @@ ADD_UNDERSCORE(hypot)
;logb
ADD_UNDERSCORE(nextafter)
longjmp
#ifndef UCRTBASE
_daylight DATA
_timezone DATA
@ -140,6 +150,4 @@ ADD_UNDERSCORE(timezone)
ADD_UNDERSCORE(tzname)
ADD_UNDERSCORE(vsnprintf_s)
longjmp DATA
#endif

View File

@ -152,10 +152,6 @@ extern char *** __MINGW_IMP_SYMBOL(__initenv);
#include <crtdbg.h>
#include <errno.h>
void * __cdecl _encode_pointer(void *);
void * __cdecl _encoded_null();
void * __cdecl _decode_pointer(void *);
BOOL __cdecl _ValidateImageBase (PBYTE pImageBase);
PIMAGE_SECTION_HEADER __cdecl _FindPESection (PBYTE pImageBase, DWORD_PTR rva);
BOOL __cdecl _IsNonwritableInCurrentImage (PBYTE pTarget);

View File

@ -1,9 +1,5 @@
#include <winbase.h>
#ifndef __LIBMSVCRT__
#error "This file should only be used in libmsvcrt.a"
#endif
static inline HANDLE __mingw_get_msvcrt_handle(void)
{
return GetModuleHandleW(L"msvcrt.dll");

View File

@ -149,6 +149,7 @@ CreateProcessWithTokenW
CreateRestrictedToken
CreateServiceA
CreateServiceW
CreateServiceEx
CreateTraceInstanceId
CreateWellKnownSid
CredBackupCredentials
@ -235,6 +236,7 @@ CryptSignHashA
CryptSignHashW
CryptVerifySignatureA
CryptVerifySignatureW
CveEventWrite
DecryptFileA
DecryptFileW
DeleteAce
@ -519,6 +521,7 @@ NotifyChangeEventLog
NotifyServiceStatusChange
NotifyServiceStatusChangeA
NotifyServiceStatusChangeW
NpGetUserName
ObjectCloseAuditAlarmA
ObjectCloseAuditAlarmW
ObjectDeleteAuditAlarmA
@ -581,6 +584,7 @@ ProcessIdleTasksW
ProcessTrace
QueryAllTracesA
QueryAllTracesW
QueryLocalUserServiceName
QueryRecoveryAgentsOnEncryptedFile
QuerySecurityAccessMask
QueryServiceConfig2A
@ -595,6 +599,9 @@ QueryServiceStatus
QueryServiceStatusEx
QueryTraceA
QueryTraceW
QueryTraceProcessingHandle
QueryUserServiceName
QueryUserServiceNameForContext
QueryUsersOnEncryptedFile
ReadEncryptedFileRaw
ReadEventLogA
@ -694,6 +701,8 @@ RegisterWaitChainCOMCallback
RemoteRegEnumKeyWrapper
RemoteRegEnumValueWrapper
RemoteRegQueryInfoKeyWrapper
RemoteRegQueryMultipleValues2Wrapper
RemoteRegQueryMultipleValuesWrapper
RemoteRegQueryValueWrapper
RemoveTraceCallback
RemoveUsersFromEncryptedFile

View File

@ -26,6 +26,14 @@ AdjustCalendarDate
AllocConsole
AllocateUserPhysicalPages
AllocateUserPhysicalPagesNuma
AppPolicyGetClrCompat
AppPolicyGetCreateFileAccess
AppPolicyGetLifecycleManagement
AppPolicyGetMediaFoundationCodecLoading
AppPolicyGetProcessTerminationMethod
AppPolicyGetShowDeveloperDiagnostic
AppPolicyGetThreadInitializationType
AppPolicyGetWindowingModel
AppXGetOSMaxVersionTested
ApplicationRecoveryFinished
ApplicationRecoveryInProgress
@ -88,12 +96,14 @@ BasepFreeAppCompatData
BasepGetAppCompatData
BasepGetComputerNameFromNtPath
BasepGetExeArchType
BasepInitAppCompatData
BasepIsProcessAllowed
BasepMapModuleHandle
BasepNotifyLoadStringResource
BasepPostSuccessAppXExtension
BasepProcessInvalidImage
BasepQueryAppCompat
BasepQueryModuleChpeSettings
BasepReleaseAppXContext
BasepReleaseSxsCreateProcessUtilityStruct
BasepReportFault
@ -136,6 +146,7 @@ CloseHandle
ClosePackageInfo
ClosePrivateNamespace
CloseProfileUserMapping
ClosePseudoConsole
CloseState
CloseThreadpool
CloseThreadpoolCleanupGroup
@ -186,6 +197,7 @@ CreateDirectoryExW
CreateDirectoryTransactedA
CreateDirectoryTransactedW
CreateDirectoryW
CreateEnclave
CreateEventA
CreateEventExA
CreateEventExW
@ -224,10 +236,12 @@ CreatePipe
CreatePrivateNamespaceA
CreatePrivateNamespaceW
CreateProcessA
CreateProcessAsUserA
CreateProcessAsUserW
CreateProcessInternalA
CreateProcessInternalW
CreateProcessW
CreatePseudoConsole
CreateRemoteThread
CreateRemoteThreadEx
CreateSemaphoreA
@ -309,6 +323,7 @@ EndUpdateResourceW
EnterCriticalSection
F_X64(EnterUmsSchedulingMode)
EnterSynchronizationBarrier
EnterUmsSchedulingMode
EnumCalendarInfoA
EnumCalendarInfoExA
EnumCalendarInfoExEx
@ -337,6 +352,7 @@ EnumSystemCodePagesA
EnumSystemCodePagesW
EnumSystemFirmwareTables
EnumSystemGeoID
EnumSystemGeoNames
EnumSystemLanguageGroupsA
EnumSystemLanguageGroupsW
EnumSystemLocalesA
@ -432,6 +448,7 @@ FreeEnvironmentStringsW
FreeLibrary
FreeLibraryAndExitThread
FreeLibraryWhenCallbackReturns
FreeMemoryJobObject
FreeResource
FreeUserPhysicalPages
GenerateConsoleCtrlEvent
@ -558,6 +575,8 @@ GetDiskFreeSpaceA
GetDiskFreeSpaceExA
GetDiskFreeSpaceExW
GetDiskFreeSpaceW
GetDiskSpaceInformationA
GetDiskSpaceInformationW
GetDllDirectoryA
GetDllDirectoryW
GetDriveTypeA
@ -566,6 +585,7 @@ GetDurationFormat
GetDurationFormatEx
GetDynamicTimeZoneInformation
GetEnabledExtendedFeatures
GetEnabledXStateFeatures
GetEncryptedFileVersionExt
GetEnvironmentStrings
GetEnvironmentStringsA
@ -608,6 +628,7 @@ GetFullPathNameTransactedW
GetFullPathNameW
GetGeoInfoA
GetGeoInfoW
GetGeoInfoEx
GetHandleInformation
GetLargePageMinimum
GetLargestConsoleWindowSize
@ -693,7 +714,9 @@ GetPrivateProfileStructA
GetPrivateProfileStructW
GetProcAddress
GetProcessAffinityMask
GetProcessDefaultCpuSets
GetProcessDEPPolicy
GetProcessDefaultCpuSets
GetProcessGroupAffinity
GetProcessHandleCount
GetProcessHeap
@ -733,6 +756,7 @@ GetStringTypeExA
GetStringTypeExW
GetStringTypeW
GetSystemAppDataKey
GetSystemCpuSetInformation
GetSystemDEPPolicy
GetSystemDefaultLCID
GetSystemDefaultLangID
@ -763,6 +787,7 @@ GetTempFileNameW
GetTempPathA
GetTempPathW
GetThreadContext
GetThreadDescription
GetThreadErrorMode
GetThreadGroupAffinity
GetThreadIOPendingFlag
@ -773,6 +798,7 @@ GetThreadLocale
GetThreadPreferredUILanguages
GetThreadPriority
GetThreadPriorityBoost
GetThreadSelectedCpuSets
GetThreadSelectorEntry
GetThreadTimes
GetThreadUILanguage
@ -787,6 +813,8 @@ GetTimeZoneInformation
GetTimeZoneInformationForYear
GetUILanguageInfo
F_X64(GetUmsCompletionListEvent)
GetUmsSystemThreadInformation
GetUserDefaultGeoName
GetUserDefaultLCID
GetUserDefaultLangID
GetUserDefaultLocaleName
@ -809,6 +837,7 @@ GetVolumePathNamesForVolumeNameW
GetWindowsDirectoryA
GetWindowsDirectoryW
GetWriteWatch
GetXStateFeaturesMask
GlobalAddAtomA
GlobalAddAtomExA
GlobalAddAtomExW
@ -859,17 +888,17 @@ IdnToAscii
IdnToNameprepUnicode
IdnToUnicode
InitAtomTable
InitializeConditionVariable
InitializeCriticalSection
InitOnceBeginInitialize
InitOnceComplete
InitOnceExecuteOnce
InitOnceInitialize
InitializeConditionVariable
InitializeContext
InitializeContext2
InitializeCriticalSection
InitializeCriticalSectionAndSpinCount
InitializeCriticalSectionEx
InitializeEnclave
InitializeExtendedContext
InitializeProcThreadAttributeList
InitializeSListHead
@ -895,6 +924,7 @@ IsCalendarLeapYear
IsDBCSLeadByte
IsDBCSLeadByteEx
IsDebuggerPresent
IsEnclaveTypeSupported
IsNLSDefinedString
IsNativeVhdBoot
IsNormalizedString
@ -912,7 +942,9 @@ IsValidLocale
IsValidUILanguage
IsValidLocaleName
IsValidNLSVersion
IsWow64GuestMachineSupported
IsWow64Process
IsWow64Process2
K32EmptyWorkingSet
K32EnumDeviceDrivers
K32EnumPageFilesA
@ -958,6 +990,7 @@ LZStart
LeaveCriticalSection
LeaveCriticalSectionWhenCallbackReturns
LoadAppInitDlls
LoadEnclaveData
LoadLibraryA
LoadLibraryExA
LoadLibraryExW
@ -970,6 +1003,7 @@ LoadStringBaseW
LocalAlloc
LocalCompact
LocalFileTimeToFileTime
LocalFileTimeToLocalSystemTime
LocalFlags
LocalFree
LocalHandle
@ -977,10 +1011,12 @@ LocalLock
LocalReAlloc
LocalShrink
LocalSize
LocalSystemTimeToLocalFileTime
LocalUnlock
LocaleNameToLCID
LocateExtendedFeature
LocateLegacyContext
LocateXStateFeature
LockFile
LockFileEx
LockResource
@ -1099,11 +1135,13 @@ QueryFullProcessImageNameW
QueryIdleProcessorCycleTime
QueryIdleProcessorCycleTimeEx
QueryInformationJobObject
QueryIoRateControlInformationJobObject
QueryMemoryResourceNotification
QueryPerformanceCounter
QueryPerformanceFrequency
QueryProcessAffinityUpdateMode
QueryProcessCycleTime
QueryProtectedPolicy
QueryThreadCycleTime
QueryThreadProfiling
QueryThreadpoolStackInformation
@ -1116,6 +1154,8 @@ QuirkGetDataWorker
QuirkIsEnabled2Worker
QuirkIsEnabled3Worker
QuirkIsEnabledForPackage2Worker
QuirkIsEnabledForPackage3Worker
QuirkIsEnabledForPackage4Worker
QuirkIsEnabledForPackageWorker
QuirkIsEnabledForProcessWorker
QuirkIsEnabledWorker
@ -1135,12 +1175,14 @@ ReadConsoleOutputCharacterA
ReadConsoleOutputCharacterW
ReadConsoleOutputW
ReadConsoleW
ReadDirectoryChangesExW
ReadDirectoryChangesW
ReadFile
ReadFileEx
ReadFileScatter
ReadProcessMemory
ReadThreadProfilingData
ReclaimVirtualMemory
;
; MSDN says these functions are exported
; from advapi32.dll. Commented out for
@ -1231,6 +1273,7 @@ RequestDeviceWakeup
RequestWakeupLatency
ResetEvent
ResetWriteWatch
ResizePseudoConsole
ResolveDelayLoadedAPI
ResolveDelayLoadsFromDll
ResolveLocaleName
@ -1346,6 +1389,7 @@ SetFirmwareEnvironmentVariableW
SetHandleCount
SetHandleInformation
SetInformationJobObject
SetIoRateControlInformationJobObject
SetLastConsoleEventActive
SetLastError
SetLocalPrimaryComputerNameA
@ -1361,6 +1405,7 @@ SetPriorityClass
SetProcessAffinityMask
SetProcessAffinityUpdateMode
SetProcessDEPPolicy
SetProcessDefaultCpuSets
SetProcessInformation
SetProcessMitigationPolicy
SetProcessPreferredUILanguages
@ -1368,6 +1413,7 @@ SetProcessPriorityBoost
SetProcessShutdownParameters
SetProcessWorkingSetSize
SetProcessWorkingSetSizeEx
SetProtectedPolicy
SetSearchPathMode
SetStdHandle
SetStdHandleEx
@ -1380,6 +1426,7 @@ SetTapePosition
SetTermsrvAppInstallMode
SetThreadAffinityMask
SetThreadContext
SetThreadDescription
SetThreadErrorMode
SetThreadExecutionState
SetThreadGroupAffinity
@ -1390,6 +1437,7 @@ SetThreadLocale
SetThreadPreferredUILanguages
SetThreadPriority
SetThreadPriorityBoost
SetThreadSelectedCpuSets
SetThreadStackGuarantee
SetThreadToken
SetThreadUILanguage
@ -1405,6 +1453,7 @@ SetTimerQueueTimer
F_X64(SetUmsThreadInformation)
SetUnhandledExceptionFilter
SetUserGeoID
SetUserGeoName
SetVDMCurrentDirectories
SetVolumeLabelA
SetVolumeLabelW
@ -1413,6 +1462,7 @@ SetVolumeMountPointW
SetVolumeMountPointWStub
SetWaitableTimer
SetWaitableTimerEx
SetXStateFeaturesMask
SetupComm
ShowConsoleCursor
SignalObjectAndWait
@ -1507,6 +1557,7 @@ VirtualUnlock
WTSGetActiveConsoleSessionId
WaitCommEvent
WaitForDebugEvent
WaitForDebugEventEx
WaitForMultipleObjects
WaitForMultipleObjectsEx
WaitForSingleObject
@ -1523,6 +1574,11 @@ WakeByAddressSingle
WakeByAddressAll
WakeConditionVariable
WerGetFlags
WerGetFlagsWorker
WerRegisterAdditionalProcess
WerRegisterAppLocalDump
WerRegisterCustomMetadata
WerRegisterExcludedMemoryBlock
WerRegisterFile
WerRegisterFileWorker
WerRegisterMemoryBlock
@ -1530,6 +1586,11 @@ WerRegisterMemoryBlockWorker
WerRegisterRuntimeExceptionModule
WerRegisterRuntimeExceptionModuleWorker
WerSetFlags
WerSetFlagsWorker
WerUnregisterAdditionalProcess
WerUnregisterAppLocalDump
WerUnregisterCustomMetadata
WerUnregisterExcludedMemoryBlock
WerUnregisterFile
WerUnregisterFileWorker
WerUnregisterMemoryBlock
@ -1583,7 +1644,8 @@ WriteProfileStringW
WriteTapemark
ZombifyActCtx
ZombifyActCtxWorker
__C_specific_handler
F_X64(__C_specific_handler)
F_ARM32(__C_specific_handler)
F_ARM32(__chkstk)
F_X64(__misaligned_access)
_hread
@ -1613,6 +1675,17 @@ lstrcpynW
lstrlen
lstrlenA
lstrlenW
;
; MSDN says these functions are exported
; from winmm.dll. Commented out for
; compatibility with older versions of
; Windows.
;
;timeBeginPeriod
;timeEndPeriod
;timeGetDevCaps
;timeGetSystemTime
;timeGetTime
uaw_lstrcmpW
uaw_lstrcmpiW
uaw_lstrlenW

View File

@ -226,7 +226,8 @@ _CrtSetReportHook
_CrtSetReportHook2
_CrtSetReportMode
#endif
_CxxThrowException
F_I386(_CxxThrowException@8)
F_NON_I386(_CxxThrowException)
F_I386(_EH_prolog)
_Getdays
_Getmonths
@ -245,7 +246,7 @@ F_I386(__CxxCallUnwindDtor)
F_I386(__CxxCallUnwindVecDtor)
F_I386(__CxxDetectRethrow)
F_I386(__CxxExceptionFilter)
__CxxFrameHandler
F_X86_ANY(__CxxFrameHandler)
F_ARM_ANY(__CxxFrameHandler3)
F_I386(__CxxLongjmpUnwind)
F_I386(__CxxQueryExceptionSize)
@ -259,9 +260,13 @@ __STRINGTOLD
F_NON_I386(___lc_codepage_func)
___lc_collate_cp_func
___lc_handle_func
___mb_cur_max_func
___setlc_active_func
___unguarded_readlc_active_add_func
; ___mb_cur_max_func exists (on all archs) since XP. Earlier, this function
; was never used, but the __mb_cur_max data symbol was accessed instead.
; For i386 we provide this function as a statically linked helper, that uses
; __mb_cur_max, to avoid forcing a dependency on XP here.
F_NON_I386(___mb_cur_max_func)
F_X86_ANY(___setlc_active_func)
F_X86_ANY(___unguarded_readlc_active_add_func)
__argc DATA
__argv DATA
__badioinfo DATA
@ -284,8 +289,8 @@ __isascii
__iscsym
__iscsymf
F_I386(__lc_clike)
__lc_codepage DATA
__lc_collate_cp DATA
F_X86_ANY(__lc_codepage DATA)
F_X86_ANY(__lc_collate_cp DATA)
__lc_handle DATA
__lconv_init
__mb_cur_max DATA
@ -327,16 +332,16 @@ __pxcptinfoptrs
F_I386(__security_error_handler)
__set_app_type
F_I386(__set_buffer_overrun_handler)
__setlc_active DATA
F_X86_ANY(__setlc_active DATA)
__setusermatherr
F_ARM_ANY(__strncnt)
__threadhandle
__threadid
F_X86_ANY(__threadhandle)
F_X86_ANY(__threadid)
__toascii
__uncaught_exception
__unDName
__unDNameEx
__unguarded_readlc_active DATA
F_X86_ANY(__unguarded_readlc_active DATA)
__wargv DATA
__wcserror
F_NON_I386(__wcserror_s)
@ -376,7 +381,7 @@ F_ARM_ANY(_aligned_offset_realloc_dbg)
_aligned_realloc
F_ARM_ANY(_aligned_realloc_dbg)
_amsg_exit
_assert DATA
_assert
_atodbl
_atodbl_l
_atof_l
@ -387,7 +392,7 @@ _atoi_l
_atol_l
_atoldbl
F_NON_I386(_atoldbl_l)
_beep
F_X86_ANY(_beep)
_beginthread
_beginthreadex
_c_exit
@ -428,7 +433,7 @@ _cputs
_cputws
F_I386(_CRT_RTC_INIT)
_creat
_create_locale
F_ARM_ANY(_create_locale)
F_ARM32(_crtAssertBusy)
F_ARM32(_crtBreakAlloc)
F_ARM32(_crtDbgFlag)
@ -453,10 +458,10 @@ _cwscanf
_cwscanf_l
_cwscanf_s
_cwscanf_s_l
_dstbias DATA
F_X86_ANY(_dstbias DATA)
F_ARM_ANY(_daylight DATA)
F_ARM_ANY(_difftime32)
F_ARM_ANY(_difftime64)
_difftime32 F_I386(== difftime)
_difftime64
_dup
_dup2
_ecvt
@ -520,7 +525,7 @@ _fprintf_s_l
_fputchar
_fputwchar
F_ARM_ANY(_free_dbg)
_free_locale
F_ARM_ANY(_free_locale)
F_ARM_ANY(_freea)
F_NON_I386(_fscanf_l)
F_NON_I386(_fscanf_s_l)
@ -532,7 +537,8 @@ _fstat64
_fstati64
F64(_fstat64i32 == _fstat)
_ftime
F_ARM_ANY(_ftime32)
F_I386(_ftime32 == _ftime)
F_NON_I386(_ftime32)
_ftime32_s
_ftime64
_ftime64_s
@ -542,7 +548,8 @@ F_I386(_ftol)
_fullpath
F_ARM_ANY(_fullpath_dbg)
_futime
F_ARM_ANY(_futime32)
F_I386(_futime32 == _futime)
F_NON_I386(_futime32)
_futime64
_fwprintf_l
_fwprintf_p
@ -558,10 +565,10 @@ F_ARM_ANY(_get_environ)
F_ARM_ANY(_get_errno)
F_ARM_ANY(_get_fileinfo)
F_ARM_ANY(_get_fmode)
_get_heap_handle
F_X86_ANY(_get_heap_handle)
_get_osfhandle
;_get_output_format provided by emu
_get_sbh_threshold
F_X86_ANY(_get_sbh_threshold)
F_ARM_ANY(_get_wenviron)
_getch
_getche
@ -570,25 +577,25 @@ _getdcwd
_getdiskfree
_getdllprocaddr
_getdrive
_getdrives
F_X86_ANY(_getdrives)
_getmaxstdio
_getmbcp
_getpid
_getsystime
F_X86_ANY(_getpid)
F_X86_ANY(_getsystime)
_getw
_getwch
_getwche
_getws
F_X86_ANY(_getws)
F_I386(_global_unwind2)
_gmtime32 F_I386(== gmtime)
; _gmtime32_s replaced by emu
_gmtime64
; _gmtime64_s replaced by emu
_heapadd
F_X86_ANY(_heapadd)
_heapchk
_heapmin
_heapset
_heapused
F_X86_ANY(_heapset)
F_X86_ANY(_heapused)
_heapwalk
_hypot
F_NON_I386(_hypotf)
@ -698,7 +705,7 @@ _j1
_jn
_kbhit
_lfind
_loaddll
F_X86_ANY(_loaddll)
F_NON_I386(_lfind_s)
F_X64(_local_unwind)
F_I386(_local_unwind2)
@ -868,9 +875,8 @@ _memicmp
_memicmp_l
_mkdir
_mkgmtime
F_I386(_mkgmtime32)
F_ARM_ANY(_mkgmtime32)
F_NON_I386(_mkgmtime64)
_mkgmtime32
_mkgmtime64
_mktemp
; _mktemp_s replaced by emu
F_I386(_mktime32 == mktime)
@ -883,7 +889,7 @@ F_X64(_nextafterf)
_onexit
_open
_open_osfhandle
_osplatform DATA
F_X86_ANY(_osplatform DATA)
_osver DATA
F_I386(_outp)
F_I386(_outpd)
@ -941,19 +947,19 @@ F_ARM_ANY(_set_fileinfo)
F_ARM_ANY(_set_fmode)
; Does not seem to present even on Win7 msvcrt
;_set_purecall_handler
_set_sbh_threshold
F_X86_ANY(_set_sbh_threshold)
; _set_output_format provided by emu
F_I386(_set_SSE2_enable)
F_I386(_set_security_error_handler)
_seterrormode
F_X86_ANY(_seterrormode)
_setjmp
F_I386(_setjmp3)
F_NON_I386(_setjmpex)
_setmaxstdio
F_X86_ANY(_setmaxstdio)
_setmbcp
_setmode
_setsystime
_sleep
F_X86_ANY(_setsystime)
F_X86_ANY(_sleep)
_snprintf
_snprintf_c
_snprintf_c_l
@ -1074,10 +1080,11 @@ _umask
_ungetch
_ungetwch
_unlink
_unloaddll
F_X86_ANY(_unloaddll)
_unlock
_utime
F_ARM_ANY(_utime32)
F_I386(_utime32 == _utime)
F_NON_I386(_utime32)
_utime64
_vcprintf
_vcprintf_l
@ -1138,7 +1145,7 @@ _waccess
; _waccess_s Replaced by emu
_wasctime
; _wasctime_s Replaced by emu
F_ARM_ANY(_wassert)
F_NON_I386(_wassert)
_wchdir
_wchmod
_wcmdln DATA
@ -1227,7 +1234,7 @@ _wgetenv_s
_winmajor DATA
_winminor DATA
_winput_s
_winver DATA
F_X86_ANY(_winver DATA)
_wmakepath
_wmakepath_s
_wmkdir
@ -1289,7 +1296,8 @@ _wtol
_wtol_l
_wunlink
_wutime
F_ARM_ANY(_wutime32)
F_I386(_wutime32 == _wutime)
F_NON_I386(_wutime32)
_wutime64
_y0
_y1
@ -1298,14 +1306,18 @@ abort
abs
acos
F_NON_I386(acosf F_X86_ANY(DATA))
F_ARM_ANY(acosl == acos)
asctime
; asctime_s replaced by emu
asin
F_NON_I386(asinf F_X86_ANY(DATA))
F_ARM_ANY(asinl == asin)
atan
atan2 F_X86_ANY(DATA)
F_NON_I386(atan2f F_X86_ANY(DATA))
F_ARM_ANY(atan2l == atan2)
F_NON_I386(atanf F_X86_ANY(DATA))
F_ARM_ANY(atanl == atan)
atexit DATA
atof
atoi
@ -1314,13 +1326,15 @@ bsearch
bsearch_s
F_ARM_ANY(btowc)
calloc
ceil DATA
F_NON_I386(ceilf DATA)
ceil F_X86_ANY(DATA)
F_NON_I386(ceilf F_X86_ANY(DATA))
F_ARM_ANY(ceill == ceil)
clearerr
clearerr_s
clock
cos F_X86_ANY(DATA)
F_NON_I386(cosf F_X86_ANY(DATA))
F_ARM_ANY(cosl == cos)
cosh
F_NON_I386(coshf DATA)
ctime
@ -1329,6 +1343,7 @@ div
exit
exp F_X86_ANY(DATA)
F_NON_I386(expf F_X86_ANY(DATA))
F_ARM_ANY(expl == exp)
fabs DATA
F_ARM_ANY(fabsf)
fclose
@ -1340,10 +1355,12 @@ fgetpos
fgets
fgetwc
fgetws
floor DATA
F_NON_I386(floorf DATA)
floor F_X86_ANY(DATA)
F_NON_I386(floorf F_X86_ANY(DATA))
F_ARM_ANY(floorl == floor)
fmod F_X86_ANY(DATA)
F_NON_I386(fmodf F_X86_ANY(DATA))
F_ARM_ANY(fmodl == fmod)
fopen
fopen_s
fprintf
@ -1356,8 +1373,7 @@ fread
free
freopen
freopen_s
; If we implement frexp, we can set it to DATA only.
frexp
frexp DATA
fscanf
fscanf_s
fseek
@ -1373,7 +1389,7 @@ getc
getchar
getenv
getenv_s
gets
F_X86_ANY(gets)
getwc
getwchar
gmtime
@ -1411,8 +1427,9 @@ localtime
log F_X86_ANY(DATA)
log10
F_NON_I386(log10f F_X86_ANY(DATA))
F_ARM_ANY(log10l == log10)
F_NON_I386(logf F_X86_ANY(DATA))
F_ARM_ANY(longjmp)
F_ARM_ANY(logl == log)
malloc
mblen
F_ARM_ANY(mbrlen)
@ -1434,8 +1451,8 @@ mktime
modf DATA
F_NON_I386(modff DATA)
perror
pow F_X86_ANY(DATA)
F_NON_I386(powf F_X86_ANY(DATA))
pow DATA
F_NON_I386(powf DATA)
printf
printf_s
putc
@ -1461,6 +1478,7 @@ setvbuf
signal
sin F_X86_ANY(DATA)
F_NON_I386(sinf F_X86_ANY(DATA))
F_ARM_ANY(sinl == sin)
; if we implement sinh, we can set it DATA only.
sinh
F_NON_I386(sinhf DATA)
@ -1506,6 +1524,7 @@ swscanf_s
system
tan
F_NON_I386(tanf F_X86_ANY(DATA))
F_ARM_ANY(tanl == tan)
; if we implement tanh, we can set it to DATA only.
tanh
F_ARM_ANY(tanhf)

View File

@ -2,8 +2,8 @@ LIBRARY "RPCRT4.dll"
EXPORTS
CreateProxyFromTypeInfo
CreateStubFromTypeInfo
I_RpcFixTransferSyntax
I_RpcBindingInqCurrentModifiedId
I_RpcFixTransferSyntax
I_RpcFwThisIsTheManager
I_RpcInitFwImports
I_RpcInitHttpImports
@ -83,12 +83,15 @@ I_RpcFilterDCOMActivation
I_RpcFree
I_RpcFreeBuffer
I_RpcFreePipeBuffer
I_RpcFreeSystemHandle
I_RpcFreeSystemHandleCollection
I_RpcGetBuffer
I_RpcGetBufferWithObject
I_RpcGetCurrentCallHandle
I_RpcGetDefaultSD
I_RpcGetExtendedError
I_RpcGetPortAllocationData
I_RpcGetSystemHandle
I_RpcIfInqTransferSyntaxes
I_RpcLogEvent
I_RpcMapWin32Status
@ -127,6 +130,8 @@ I_RpcServerRegisterForwardFunction
I_RpcServerSetAddressChangeFn
I_RpcServerStartService
I_RpcServerSubscribeForDisconnectNotification
I_RpcServerSubscribeForDisconnectNotification2
I_RpcServerUnsubscribeForDisconnectNotification
I_RpcServerUseProtseq2A
I_RpcServerUseProtseq2W
I_RpcServerUseProtseqEp2A
@ -134,8 +139,10 @@ I_RpcServerUseProtseqEp2W
I_RpcSessionStrictContextHandle
I_RpcSetAsyncHandle
I_RpcSetDCOMAppId
I_RpcSetSystemHandle
I_RpcSsDontSerializeContext
I_RpcSystemFunction001
I_RpcSystemHandleTypeSpecificWork
I_RpcTransConnectionAllocatePacket
I_RpcTransConnectionFreePacket
I_RpcTransConnectionReallocPacket
@ -445,6 +452,7 @@ RpcIfIdVectorFree
RpcIfInqId
RpcImpersonateClient
RpcImpersonateClient2
RpcImpersonateClientContainer
RpcInitializeAsyncHandle
RpcMgmtEnableIdleCleanup
RpcMgmtEpEltInqBegin
@ -479,11 +487,13 @@ RpcProtseqVectorFreeA
RpcProtseqVectorFreeW
RpcRaiseException
RpcRegisterAsyncInfo
RpcRevertContainerImpersonation
RpcRevertToSelf
RpcRevertToSelfEx
RpcServerCompleteSecurityCallback
RpcServerInqBindingHandle
RpcServerInqBindings
RpcServerInqBindingsEx
RpcServerInqCallAttributesA
RpcServerInqCallAttributesW
RpcServerInqDefaultPrincNameA
@ -571,7 +581,3 @@ UuidHash
UuidIsNil
UuidToStringA
UuidToStringW
pfnFreeRoutines DATA
pfnMarshallRoutines DATA
pfnSizeRoutines DATA
pfnUnmarshallRoutines DATA

View File

@ -1,32 +1,49 @@
;
; Exports of file urlmon.dll
;
; Autogenerated by gen_exportdef
; Written by Kai Tietz, 2007
; Definition file of urlmon.dll
; Automatic generated by gendef
; written by Kai Tietz 2008
;
LIBRARY urlmon.dll
LIBRARY "urlmon.dll"
EXPORTS
FileBearsMarkOfTheWeb
GetPortFromUrlScheme
GetPropertyFromName
GetPropertyName
IsDWORDProperty
IsStringProperty
AsyncGetClassBits
AsyncInstallDistributionUnit
BindAsyncMoniker
CAuthenticateHostUI_CreateInstance
CDLGetLongPathNameA
CDLGetLongPathNameW
CORPolicyProvider
CoGetClassObjectFromURL
CoInstall
CoInternetCanonicalizeIUri
CoInternetCombineIUri
CoInternetCombineUrl
CoInternetCombineUrlEx
CoInternetCompareUrl
CoInternetCreateSecurityManager
CoInternetCreateZoneManager
CoInternetFeatureSettingsChanged
CoInternetGetMobileBrowserAppCompatMode
CoInternetGetMobileBrowserForceDesktopMode
CoInternetGetProtocolFlags
CoInternetGetSecurityUrl
CoInternetGetSecurityUrlEx
CoInternetGetSession
CoInternetIsFeatureEnabled
CoInternetIsFeatureEnabledForIUri
CoInternetIsFeatureEnabledForUrl
CoInternetIsFeatureZoneElevationEnabled
CoInternetParseIUri
CoInternetParseUrl
CoInternetQueryInfo
CoInternetSetFeatureEnabled
CoInternetSetMobileBrowserAppCompatMode
CoInternetSetMobileBrowserForceDesktopMode
CompareSecurityIds
CompatFlagsFromClsid
CopyBindInfo
@ -34,8 +51,14 @@ CopyStgMedium
CreateAsyncBindCtx
CreateAsyncBindCtxEx
CreateFormatEnumerator
CreateIUriBuilder
CreateURLMoniker
CreateURLMonikerEx
CreateURLMonikerEx2
CreateUri
CreateUriFromMultiByteString
CreateUriPriv
CreateUriWithFragment
DllCanUnloadNow
DllGetClassObject
DllInstall
@ -51,16 +74,26 @@ GetAddSitesFileUrl
GetClassFileOrMime
GetClassURL
GetComponentIDFromCLSSPEC
GetIDNFlagsForUri
GetIUriPriv
GetIUriPriv2
GetLabelsFromNamedHost
GetMarkOfTheWeb
GetSoftwareUpdateInfo
GetUrlmonThreadNotificationHwnd
GetZoneFromAlternateDataStreamEx
HlinkGoBack
HlinkGoForward
HlinkNavigateMoniker
HlinkNavigateString
HlinkSimpleNavigateToMoniker
HlinkSimpleNavigateToString
IEGetUserPrivateNamespaceName
IEInstallScope
InstallFlash
IntlPercentEncodeNormalize
IsAsyncMoniker
IsIntranetAvailable
IsJITInProgress
IsLoggingEnabledA
IsLoggingEnabledW
@ -68,14 +101,21 @@ IsValidURL
MkParseDisplayNameEx
ObtainUserAgentString
PrivateCoInstall
QueryAssociations
QueryClsidAssociation
RegisterBindStatusCallback
RegisterFormatEnumerator
RegisterMediaTypeClass
RegisterMediaTypes
RegisterWebPlatformPermanentSecurityManager
ReleaseBindInfo
RestrictHTTP2
RevokeBindStatusCallback
RevokeFormatEnumerator
SetAccessForIEAppContainer
SetSoftwareUpdateAdvertisementState
ShouldDisplayPunycodeForUri
ShouldShowIntranetWarningSecband
ShowTrustAlertDialog
URLDownloadA
URLDownloadToCacheFileA
@ -89,8 +129,11 @@ URLOpenPullStreamA
URLOpenPullStreamW
URLOpenStreamA
URLOpenStreamW
UnregisterWebPlatformPermanentSecurityManager
UrlMkBuildVersion
UrlMkGetSessionOption
UrlMkSetSessionOption
UrlmonCleanupCurrentThread
WriteHitLogging
ZonesReInit
IECompatLogCSSFix

File diff suppressed because it is too large Load Diff

View File

@ -5,8 +5,14 @@
;
LIBRARY "RPCRT4.dll"
EXPORTS
I_RpcBindingInqCurrentModifiedId@8
I_RpcFwThisIsTheManager@0
I_RpcInitFwImports@4
I_RpcInitHttpImports@4
I_RpcInitImports@4
I_RpcInitNdrImports@4
I_RpcMgmtQueryDedicatedThreadPool@0
I_RpcOpenClientThread@12
I_RpcOpenClientProcess@12
I_RpcServerTurnOnOffKeepalives@16
I_RpcVerifierCorruptionExpected@0
@ -40,9 +46,9 @@ I_RpcAsyncSetHandle@8
I_RpcBCacheAllocate@4
I_RpcBCacheFree@4
I_RpcBindingCopy@8
I_RpcBindingInqDynamicEndpoint@8
I_RpcBindingCreateNP@16
I_RpcBindingHandleToAsyncHandle@8
I_RpcBindingInqClientTokenAttributes@16
I_RpcBindingInqDynamicEndpoint@8
I_RpcBindingInqDynamicEndpointA@8
I_RpcBindingInqDynamicEndpointW@8
@ -53,7 +59,10 @@ I_RpcBindingInqSecurityContextKeyInfo@8
I_RpcBindingInqTransportType@8
I_RpcBindingInqWireIdForSnego@8
I_RpcBindingIsClientLocal@8
I_RpcBindingIsServerLocal@8
I_RpcBindingSetPrivateOption@12
I_RpcBindingToStaticStringBindingW@8
I_RpcCertProcessAndProvision@16
I_RpcClearMutex@4
I_RpcConnectionInqSockBuffSize2@4
I_RpcCompleteAndFree@12
@ -67,17 +76,22 @@ I_RpcFree@4
I_RpcFreeBuffer@4
I_RpcGetAssociationContext@4
I_RpcFreePipeBuffer@4
I_RpcFreeSystemHandle@8
I_RpcFreeSystemHandleCollection@8
I_RpcGetBuffer@4
I_RpcGetBufferWithObject@8
I_RpcGetCurrentCallHandle@0
I_RpcGetDefaultSD@4
I_RpcIOAlerted@4
I_RpcGetExtendedError@0
I_RpcGetPortAllocationData@4
I_RpcGetSystemHandle@20
I_RpcIfInqTransferSyntaxes@16
I_RpcLogEvent@28
I_RpcMapWin32Status@4
I_RpcMonitorAssociation@12
I_RpcMarshalBindingHandleAndInterfaceForNDF@24
I_RpcMgmtEnableDedicatedThreadPool@0
I_RpcNDRCGetWireRepresentation@8
I_RpcNDRSContextEmergencyCleanup@8
I_RpcNegotiateTransferSyntax@4
@ -97,6 +111,8 @@ I_RpcSend@4
I_RpcSendReceive@4
I_RpcServerAllocateIpPort@8
I_RpcServerCheckClientRestriction@4
I_RpcServerDisableExceptionFilter@0
I_RpcServerGetAssociationID@8
I_RpcServerInqAddressChangeFn@0
I_RpcServerInqLocalConnAddress@16
I_RpcServerInqRemoteConnAddress@16
@ -106,12 +122,16 @@ I_RpcServerRegisterForwardFunction@4
I_RpcSetAssociationContext@4
I_RpcServerSetAddressChangeFn@4
I_RpcServerStartService@12
I_RpcServerSubscribeForDisconnectNotification2@12
I_RpcServerSubscribeForDisconnectNotification@8
I_RpcServerUnsubscribeForDisconnectNotification@20
I_RpcServerUseProtseq2A@20
I_RpcServerUseProtseq2W@20
I_RpcServerUseProtseqEp2A@24
I_RpcServerUseProtseqEp2W@24
I_RpcSessionStrictContextHandle@0
I_RpcSetDCOMAppId@4
I_RpcSetSystemHandle@20
I_RpcSsDontSerializeContext@0
I_RpcStopMonitorAssociation@4
I_RpcTransClientMaxFrag@4
@ -125,6 +145,7 @@ I_RpcTransServerReallocBuffer@16
I_RpcTransServerReceiveDirectReady@4
I_RpcTransServerUnprotectThread@4
I_RpcSystemFunction001@12
I_RpcSystemHandleTypeSpecificWork@16
I_RpcTransConnectionAllocatePacket@8
I_RpcTransConnectionFreePacket@8
I_RpcTransConnectionReallocPacket@16
@ -159,7 +180,8 @@ NDRSContextUnmarshall@8
NDRSContextUnmarshallEx@12
NDRcopy@12
NdrAllocate@8
NdrAsyncClientCall@0
NdrAsyncClientCall
NdrAsyncClientCall2
NdrAsyncServerCall@4
NdrByteCountPointerBufferSize@12
NdrByteCountPointerFree@12
@ -170,6 +192,7 @@ NdrCStdStubBuffer_Release@8
NdrClearOutParameters@12
NdrClientCall
NdrClientCall2
NdrClientCall4
NdrClientContextMarshall@12
NdrClientContextUnmarshall@12
NdrClientInitialize@16
@ -216,7 +239,8 @@ NdrCorrelationFree@4
NdrCorrelationInitialize@16
NdrCorrelationPass@4
NdrCreateServerInterfaceFromStub@8
NdrDcomAsyncClientCall@0
NdrDcomAsyncClientCall
NdrDcomAsyncClientCall2
NdrDcomAsyncStubCall@16
NdrDllCanUnloadNow@4
NdrDllGetClassObject@24
@ -262,6 +286,7 @@ NdrInterfacePointerUnmarshall@16
NdrMapCommAndFaultStatus@16
NdrMesProcEncodeDecode
NdrMesProcEncodeDecode2
NdrMesProcEncodeDecode4
NdrMesSimpleTypeAlignSize@4
NdrMesSimpleTypeDecode@12
NdrMesSimpleTypeEncode@16
@ -425,7 +450,9 @@ RpcFreeAuthorizationContext@4
RpcGetAuthorizationContextForClient@36
RpcIfIdVectorFree@4
RpcIfInqId@8
RpcImpersonateClient2@4
RpcImpersonateClient@4
RpcImpersonateClientContainer@4
RpcMgmtEnableIdleCleanup@0
RpcMgmtEpEltInqBegin@24
RpcMgmtEpEltInqDone@4
@ -458,20 +485,29 @@ RpcObjectSetType@8
RpcProtseqVectorFreeA@4
RpcProtseqVectorFreeW@4
RpcRaiseException@4
RpcRevertContainerImpersonation@0
RpcRevertToSelf@0
RpcRevertToSelfEx@4
RpcServerCompleteSecurityCallback@8
RpcServerInqBindingHandle@4
RpcServerInqBindings@4
RpcServerInqBindingsEx@8
RpcServerInqCallAttributesA@8
RpcServerInqCallAttributesW@8
RpcServerInqDefaultPrincNameA@8
RpcServerInqDefaultPrincNameW@8
RpcServerInqIf@12
RpcServerInterfaceGroupActivate@4
RpcServerInterfaceGroupClose@4
RpcServerInterfaceGroupCreateA@32
RpcServerInterfaceGroupCreateW@32
RpcServerInterfaceGroupDeactivate@8
RpcServerInterfaceGroupInqBindings@8
RpcServerListen@12
RpcServerRegisterAuthInfoA@16
RpcServerRegisterAuthInfoW@16
RpcServerRegisterIf2@28
RpcServerRegisterIf3@32
RpcServerRegisterIf@12
RpcServerRegisterIfEx@24
RpcServerSubscribeForNotification@16

View File

@ -5,24 +5,10 @@
;
LIBRARY "urlmon.dll"
EXPORTS
ord_100@16 @100
ord_101 @101
ord_102 @102
ord_103@8 @103
ord_104@24 @104
ord_105@12 @105
ord_106@4 @106
ord_107@8 @107
ord_108 @108
AsyncGetClassBits@44
AsyncInstallDistributionUnit@36
ord_111@8 @111
ord_112@8 @112
ord_113@8 @113
ord_114 @114
ord_115@4 @115
ord_116@8 @116
BindAsyncMoniker@20
CAuthenticateHostUI_CreateInstance@12
CDLGetLongPathNameA@12
CDLGetLongPathNameW@12
CORPolicyProvider@4
@ -36,6 +22,8 @@ CoInternetCompareUrl@12
CoInternetCreateSecurityManager@12
CoInternetCreateZoneManager@12
CoInternetFeatureSettingsChanged
CoInternetGetMobileBrowserAppCompatMode@4
CoInternetGetMobileBrowserForceDesktopMode@4
CoInternetGetProtocolFlags@12
CoInternetGetSecurityUrl@16
CoInternetGetSecurityUrlEx@16
@ -48,6 +36,8 @@ CoInternetParseIUri@28
CoInternetParseUrl@28
CoInternetQueryInfo@28
CoInternetSetFeatureEnabled@12
CoInternetSetMobileBrowserAppCompatMode@4
CoInternetSetMobileBrowserForceDesktopMode@4
CompareSecurityIds@20
CompatFlagsFromClsid@12
CopyBindInfo@8
@ -65,6 +55,7 @@ CreateUriPriv@32
CreateUriWithFragment@20
Extract@8
FaultInIEFeature@16
FileBearsMarkOfTheWeb@8
FindMediaType@8
FindMediaTypeClass@16
FindMimeFromData@32
@ -82,12 +73,14 @@ GetPropertyFromName@8
GetPropertyName@4
GetSoftwareUpdateInfo@8
GetUrlmonThreadNotificationHwnd@0
GetZoneFromAlternateDataStreamEx@8
HlinkGoBack@4
HlinkGoForward@4
HlinkNavigateMoniker@8
HlinkNavigateString@8
HlinkSimpleNavigateToMoniker@32
HlinkSimpleNavigateToString@32
IEGetUserPrivateNamespaceName@0
IEDllLoader@8
IEInstallScope@4
IntlPercentEncodeNormalize@16
@ -108,10 +101,13 @@ RegisterBindStatusCallback@16
RegisterFormatEnumerator@12
RegisterMediaTypeClass@20
RegisterMediaTypes@12
RegisterWebPlatformPermanentSecurityManager@4
ReleaseBindInfo@4
ResetUrlmonLanguageData@0
RestrictHTTP2@4
RevokeBindStatusCallback@8
RevokeFormatEnumerator@8
SetAccessForIEAppContainer@12
SetSoftwareUpdateAdvertisementState@16
ShouldDisplayPunycodeForUri@4
ShouldShowIntranetWarningSecband@4
@ -128,103 +124,11 @@ URLOpenPullStreamA@16
URLOpenPullStreamW@16
URLOpenStreamA@16
URLOpenStreamW@16
UnregisterWebPlatformPermanentSecurityManager@0
UrlMkBuildVersion
UrlMkGetSessionOption@20
UrlMkSetSessionOption@16
UrlmonCleanupCurrentThread@0
WriteHitLogging@4
ZonesReInit@4
ord_304@28 @304
ord_305@12 @305
ord_306@4 @306
ord_307@20 @307
ord_308@4 @308
ord_309@4 @309
ord_310@12 @310
ord_311@12 @311
ord_312@4 @312
ord_313@8 @313
ord_314@4 @314
ord_315@8 @315
ord_316@8 @316
ord_318@8 @318
ord_319@8 @319
ord_320@12 @320
ord_321@8 @321
IECompatLogCSSFix@12
ord_323@12 @323
ord_324 @324
; ord_395 @395 Couldn't determine function argument count. Function doesn't return.
ord_400@8 @400
ord_401@4 @401
ord_403@4 @403
ord_404 @404
ord_406 @406
ord_407 @407
ord_408@8 @408
ord_409@8 @409
ord_410@8 @410
ord_411@8 @411
ord_412@8 @412
ord_413@8 @413
ord_414@8 @414
ord_415@8 @415
ord_416@12 @416
ord_417@12 @417
ord_420@24 @420
ord_421@8 @421
; ord_422 @422 Check!!! forwards to CloseHandle in KERNEL32.dll (ordinal 82)
ord_423@16 @423
ord_430 @430
ord_431@4 @431
ord_432@8 @432
ord_433@4 @433
ord_434@12 @434
ord_435@12 @435
ord_436@8 @436
ord_437@8 @437
ord_438@24 @438
ord_439@4 @439
ord_440@4 @440
ord_441@16 @441
ord_442@8 @442
ord_443@8 @443
ord_444@12 @444
ord_445@8 @445
ord_446@4 @446
ord_447@4 @447
ord_448@4 @448
ord_449@4 @449
ord_450@4 @450
ord_451@4 @451
ord_452@8 @452
ord_453@8 @453
ord_454@8 @454
ord_455 @455
ord_456 @456
ord_457@4 @457
ord_458 @458
ord_460@4 @460
ord_461@8 @461
ord_462@20 @462
ord_463@20 @463
ord_470@4 @470
ord_471 @471
ord_473@4 @473
ord_474@16 @474
ord_475@16 @475
ord_476@16 @476
ord_477@16 @477
ord_478@32 @478
ord_479@32 @479
ord_480@36 @480
ord_481@36 @481
ord_482@12 @482
ord_483@28 @483
ord_484@8 @484
ord_485@8 @485
ord_486@8 @486
ord_487@4 @487
ord_488 @488
ord_489@16 @489
ord_490@44 @490
ord_491@4 @491

View File

@ -1,40 +0,0 @@
;
; Exports of file MSWSOCK.dll
;
; Autogenerated by gen_exportdef
; Written by Kai Tietz, 2007
;
LIBRARY MSWSOCK.dll
EXPORTS
ServiceMain
SvchostPushServiceGlobals
AcceptEx
EnumProtocolsA
EnumProtocolsW
GetAcceptExSockaddrs
GetAddressByNameA
GetAddressByNameW
GetNameByTypeA
GetNameByTypeW
GetServiceA
GetServiceW
GetTypeByNameA
GetTypeByNameW
MigrateWinsockConfiguration
NPLoadNameSpaces
NSPStartup
SetServiceA
SetServiceW
StartWsdpService
StopWsdpService
TransmitFile
WSARecvEx
WSPStartup
dn_expand
getnetbyname
inet_network
rcmd
rexec
rresvport
s_perror
sethostname

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,292 +0,0 @@
;
; Definition file of urlmon.dll
; Automatic generated by gendef
; written by Kai Tietz 2008-2014
;
LIBRARY "urlmon.dll"
EXPORTS
ord_100 @100
ord_101 @101
ord_102 @102
ord_103 @103
ord_104 @104
ord_105 @105
ord_106 @106
ord_107 @107
ord_108 @108
FileBearsMarkOfTheWeb
GetPortFromUrlScheme
ord_111 @111
ord_112 @112
ord_113 @113
ord_114 @114
ord_115 @115
ord_116 @116
ord_117 @117
GetPropertyFromName
GetPropertyName
IsDWORDProperty
IsStringProperty
AsyncGetClassBits
AsyncInstallDistributionUnit
BindAsyncMoniker
CDLGetLongPathNameA
CDLGetLongPathNameW
CORPolicyProvider
CoGetClassObjectFromURL
CoInstall
CoInternetCanonicalizeIUri
CoInternetCombineIUri
CoInternetCombineUrl
CoInternetCombineUrlEx
CoInternetCompareUrl
CoInternetCreateSecurityManager
CoInternetCreateZoneManager
CoInternetFeatureSettingsChanged
CoInternetGetProtocolFlags
CoInternetGetSecurityUrl
CoInternetGetSecurityUrlEx
CoInternetGetSession
CoInternetIsFeatureEnabled
CoInternetIsFeatureEnabledForIUri
CoInternetIsFeatureEnabledForUrl
CoInternetIsFeatureZoneElevationEnabled
CoInternetParseIUri
CoInternetParseUrl
CoInternetQueryInfo
CoInternetSetFeatureEnabled
CompareSecurityIds
CompatFlagsFromClsid
CopyBindInfo
CopyStgMedium
CreateAsyncBindCtx
CreateAsyncBindCtxEx
CreateFormatEnumerator
CreateIUriBuilder
CreateURLMoniker
CreateURLMonikerEx
CreateURLMonikerEx2
CreateUri
CreateUriFromMultiByteString
CreateUriPriv
CreateUriWithFragment
Extract
FaultInIEFeature
FindMediaType
FindMediaTypeClass
FindMimeFromData
GetAddSitesFileUrl
GetClassFileOrMime
GetClassURL
GetComponentIDFromCLSSPEC
GetIDNFlagsForUri
GetIUriPriv
GetIUriPriv2
GetLabelsFromNamedHost
GetMarkOfTheWeb
GetSoftwareUpdateInfo
GetUrlmonThreadNotificationHwnd
GetZoneFromAlternateDataStreamEx
HlinkGoBack
HlinkGoForward
HlinkNavigateMoniker
HlinkNavigateString
HlinkSimpleNavigateToMoniker
HlinkSimpleNavigateToString
IEDllLoader
IEGetUserPrivateNamespaceName
IEInstallScope
IntlPercentEncodeNormalize
IsAsyncMoniker
IsIntranetAvailable
IsJITInProgress
IsLoggingEnabledA
IsLoggingEnabledW
IsValidURL
MkParseDisplayNameEx
ObtainUserAgentString
PrivateCoInstall
QueryAssociations
QueryClsidAssociation
RegisterBindStatusCallback
RegisterFormatEnumerator
RegisterMediaTypeClass
RegisterMediaTypes
RegisterWebPlatformPermanentSecurityManager
ReleaseBindInfo
RevokeBindStatusCallback
RevokeFormatEnumerator
SetAccessForIEAppContainer
SetSoftwareUpdateAdvertisementState
ShouldDisplayPunycodeForUri
ShouldShowIntranetWarningSecband
ShowTrustAlertDialog
URLDownloadA
URLDownloadToCacheFileA
URLDownloadToCacheFileW
URLDownloadToFileA
URLDownloadToFileW
URLDownloadW
URLOpenBlockingStreamA
URLOpenBlockingStreamW
URLOpenPullStreamA
URLOpenPullStreamW
URLOpenStreamA
URLOpenStreamW
UnregisterWebPlatformPermanentSecurityManager
UrlMkBuildVersion
UrlMkGetSessionOption
UrlMkSetSessionOption
UrlmonCleanupCurrentThread
WriteHitLogging
ZonesReInit
ord_304 @304
ord_305 @305
ord_306 @306
ord_307 @307
ord_308 @308
ord_309 @309
ord_310 @310
ord_311 @311
ord_312 @312
ord_313 @313
ord_314 @314
ord_315 @315
ord_316 @316
ord_318 @318
ord_319 @319
ord_320 @320
ord_321 @321
IECompatLogCSSFix
ord_323 @323
ord_324 @324
ord_395 @395
ord_400 @400
ord_401 @401
ord_403 @403
ord_404 @404
ord_406 @406
ord_407 @407
ord_408 @408
ord_409 @409
ord_410 @410
ord_411 @411
ord_412 @412
ord_413 @413
ord_414 @414
ord_415 @415
ord_416 @416
ord_417 @417
ord_421 @421
ord_422 @422
ord_423 @423
ord_430 @430
ord_431 @431
ord_432 @432
ord_433 @433
ord_434 @434
ord_435 @435
ord_436 @436
ord_437 @437
ord_438 @438
ord_439 @439
ord_440 @440
ord_441 @441
ord_442 @442
ord_443 @443
ord_444 @444
ord_445 @445
ord_446 @446
ord_447 @447
ord_448 @448
ord_449 @449
ord_450 @450
ord_451 @451
ord_452 @452
ord_453 @453
ord_454 @454
ord_455 @455
ord_456 @456
ord_457 @457
ord_458 @458
ord_460 @460
ord_461 @461
ord_462 @462
ord_463 @463
ord_470 @470
ord_471 @471
ord_473 @473
ord_474 @474
ord_475 @475
ord_476 @476
ord_477 @477
ord_478 @478
ord_479 @479
ord_480 @480
ord_481 @481
ord_482 @482
ord_483 @483
ord_484 @484
ord_485 @485
ord_486 @486
ord_487 @487
ord_488 @488
ord_489 @489
ord_490 @490
ord_491 @491
ord_492 @492
ord_494 @494
ord_495 @495
ord_496 @496
ord_497 @497
ord_498 @498
ord_499 @499
ord_500 @500
ord_501 @501
ord_502 @502
ord_503 @503
ord_504 @504
ord_505 @505
ord_506 @506
ord_507 @507
ord_508 @508
ord_509 @509
ord_510 @510
ord_511 @511
ord_512 @512
ord_513 @513
ord_514 @514
ord_515 @515
ord_516 @516
ord_517 @517
ord_518 @518
ord_519 @519
ord_520 @520
ord_521 @521
ord_522 @522
ord_523 @523
ord_524 @524
ord_525 @525
ord_526 @526
ord_527 @527
ord_528 @528
ord_529 @529
ord_530 @530
ord_531 @531
ord_532 @532
ord_533 @533
ord_534 @534
ord_535 @535
ord_536 @536
ord_537 @537
ord_538 @538
ord_539 @539
ord_540 @540
ord_541 @541
ord_542 @542
ord_543 @543
ord_544 @544
ord_545 @545
ord_546 @546
ord_547 @547
ord_548 @548

View File

@ -1,29 +0,0 @@
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#include <_mingw_mac.h>
.file "ceil.S"
.text
.align 4
.globl __MINGW_USYMBOL(ceil)
.def __MINGW_USYMBOL(ceil); .scl 2; .type 32; .endef
__MINGW_USYMBOL(ceil):
vmov r2, r3, d0
lsr r3, r3, #20
bic r3, r3, #0x800
movw r2, #0x7ff
cmp r2, r3 /* Check for INF/NAN, just return the input in those cases */
it eq
bxeq lr
vmrs r1, fpscr
bic r0, r1, #0x00c00000
orr r0, r0, #0x00400000 /* Round towards Plus Infinity */
vmsr fpscr, r0
vcvtr.s32.f64 s0, d0
vcvt.f64.s32 d0, s0
vmsr fpscr, r1
bx lr

View File

@ -1,28 +0,0 @@
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#include <_mingw_mac.h>
.file "ceilf.S"
.text
.align 4
.globl __MINGW_USYMBOL(ceilf)
.def __MINGW_USYMBOL(ceilf); .scl 2; .type 32; .endef
__MINGW_USYMBOL(ceilf):
vmov r2, s0
lsr r2, r2, #23
bic r2, r2, #0x100
cmp r2, #0xff /* Check for INF/NAN, just return the input in those cases */
it eq
bxeq lr
vmrs r1, fpscr
bic r0, r1, #0x00c00000
orr r0, r0, #0x00400000 /* Round towards Plus Infinity */
vmsr fpscr, r0
vcvtr.s32.f32 s0, s0
vcvt.f32.s32 s0, s0
vmsr fpscr, r1
bx lr

View File

@ -1,28 +0,0 @@
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#include <_mingw_mac.h>
.file "ceill.S"
.text
.align 4
.globl __MINGW_USYMBOL(ceill)
.def __MINGW_USYMBOL(ceill); .scl 2; .type 32; .endef
__MINGW_USYMBOL(ceill):
vmov r2, r3, d0
lsr r3, r3, #20
bic r3, r3, #0x800
movw r2, #0x7ff
cmp r2, r3 /* Check for INF/NAN, just return the input in those cases */
it eq
bxeq lr
vmrs r1, fpscr
bic r0, r1, #0x00c00000
orr r0, r0, #0x00400000 /* Round towards Plus Infinity */
vmsr fpscr, r0
vcvtr.s32.f64 s0, d0
vcvt.f64.s32 d0, s0
vmsr fpscr, r1
bx lr

View File

@ -1,11 +0,0 @@
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#include <math.h>
long double copysignl(long double x, long double y)
{
return copysign(x, y);
}

View File

@ -1,28 +0,0 @@
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#include <_mingw_mac.h>
.file "floor.S"
.text
.p2align 4,,15
.globl __MINGW_USYMBOL(floor)
.def __MINGW_USYMBOL(floor); .scl 2; .type 32; .endef
__MINGW_USYMBOL(floor):
vmov r2, r3, d0
lsr r3, r3, #20
bic r3, r3, #0x800
movw r2, #0x7ff
cmp r2, r3 /* Check for INF/NAN, just return the input in those cases */
it eq
bxeq lr
vmrs r1, fpscr
bic r0, r1, #0x00c00000
orr r0, r0, #0x00800000 /* Round towards Minus Infinity */
vmsr fpscr, r0
vcvtr.s32.f64 s0, d0
vcvt.f64.s32 d0, s0
vmsr fpscr, r1
bx lr

View File

@ -1,27 +0,0 @@
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#include <_mingw_mac.h>
.file "floorf.S"
.text
.p2align 4,,15
.globl __MINGW_USYMBOL(floorf)
.def __MINGW_USYMBOL(floorf); .scl 2; .type 32; .endef
__MINGW_USYMBOL(floorf):
vmov r2, s0
lsr r2, r2, #23
bic r2, r2, #0x100
cmp r2, #0xff /* Check for INF/NAN, just return the input in those cases */
it eq
bxeq lr
vmrs r1, fpscr
bic r0, r1, #0x00c00000
orr r0, r0, #0x00800000 /* Round towards Minus Infinity */
vmsr fpscr, r0
vcvtr.s32.f32 s0, s0
vcvt.f32.s32 s0, s0
vmsr fpscr, r1
bx lr

View File

@ -1,28 +0,0 @@
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#include <_mingw_mac.h>
.file "floorl.S"
.text
.align 4
.globl __MINGW_USYMBOL(floorl)
.def __MINGW_USYMBOL(floorl); .scl 2; .type 32; .endef
__MINGW_USYMBOL(floorl):
vmov r2, r3, d0
lsr r3, r3, #20
bic r3, r3, #0x800
movw r2, #0x7ff
cmp r2, r3 /* Check for INF/NAN, just return the input in those cases */
it eq
bxeq lr
vmrs r1, fpscr
bic r0, r1, #0x00c00000
orr r0, r0, #0x00800000 /* Round towards Minus Infinity */
vmsr fpscr, r0
vcvtr.s32.f64 s0, d0
vcvt.f64.s32 d0, s0
vmsr fpscr, r1
bx lr

View File

@ -1,16 +0,0 @@
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#include <math.h>
long double ldexpl(long double x, int n)
{
#if defined(__arm__) || defined(_ARM_)
return ldexp(x, n);
#else
#error Not supported on your platform yet
#endif
}

View File

@ -1,64 +0,0 @@
/*
This Software is provided under the Zope Public License (ZPL) Version 2.1.
Copyright (c) 2014 by the mingw-w64 project
See the AUTHORS file for the list of contributors to the mingw-w64 project.
This license has been certified as open source. It has also been designated
as GPL compatible by the Free Software Foundation (FSF).
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
1. Redistributions in source code must retain the accompanying copyright
notice, this list of conditions, and the following disclaimer.
2. Redistributions in binary form must reproduce the accompanying
copyright notice, this list of conditions, and the following disclaimer
in the documentation and/or other materials provided with the
distribution.
3. Names of the copyright holders must not be used to endorse or promote
products derived from this software without prior written permission
from the copyright holders.
4. The right to distribute this software or to use it for any purpose does
not give you the right to use Servicemarks (sm) or Trademarks (tm) of
the copyright holders. Use of them is covered by separate agreement
with the copyright holders.
5. If any files are modified, you must cause the modified files to carry
prominent notices stating that you changed the files and the date of
any change.
Disclaimer
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS ``AS IS'' AND ANY EXPRESSED
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 HOLDERS 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.
*/
#include <math.h>
double log2(double x)
{
return log(x) / 0.69314718246459960938;
}
float log2f(float x)
{
return logf(x) / 0.69314718246459960938f;
}
long double log2l(long double x)
{
#if defined(__arm__) || defined(_ARM_)
return log2(x);
#else
#error Not supported on your platform yet
#endif
}

View File

@ -1,64 +0,0 @@
/*
This Software is provided under the Zope Public License (ZPL) Version 2.1.
Copyright (c) 2014 by the mingw-w64 project
See the AUTHORS file for the list of contributors to the mingw-w64 project.
This license has been certified as open source. It has also been designated
as GPL compatible by the Free Software Foundation (FSF).
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
1. Redistributions in source code must retain the accompanying copyright
notice, this list of conditions, and the following disclaimer.
2. Redistributions in binary form must reproduce the accompanying
copyright notice, this list of conditions, and the following disclaimer
in the documentation and/or other materials provided with the
distribution.
3. Names of the copyright holders must not be used to endorse or promote
products derived from this software without prior written permission
from the copyright holders.
4. The right to distribute this software or to use it for any purpose does
not give you the right to use Servicemarks (sm) or Trademarks (tm) of
the copyright holders. Use of them is covered by separate agreement
with the copyright holders.
5. If any files are modified, you must cause the modified files to carry
prominent notices stating that you changed the files and the date of
any change.
Disclaimer
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS ``AS IS'' AND ANY EXPRESSED
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 HOLDERS 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.
*/
#include <math.h>
double scalbn(double x, int exp)
{
return x * exp2(exp);
}
float scalbnf(float x, int exp)
{
return x * exp2f(exp);
}
long double scalbnl(long double x, int exp)
{
#if defined(__arm__) || defined(_ARM_)
return scalbn(x, exp);
#else
#error Not supported on your platform yet
#endif
}

View File

@ -1,29 +0,0 @@
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#include <math.h>
void sincos (double __x, double *p_sin, double *p_cos)
{
*p_sin = sin(__x);
*p_cos = cos(__x);
}
void sincosf (float __x, float *p_sin, float *p_cos)
{
*p_sin = sinf(__x);
*p_cos = cosf(__x);
}
void sincosl (long double __x, long double *p_sin, long double *p_cos)
{
#if defined(__arm__) || defined(_ARM_)
*p_sin = sin(__x);
*p_cos = cos(__x);
#else
#error Not supported on your platform yet
#endif
}

View File

@ -1,16 +0,0 @@
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#include <_mingw_mac.h>
.file "ceil.S"
.text
.align 2
.globl __MINGW_USYMBOL(ceil)
.def __MINGW_USYMBOL(ceil); .scl 2; .type 32; .endef
__MINGW_USYMBOL(ceil):
frintp d0, d0
ret

View File

@ -1,16 +0,0 @@
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#include <_mingw_mac.h>
.file "ceilf.S"
.text
.align 2
.globl __MINGW_USYMBOL(ceilf)
.def __MINGW_USYMBOL(ceilf); .scl 2; .type 32; .endef
__MINGW_USYMBOL(ceilf):
frintp s0, s0
ret

View File

@ -1,15 +0,0 @@
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#include <_mingw_mac.h>
.file "ceill.S"
.text
.align 2
.globl __MINGW_USYMBOL(ceill)
.def __MINGW_USYMBOL(ceill); .scl 2; .type 32; .endef
__MINGW_USYMBOL(ceill):
frintp d0, d0
ret

View File

@ -1,11 +0,0 @@
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#include <math.h>
long double copysignl(long double x, long double y)
{
return copysign(x, y);
}

View File

@ -1,15 +0,0 @@
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#include <_mingw_mac.h>
.file "floor.S"
.text
.p2align 2
.globl __MINGW_USYMBOL(floor)
.def __MINGW_USYMBOL(floor); .scl 2; .type 32; .endef
__MINGW_USYMBOL(floor):
frintm d0, d0
ret

View File

@ -1,15 +0,0 @@
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#include <_mingw_mac.h>
.file "floorf.S"
.text
.p2align 2
.globl __MINGW_USYMBOL(floorf)
.def __MINGW_USYMBOL(floorf); .scl 2; .type 32; .endef
__MINGW_USYMBOL(floorf):
frintm s0, s0
ret

View File

@ -1,15 +0,0 @@
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#include <_mingw_mac.h>
.file "floorl.S"
.text
.align 2
.globl __MINGW_USYMBOL(floorl)
.def __MINGW_USYMBOL(floorl); .scl 2; .type 32; .endef
__MINGW_USYMBOL(floorl):
frintm d0, d0
ret

View File

@ -1,16 +0,0 @@
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#include <math.h>
long double ldexpl(long double x, int n)
{
#if defined(__aarch64__) || defined(_ARM64_)
return ldexp(x, n);
#else
#error Not supported on your platform yet
#endif
}

View File

@ -1,26 +0,0 @@
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#include <math.h>
double log2(double x)
{
return log(x) / 0.69314718246459960938;
}
float log2f(float x)
{
return logf(x) / 0.69314718246459960938f;
}
long double log2l(long double x)
{
#if defined(__aarch64__) || defined(_ARM64_)
return log2(x);
#else
#error Not supported on your platform yet
#endif
}

View File

@ -1,26 +0,0 @@
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#include <math.h>
double scalbn(double x, int exp)
{
return x * exp2(exp);
}
float scalbnf(float x, int exp)
{
return x * exp2f(exp);
}
long double scalbnl(long double x, int exp)
{
#if defined(__aarch64__) || defined(_ARM64_)
return scalbn(x, exp);
#else
#error Not supported on your platform yet
#endif
}

View File

@ -1,29 +0,0 @@
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#include <math.h>
void sincos (double __x, double *p_sin, double *p_cos)
{
*p_sin = sin(__x);
*p_cos = cos(__x);
}
void sincosf (float __x, float *p_sin, float *p_cos)
{
*p_sin = sinf(__x);
*p_cos = cosf(__x);
}
void sincosl (long double __x, long double *p_sin, long double *p_cos)
{
#if defined(__aarch64__) || defined(_ARM64_)
*p_sin = sin(__x);
*p_cos = cos(__x);
#else
#error Not supported on your platform yet
#endif
}

View File

@ -5,6 +5,15 @@
*/
#include "cephes_mconf.h"
#if defined(_ARM_) || defined(__arm__) || defined(_ARM64_) || defined(__aarch64__)
#include <math.h>
long double coshl(long double x)
{
return cosh(x);
}
#else
#ifndef _SET_ERRNO
#define _SET_ERRNO(x)
#endif
@ -21,7 +30,7 @@ long double coshl(long double x)
else if (x_class == FP_INFINITE)
{
errno = ERANGE;
return x;
return INFINITY;
}
x = fabsl (x);
if (x > (MAXLOGL + LOGE2L))
@ -43,3 +52,4 @@ long double coshl(long double x)
y = 0.5L * (y + 1.0L / y);
return y;
}
#endif

View File

@ -108,6 +108,17 @@ Copyright 1984, 1995 by Stephen L. Moshier
long double erfl(long double x);
#if defined(__arm__) || defined(_ARM_) || defined(__aarch64__) || defined(_ARM64_)
long double erfcl(long double x)
{
return erfc(x);
}
long double erfl(long double x)
{
return erf(x);
}
#else
/* erfc(x) = exp(-x^2) P(1/x)/Q(1/x)
1/8 <= 1/x <= 1
Peak relative error 5.8e-21 */
@ -243,6 +254,9 @@ long double erfcl(long double a)
if (isinf (a))
return (signbit(a) ? 2.0 : 0.0);
if (isnan (a))
return (a);
x = fabsl (a);
if (x < 1.0L)
@ -301,3 +315,4 @@ long double erfl(long double x)
y = x * polevll(z, T, 6) / p1evll(z, U, 6);
return (y);
}
#endif

View File

@ -4,6 +4,7 @@
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#include "fp_consts.h"
#include <math.h>
const union _ieee_rep __QNANL = { __LONG_DOUBLE_QNAN_REP };
const union _ieee_rep __SNANL = { __LONG_DOUBLE_SNAN_REP };
@ -15,6 +16,10 @@ const union _ieee_rep __DENORML = { __LONG_DOUBLE_DENORM_REP };
long double nanl (const char *);
long double nanl (const char * tagp __attribute__((unused)) )
{
#if defined(__arm__) || defined(_ARM_) || defined(__aarch64__) || defined(_ARM64_)
return nan("");
#else
return __QNANL.ldouble_val;
#endif
}

View File

@ -7,20 +7,20 @@
int __fpclassifyl (long double _x){
#if defined(__x86_64__) || defined(_AMD64_)
__mingw_fp_types_t hlp;
__mingw_ldbl_type_t hlp;
unsigned int e;
hlp.ld = &_x;
e = hlp.ldt->lh.sign_exponent & 0x7fff;
hlp.x = _x;
e = hlp.lh.sign_exponent & 0x7fff;
if (!e)
{
unsigned int h = hlp.ldt->lh.high;
if (!(hlp.ldt->lh.low | h))
unsigned int h = hlp.lh.high;
if (!(hlp.lh.low | h))
return FP_ZERO;
else if (!(h & 0x80000000))
return FP_SUBNORMAL;
}
else if (e == 0x7fff)
return (((hlp.ldt->lh.high & 0x7fffffff) | hlp.ldt->lh.low) == 0 ?
return (((hlp.lh.high & 0x7fffffff) | hlp.lh.low) == 0 ?
FP_INFINITE : FP_NAN);
return FP_NORMAL;
#elif defined(__arm__) || defined(_ARM_) || defined(__aarch64__) || defined(_ARM64_)

View File

@ -23,7 +23,6 @@ Direct inquiries to 30 Frost Street, Cambridge, MA 02140
by scalbnl to avoid duplicated range checks.
*/
extern long double __INFL;
#define PRECL 32
long double
@ -38,7 +37,7 @@ hypotl (long double x, long double y)
{
/* Annex F.9.4.3, hypot returns +infinity if
either component is an infinity, even when the
other compoent is NaN. */
other component is NaN. */
return (isinf(xx) || isinf(yy)) ? INFINITY : NAN;
}
@ -73,7 +72,7 @@ hypotl (long double x, long double y)
if (exx > LDBL_MAX_EXP)
{
errno = ERANGE;
return __INFL;
return INFINITY;
}
if (exx < LDBL_MIN_EXP)
return 0.0L;

View File

@ -9,12 +9,12 @@ int
__isnanl (long double _x)
{
#if defined(__x86_64__) || defined(_AMD64_)
__mingw_fp_types_t ld;
__mingw_ldbl_type_t ld;
int xx, signexp;
ld.ld = &_x;
signexp = (ld.ldt->lh.sign_exponent & 0x7fff) << 1;
xx = (int) (ld.ldt->lh.low | (ld.ldt->lh.high & 0x7fffffffu)); /* explicit */
ld.x = _x;
signexp = (ld.lh.sign_exponent & 0x7fff) << 1;
xx = (int) (ld.lh.low | (ld.lh.high & 0x7fffffffu)); /* explicit */
signexp |= (unsigned int) (xx | (-xx)) >> 31;
signexp = 0xfffe - signexp;
return (int) ((unsigned int) signexp) >> 16;

View File

@ -52,7 +52,7 @@ float __lgammaf_r(float x, int* sgngamf)
#ifdef INFINITIES
if (!isfinite(x))
return (x);
return (INFINITY);
#endif
if (x < 0.0)

View File

@ -5,6 +5,15 @@
*/
#include "cephes_mconf.h"
#if defined(__arm__) || defined(_ARM_) || defined(__aarch64__) || defined(_ARM64_)
double lgamma(double x);
long double lgammal(long double x)
{
return lgamma(x);
}
#else
#if UNK
static uLD S[9] = {
{ { -1.193945051381510095614E-3L } },
@ -216,7 +225,7 @@ long double __lgammal_r(long double x, int* sgngaml)
*sgngaml = 1;
#ifdef NANS
if (isnanl(x))
return(NANL);
return x;
#endif
#ifdef INFINITIES
if (!isfinitel(x))
@ -334,4 +343,4 @@ long double lgammal(long double x)
{
return (__lgammal_r (x, &signgam));
}
#endif

View File

@ -19,8 +19,23 @@ long long llrint (double x)
retval = (long long)ceil(x);
else if (mode == FE_TOWARDZERO)
retval = x >= 0 ? (long long)floor(x) : (long long)ceil(x);
else
retval = x >= 0 ? (long long)floor(x + 0.5) : (long long)ceil(x - 0.5);
else {
// Break `x` into integral and fractional parts.
double intg, frac;
frac = modf(x, &intg);
frac = fabs(frac);
// Convert the truncated integral part to an integer.
retval = intg;
if (frac < 0.5) {
// Round towards zero.
} else if (frac > 0.5) {
// Round towards infinities.
retval += signbit(x) ? -1 : 1;
} else {
// Round to the nearest even number.
retval += retval % 2;
}
}
#endif
return retval;
}

View File

@ -19,8 +19,23 @@ long long llrintf (float x)
retval = (long long)ceilf(x);
else if (mode == FE_TOWARDZERO)
retval = x >= 0 ? (long long)floorf(x) : (long long)ceilf(x);
else
retval = x >= 0 ? (long long)floorf(x + 0.5) : (long long)ceilf(x - 0.5);
else {
// Break `x` into integral and fractional parts.
float intg, frac;
frac = modff(x, &intg);
frac = fabsf(frac);
// Convert the truncated integral part to an integer.
retval = intg;
if (frac < 0.5) {
// Round towards zero.
} else if (frac > 0.5) {
// Round towards infinities.
retval += signbit(x) ? -1 : 1;
} else {
// Round to the nearest even number.
retval += retval % 2;
}
}
#endif
return retval;
}

View File

@ -19,8 +19,23 @@ long long llrintl (long double x)
retval = (long long)ceil(x);
else if (mode == FE_TOWARDZERO)
retval = x >= 0 ? (long long)floor(x) : (long long)ceil(x);
else
retval = x >= 0 ? (long long)floor(x + 0.5) : (long long)ceil(x - 0.5);
else {
// Break `x` into integral and fractional parts.
long double intg, frac;
frac = modfl(x, &intg);
frac = fabsl(frac);
// Convert the truncated integral part to an integer.
retval = intg;
if (frac < 0.5) {
// Round towards zero.
} else if (frac > 0.5) {
// Round towards infinities.
retval += signbit(x) ? -1 : 1;
} else {
// Round to the nearest even number.
retval += retval % 2;
}
}
#endif
return retval;
}

View File

@ -3,33 +3,16 @@
* No warranty is given; refer to the file DISCLAIMER within this package.
*/
typedef union __mingw_ldbl_type_t
{
long double x;
__extension__ struct {
unsigned int low, high;
int sign_exponent : 16;
int res1 : 16;
int res0 : 32;
} lh;
} __mingw_ldbl_type_t;
typedef union __mingw_fp_types_t
{
long double *ld;
__mingw_ldbl_type_t *ldt;
} __mingw_fp_types_t;
#include <math.h>
#define __FP_SIGNBIT 0x0200
extern int __signbit (double x);
int __signbitl (long double x);
int __signbitl (long double x) {
#if defined(__x86_64__) || defined(_AMD64_)
__mingw_fp_types_t ld;
ld.ld = &x;
return ((ld.ldt->lh.sign_exponent & 0x8000) != 0);
__mingw_ldbl_type_t ld;
ld.x = x;
return ((ld.lh.sign_exponent & 0x8000) != 0);
#elif defined(__arm__) || defined(_ARM_) || defined(__aarch64__) || defined(_ARM64_)
return __signbit(x);
#elif defined(__i386__) || defined(_X86_)

View File

@ -6,6 +6,15 @@
#include "cephes_mconf.h"
#include <errno.h>
#if defined(_ARM_) || defined(__arm__) || defined(_ARM64_) || defined(__aarch64__)
#include <math.h>
long double sinhl(long double x)
{
return sinh(x);
}
#else
#ifdef UNK
static uLD P[] = {
{ { 1.7550769032975377032681E-6L } },
@ -97,4 +106,4 @@ long double sinhl(long double x)
a *= a;
return (x + x * a * (polevll(a,P,3)/polevll(a,Q,4)));
}
#endif

View File

@ -8,6 +8,15 @@
#define _SET_ERRNO(x)
#endif
#if defined(_ARM_) || defined(__arm__) || defined(_ARM64_) || defined(__aarch64__)
#include <math.h>
long double tanhl(long double x)
{
return tanh(x);
}
#else
#ifdef UNK
static uLD P[] = {
{ { -6.8473739392677100872869E-5L } },
@ -89,4 +98,4 @@ long double tanhl(long double x)
}
return (z);
}
#endif

View File

@ -168,6 +168,9 @@ double __tgamma_r(double x, int *sgngam)
return (x);
#endif
#endif
if (x == 0.0)
return copysign(HUGE_VAL, x);
q = fabs(x);
if (q > 33.0)
@ -180,8 +183,8 @@ double __tgamma_r(double x, int *sgngam)
gsing:
_SET_ERRNO(EDOM);
mtherr("tgamma", SING);
#ifdef INFINITIES
return (INFINITY);
#ifdef NANS
return (NAN);
#else
return (MAXNUM);
#endif

View File

@ -82,6 +82,8 @@ float __tgammaf_r( float x, int* sgngamf)
return (x);
#endif
#endif
if (x == 0.0)
return copysignf(HUGE_VALF, x);
*sgngamf = 1;
negative = 0;
@ -96,8 +98,8 @@ float __tgammaf_r( float x, int* sgngamf)
gsing:
_SET_ERRNO(EDOM);
mtherr("tgammaf", SING);
#ifdef INFINITIES
return (INFINITYF);
#ifdef NANS
return (NAN);
#else
return (MAXNUMF);
#endif

View File

@ -5,6 +5,14 @@
*/
#include "cephes_mconf.h"
#if defined(__arm__) || defined(_ARM_) || defined(__aarch64__) || defined(_ARM64_)
double tgamma(double x);
long double tgammal(long double x)
{
return tgamma(x);
}
#else
/*
gamma(x+2) = gamma(x+2) P(x)/Q(x)
0 <= x <= 1
@ -272,7 +280,7 @@ long double __tgammal_r(long double x, int* sgngaml)
*sgngaml = 1;
#ifdef NANS
if (isnanl(x))
return (NANL);
return x;
#endif
#ifdef INFINITIES
#ifdef NANS
@ -285,6 +293,9 @@ long double __tgammal_r(long double x, int* sgngaml)
return (x);
#endif
#endif
if (x == 0.0L)
return copysignl(HUGE_VALL, x);
q = fabsl(x);
if (q > 13.0L)
@ -299,8 +310,8 @@ long double __tgammal_r(long double x, int* sgngaml)
gsing:
_SET_ERRNO(EDOM);
mtherr("tgammal", SING);
#ifdef INFINITIES
return (INFINITYL);
#ifdef NANS
return (NAN);
#else
return (*sgngaml * MAXNUML);
#endif
@ -390,4 +401,4 @@ long double tgammal(long double x)
int local_sgngaml = 0;
return (__tgammal_r(x, &local_sgngaml));
}
#endif

View File

@ -50,15 +50,19 @@ __FLT_TYPE
__FLT_ABI(acosh) (__FLT_TYPE x)
{
int x_class = fpclassify (x);
if (x_class == FP_NAN || x < __FLT_CST(1.0))
if (x_class == FP_NAN)
{
__FLT_RPT_DOMAIN ("acosh", x, 0.0, x);
return x;
}
else if (x < __FLT_CST(1.0))
{
__FLT_RPT_DOMAIN ("acosh", x, 0.0, __FLT_NAN);
return __FLT_NAN;
}
else if (x_class == FP_INFINITE)
{
__FLT_RPT_DOMAIN ("acosh", x, 0.0, __FLT_NAN);
return __FLT_NAN;
return INFINITY;
}
if (x > __FLT_CST(0x1p32))

View File

@ -1,130 +0,0 @@
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#include <_mingw_mac.h>
/*
* frexpl(long double x, int* expnt) extracts the exponent from x.
* It returns an integer power of two to expnt and the significand
* between 0.5 and 1 to y. Thus x = y * 2**expn.
*/
#ifdef __x86_64__
.align 8
#else
.align 2
#endif
.globl __MINGW_USYMBOL(frexpl)
__MINGW_USYMBOL(frexpl):
#ifdef __x86_64__
pushq %rbp
movq %rsp,%rbp
subq $48,%rsp
pushq %rsi
fldt (%rdx)
movq %rcx,%r9
fld %st(0)
fstpt -12(%rbp)
leaq -4(%rbp),%rcx
movw -4(%rbp),%dx
andl $32767,%edx
jne L25
fldz
fucompp
fnstsw %ax
andb $68,%ah
xorb $64,%ah
jne L21
movl $0,(%r8)
fldz
jmp L24
.align 4,0x90
.align 4,0x90
L21:
fldt -12(%rbp)
fadd %st(0),%st
fstpt -12(%rbp)
decl %edx
movw (%rcx),%si
andl $32767,%esi
jne L22
cmpl $-66,%edx
jg L21
L22:
add %esi,%edx
jmp L19
.align 2,0x90
L25:
fstp %st(0)
L19:
addl $-16382,%edx
movl %edx,(%r8)
movw (%rcx),%ax
andl $-32768,%eax
orl $16382,%eax
movw %ax,(%rcx)
fldt -12(%rbp)
L24:
popq %rsi
movq %r9,%rax
movq $0,8(%r9)
fstpt (%r9)
leave
ret
#else
pushl %ebp
movl %esp,%ebp
subl $24,%esp
pushl %esi
pushl %ebx
fldt 8(%ebp)
movl 20(%ebp),%ebx
fld %st(0)
fstpt -12(%ebp)
leal -4(%ebp),%ecx
movw -4(%ebp),%dx
andl $32767,%edx
jne L25
fldz
fucompp
fnstsw %ax
andb $68,%ah
xorb $64,%ah
jne L21
movl $0,(%ebx)
fldz
jmp L24
.align 2,0x90
.align 2,0x90
L21:
fldt -12(%ebp)
fadd %st(0),%st
fstpt -12(%ebp)
decl %edx
movw (%ecx),%si
andl $32767,%esi
jne L22
cmpl $-66,%edx
jg L21
L22:
addl %esi,%edx
jmp L19
.align 2,0x90
L25:
fstp %st(0)
L19:
addl $-16382,%edx
movl %edx,(%ebx)
movw (%ecx),%ax
andl $-32768,%eax
orl $16382,%eax
movw %ax,(%ecx)
fldt -12(%ebp)
L24:
leal -32(%ebp),%esp
popl %ebx
popl %esi
leave
ret
#endif

View File

@ -45,9 +45,7 @@ ilogb (double x)
if (hx < 0x7ff00000)
return (hx >> 20) - 1023;
lx = hlp.lh.low;
if (((hx ^ 0x7ff00000) | lx) == 0)
return 0x7fffffff;
return 0x80000000;
return 0x7fffffff;
} */
subq $24, %rsp
.seh_stackalloc 24
@ -80,13 +78,7 @@ ilogb (double x)
.L2:
cmpl $2146435071, %edx
jle .L13
movsd %xmm0, 8(%rsp)
movq 8(%rsp), %rax
xorl $2146435072, %edx
orl %eax, %edx
cmpl $1, %edx
sbbl %eax, %eax
addl $-2147483648, %eax
movl $2147483647, %eax
.L3:
addq $24, %rsp
ret
@ -126,6 +118,8 @@ ilogb (double x)
andb %ah, %dh
cmpb $0x05, %dh
je 1f /* Is +-Inf, jump. */
cmpb $0x01, %dh
je 1f /* Is NaN, jump. */
fxtract
pushl %eax

View File

@ -34,9 +34,7 @@ ilogbf (float x)
}
if (hx < 0x7f800000)
return (hx >> 23) - 127;
if (hx == 0x7f800000)
return 0x7fffffff;
return 0x80000000;
return 0x7fffffff;
} */
subq $24, %rsp
.seh_stackalloc 24
@ -65,10 +63,7 @@ ilogbf (float x)
.L2:
cmpl $2139095039, %edx
jle .L10
cmpl $2139095040, %edx
movl $2147483647, %eax
movl $-2147483648, %edx
cmovne %edx, %eax
addq $24, %rsp
ret
.p2align 4,,10
@ -92,6 +87,8 @@ ilogbf (float x)
andb %ah, %dh
cmpb $0x05, %dh
je 1f /* Is +-Inf, jump. */
cmpb $0x01, %dh
je 1f /* Is Nan, jump. */
fxtract
pushl %eax

View File

@ -23,6 +23,8 @@ __MINGW_USYMBOL(ilogbl):
andb %ah, %dh
cmpb $0x05, %dh
je 1f /* Is +-Inf, jump. */
cmpb $0x01, %dh
je 1f /* Is NaN, jump. */
fxtract
pushq %rax
@ -48,6 +50,8 @@ __MINGW_USYMBOL(ilogbl):
andb %ah, %dh
cmpb $0x05, %dh
je 1f /* Is +-Inf, jump. */
cmpb $0x01, %dh
je 1f /* Is NaN, jump. */
fxtract
pushl %eax

View File

@ -56,6 +56,8 @@ __FLT_ABI(log) (__FLT_TYPE x)
__FLT_RPT_ERANGE ("log", x, 0.0, -__FLT_HUGE_VAL, 1);
return -__FLT_HUGE_VAL;
}
else if (x_class == FP_NAN)
return x;
else if (signbit (x))
{
__FLT_RPT_DOMAIN ("log", x, 0.0, __FLT_NAN);
@ -63,7 +65,5 @@ __FLT_ABI(log) (__FLT_TYPE x)
}
else if (x_class == FP_INFINITE)
return __FLT_HUGE_VAL;
else if (x_class == FP_NAN)
return __FLT_NAN;
return (__FLT_TYPE) __logl_internal ((long double) x);
}

View File

@ -25,8 +25,10 @@ logb (double x)
return -1.0 / fabs (x);
if (hx >= 0x7ff00000)
return x * x;
if ((hx >>= 20) == 0) /* IEEE 754 logb */
return -1022.0;
if ((hx >>= 20) == 0) {
unsigned long long mantissa = hlp.val & 0xfffffffffffffULL;
return -1023.0 - (__builtin_clzll(mantissa) - 12);
}
return (double) (hx - 1023);
#else
double res = 0.0;

View File

@ -24,8 +24,8 @@ logbf (float x)
return (float)-1.0 / fabsf (x);
if (v >= 0x7f800000)
return x * x;
if ((v >>= 23) == 0) /* IEEE 754 logb */
return -126.0;
if ((v >>= 23) == 0)
return -127.0 - (__builtin_clzl(hlp.val & 0x7fffff) - 9);
return (float) (v - 127);
#else
float res = 0.0F;

View File

@ -121,9 +121,13 @@ __FLT_ABI(pow) (__FLT_TYPE x, __FLT_TYPE y)
return __FLT_CST(1.0);
else if (x_class == FP_NAN || y_class == FP_NAN)
{
rslt = (signbit(x) ? -__FLT_NAN : __FLT_NAN);
__FLT_RPT_DOMAIN ("pow", x, y, rslt);
return rslt;
if (x_class == FP_NAN) {
__FLT_RPT_DOMAIN ("pow", x, y, x);
return x;
} else {
__FLT_RPT_DOMAIN ("pow", x, y, y);
return y;
}
}
else if (x_class == FP_ZERO)
{

View File

@ -1,31 +0,0 @@
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#include <windows.h>
#include <stdio.h>
#include <stdlib.h>
#include <wchar.h>
#include <signal.h>
void __cdecl _wassert (const wchar_t *, const wchar_t *,unsigned);
void __cdecl _assert (const char *, const char *, unsigned);
void __cdecl
_assert (const char *_Message, const char *_File, unsigned _Line)
{
wchar_t *m, *f;
int i;
m = (wchar_t *) malloc ((strlen (_Message) + 1) * sizeof (wchar_t));
f = (wchar_t *) malloc ((strlen (_File) + 1) * sizeof (wchar_t));
for (i = 0; _Message[i] != 0; i++)
m[i] = ((wchar_t) _Message[i]) & 0xff;
m[i] = 0;
for (i = 0; _File[i] != 0; i++)
f[i] = ((wchar_t) _File[i]) & 0xff;
f[i] = 0;
_wassert (m, f, _Line);
free (m);
free (f);
}

View File

@ -1,21 +0,0 @@
#define __CRT__NO_INLINE
#include <time.h>
#include <memory.h>
/* FIXME: Relying on _USE_32BIT_TIME_T, which is a user-macro,
during CRT compilation is plainly broken. Need an appropriate
implementation to provide users the ability of compiling the
CRT only with 32-bit time_t behavior. */
#ifndef _USE_32BIT_TIME_T
double __cdecl difftime(time_t _Time1,time_t _Time2)
{
return _difftime64(_Time1,_Time2);
}
#else
double __cdecl difftime(time_t _Time1,time_t _Time2)
{
return _difftime32(_Time1,_Time2);
}
#endif

View File

@ -1,9 +0,0 @@
#include <time.h>
double __cdecl _difftime32(__time32_t _Time1,__time32_t _Time2)
{
__time32_t r = _Time1 - _Time2;
if (r > _Time1)
return -((double) (_Time2 - _Time1));
return (double) r;
}

View File

@ -1,9 +0,0 @@
#include <time.h>
double __cdecl _difftime64(__time64_t _Time1,__time64_t _Time2)
{
__time64_t r = _Time1 - _Time2;
if (r > _Time1)
return -((double) (_Time2 - _Time1));
return (double) r;
}

View File

@ -1,6 +0,0 @@
#include <process.h>
int __cdecl execv(const char *_Filename,char *const _ArgList[])
{
return _execv (_Filename, (const char *const *)_ArgList);
}

View File

@ -1,6 +0,0 @@
#include <process.h>
int __cdecl execve(const char *_Filename,char *const _ArgList[],char *const _Env[])
{
return _execve (_Filename, (const char *const *)_ArgList, (const char * const *)_Env);
}

View File

@ -1,6 +0,0 @@
#include <process.h>
int __cdecl execvp(const char *_Filename,char *const _ArgList[])
{
return _execvp (_Filename, (const char *const *)_ArgList);
}

View File

@ -1,6 +0,0 @@
#include <process.h>
int __cdecl execvpe(const char *_Filename,char *const _ArgList[],char *const _Env[])
{
return _execvpe (_Filename, (const char *const *)_ArgList, (const char *const *)_Env);
}

View File

@ -52,7 +52,7 @@ int fesetenv (const fenv_t * envp)
else if (envp == FE_PC53_ENV)
/*
* MS _fpreset() does same *except* it sets control word
* to 0x27f (53-bit precison).
* to 0x27f (53-bit precision).
* We force calling _fpreset in msvcrt.dll
*/
@ -65,16 +65,17 @@ int fesetenv (const fenv_t * envp)
else
{
fenv_t env = *envp;
int has_sse = __mingw_has_sse ();
int _mxcsr;
__asm__ ("fnstenv %0\n"
"stmxcsr %1" : "=m" (*&env), "=m" (*&_mxcsr));
/*_mxcsr = ((int)envp->__unused0 << 16) | (int)envp->__unused1; *//* mxcsr low and high */
if (has_sse)
__asm__ ("stmxcsr %0" : "=m" (*&_mxcsr));
env.__unused0 = 0xffff;
env.__unused1 = 0xffff;
__asm__ volatile ("fldenv %0" : : "m" (env)
: "st", "st(1)", "st(2)", "st(3)", "st(4)",
"st(5)", "st(6)", "st(7)");
if (__mingw_has_sse ())
if (has_sse)
__asm__ volatile ("ldmxcsr %0" : : "m" (*&_mxcsr));
}

View File

@ -19,7 +19,7 @@ int feupdateenv (const fenv_t * envp)
{
unsigned int _fexcept = fetestexcept (FE_ALL_EXCEPT); /*save excepts */
fesetenv (envp); /* install the env */
feraiseexcept (_fexcept); /* raise the execept */
feraiseexcept (_fexcept); /* raise the except */
return 0;
}

View File

@ -137,13 +137,10 @@ mbsrtowcs (wchar_t* __restrict__ dst, const char ** __restrict__ src,
else
{
wchar_t byte_bucket = 0;
while ((ret = __mbrtowc_cp (&byte_bucket, *src, mb_max,
while ((ret = __mbrtowc_cp (&byte_bucket, *src + n, mb_max,
internal_ps, cp, mb_max))
> 0)
{
*src += ret;
n += ret;
}
n += ret;
}
return n;
}

View File

@ -28,125 +28,3 @@ __MINGW_USYMBOL(mingw_getsp):
mov x0, sp
ret
#endif
/* On ARM:
* Error: cannot represent BFD_RELOC_32_PCREL relocation in this object file format
* But anyway, nothing is needed here as libarm32/libmsvcrt.a is exporting longjmp
ldr ip, 1f
ldr pc, [pc, ip]
1: .long __imp_longjmp - (1b + 4)
*/
#if !(defined(_ARM_) || defined(__arm__) || defined(_ARM64_) || defined(__aarch64__))
.globl __MINGW_USYMBOL(longjmp)
.def __MINGW_USYMBOL(longjmp); .scl 2; .type 32; .endef
__MINGW_USYMBOL(longjmp):
#if defined(_AMD64_) || defined(__x86_64__)
#ifndef __SEH__
xorq %rax,%rax
movq %rax, (%rcx)
#endif
leaq __MINGW_IMP_LSYMBOL(longjmp)(%rip), %rax
jmpq *(%rax)
#elif defined(_X86_) || defined(__i386__)
jmp *__imp__longjmp
#endif
#endif /* !(defined(_ARM_) || defined(__arm__)) */
#if defined(_ARM_) || defined(__arm__) || defined(_ARM64_) || defined(__aarch64__)
.globl __MINGW_USYMBOL(__mingw_setjmp)
.def __MINGW_USYMBOL(__mingw_setjmp); .scl 2; .type 32; .endef
__MINGW_USYMBOL(__mingw_setjmp):
#if defined(_ARM_) || defined(__arm__)
mov r1, #0
str r1, [r0] /* jmp_buf->Frame */
str r4, [r0, #0x4] /* jmp_buf->R4 */
str r5, [r0, #0x8] /* jmp_buf->R5 */
str r6, [r0, #0xc] /* jmp_buf->R6 */
str r7, [r0, #0x10] /* jmp_buf->R7 */
str r8, [r0, #0x14] /* jmp_buf->R8 */
str r9, [r0, #0x18] /* jmp_buf->R9 */
str r10, [r0, #0x1c] /* jmp_buf->R10 */
str r11, [r0, #0x20] /* jmp_buf->R11 */
str sp, [r0, #0x24] /* jmp_buf->Sp */
str lr, [r0, #0x28] /* jmp_buf->Pc */
vmrs r2, fpscr
str r2, [r0, #0x2c] /* jmp_buf->Fpscr */
vstr d8, [r0, #0x30] /* jmp_buf->D[0] */
vstr d9, [r0, #0x38] /* jmp_buf->D[1] */
vstr d10, [r0, #0x40] /* jmp_buf->D[2] */
vstr d11, [r0, #0x48] /* jmp_buf->D[3] */
vstr d12, [r0, #0x50] /* jmp_buf->D[4] */
vstr d13, [r0, #0x58] /* jmp_buf->D[5] */
vstr d14, [r0, #0x60] /* jmp_buf->D[6] */
vstr d15, [r0, #0x68] /* jmp_buf->D[7] */
mov r0, #0
bx lr
#elif defined(_ARM64_) || defined(__aarch64__)
str xzr, [x0] /* jmp_buf->Frame */
stp x19, x20, [x0, #0x10] /* jmp_buf->X19, X20 */
stp x21, x22, [x0, #0x20] /* jmp_buf->X21, X22 */
stp x23, x24, [x0, #0x30] /* jmp_buf->X23, X24 */
stp x25, x26, [x0, #0x40] /* jmp_buf->X25, X26 */
stp x27, x28, [x0, #0x50] /* jmp_buf->X27, X28 */
stp x29, x30, [x0, #0x60] /* jmp_buf->Fp, Lr */
mov x2, sp
str x2, [x0, #0x70] /* jmp_buf->Sp */
mrs x2, fpcr
str w2, [x0, #0x78] /* jmp_buf->Fpcr */
mrs x2, fpsr
str w2, [x0, #0x7c] /* jmp_buf->Fpsr */
stp d8, d9, [x0, #0x80] /* jmp_buf->D[0-1] */
stp d10, d11, [x0, #0x90] /* jmp_buf->D[2-3] */
stp d12, d13, [x0, #0xa0] /* jmp_buf->D[4-5] */
stp d14, d15, [x0, #0xb0] /* jmp_buf->D[6-7] */
mov x0, #0
ret
#endif
.globl __MINGW_USYMBOL(__mingw_longjmp)
.def __MINGW_USYMBOL(__mingw_longjmp); .scl 2; .type 32; .endef
__MINGW_USYMBOL(__mingw_longjmp):
#if defined(_ARM_) || defined(__arm__)
ldr r4, [r0, #0x4] /* jmp_buf->R4 */
ldr r5, [r0, #0x8] /* jmp_buf->R5 */
ldr r6, [r0, #0xc] /* jmp_buf->R6 */
ldr r7, [r0, #0x10] /* jmp_buf->R7 */
ldr r8, [r0, #0x14] /* jmp_buf->R8 */
ldr r9, [r0, #0x18] /* jmp_buf->R9 */
ldr r10, [r0, #0x1c] /* jmp_buf->R10 */
ldr r11, [r0, #0x20] /* jmp_buf->R11 */
ldr sp, [r0, #0x24] /* jmp_buf->Sp */
ldr r2, [r0, #0x28] /* jmp_buf->Pc */
ldr r3, [r0, #0x2c] /* jmp_buf->Fpscr */
vmsr fpscr, r3
vldr d8, [r0, #0x30] /* jmp_buf->D[0] */
vldr d9, [r0, #0x38] /* jmp_buf->D[1] */
vldr d10, [r0, #0x40] /* jmp_buf->D[2] */
vldr d11, [r0, #0x48] /* jmp_buf->D[3] */
vldr d12, [r0, #0x50] /* jmp_buf->D[4] */
vldr d13, [r0, #0x58] /* jmp_buf->D[5] */
vldr d14, [r0, #0x60] /* jmp_buf->D[6] */
vldr d15, [r0, #0x68] /* jmp_buf->D[7] */
mov r0, r1 /* retval */
bx r2
#elif defined(_ARM64_) || defined(__aarch64__)
ldp x19, x20, [x0, #0x10] /* jmp_buf->X19, X20 */
ldp x21, x22, [x0, #0x20] /* jmp_buf->X21, X22 */
ldp x23, x24, [x0, #0x30] /* jmp_buf->X23, X24 */
ldp x25, x26, [x0, #0x40] /* jmp_buf->X25, X26 */
ldp x27, x28, [x0, #0x50] /* jmp_buf->X27, X28 */
ldp x29, x30, [x0, #0x60] /* jmp_buf->Fp, Lr */
ldr x2, [x0, #0x70] /* jmp_buf->Sp */
mov sp, x2
ldr w2, [x0, #0x78] /* jmp_buf->Fpcr */
msr fpcr, x2
ldr w2, [x0, #0x7c] /* jmp_buf->Fpsr */
msr fpsr, x2
ldp d8, d9, [x0, #0x80] /* jmp_buf->D[0-1] */
ldp d10, d11, [x0, #0x90] /* jmp_buf->D[2-3] */
ldp d12, d13, [x0, #0xa0] /* jmp_buf->D[4-5] */
ldp d14, d15, [x0, #0xb0] /* jmp_buf->D[6-7] */
mov x0, x1 /* retval */
ret
#endif
#endif

View File

@ -1,6 +0,0 @@
#include <process.h>
intptr_t __cdecl spawnv(int mode,const char *_Filename,char *const _ArgList[])
{
return _spawnv(mode, _Filename,(const char *const *)_ArgList);
}

View File

@ -1,6 +0,0 @@
#include <process.h>
intptr_t __cdecl spawnve(int mode,const char *_Filename,char *const _ArgList[],char *const _Env[])
{
return _spawnve(mode, _Filename,(const char *const *)_ArgList,(const char *const *)_Env);
}

View File

@ -1,6 +0,0 @@
#include <process.h>
intptr_t __cdecl spawnvp(int mode,const char *_Filename,char *const _ArgList[])
{
return _spawnvp(mode, _Filename,(const char *const *)_ArgList);
}

View File

@ -1,6 +0,0 @@
#include <process.h>
intptr_t __cdecl spawnvpe(int mode,const char *_Filename,char *const _ArgList[],char *const _Env[])
{
return _spawnvpe(mode, _Filename,(const char *const *)_ArgList,(const char *const *)_Env);
}

View File

@ -3,47 +3,47 @@
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#include <windows.h>
#include <stdio.h>
#include <assert.h>
#include <stdlib.h>
#include <wchar.h>
#include <signal.h>
#include <windows.h>
#include "msvcrt.h"
extern int mingw_app_type;
void __cdecl _wassert (const wchar_t *, const wchar_t *,unsigned);
void __cdecl _assert (const char *, const char *, unsigned);
void __cdecl
_wassert (const wchar_t *_Message, const wchar_t *_File, unsigned _Line)
/* _wassert is not available on XP, so forward it to _assert if needed */
static void __cdecl mingw_wassert(const wchar_t *_Message, const wchar_t *_File, unsigned _Line)
{
wchar_t *msgbuf = (wchar_t *) malloc (8192*sizeof(wchar_t));
wchar_t fn[MAX_PATH + 1];
DWORD nCode;
char *message = NULL, *file = NULL;
size_t len;
if (!_File || _File[0] == 0)
_File = L"<unknown>";
if (!_Message || _Message[0] == 0)
_Message = L"?";
if (! GetModuleFileNameW (NULL, fn, MAX_PATH))
wcscpy (fn, L"<unknown>");
_snwprintf (msgbuf, 8191, L"Assertion failed!\n\nProgram: %ws\n"
"File: %ws, Line %u\n\nExpression: %ws",
fn, _File,_Line, _Message);
if (mingw_app_type == 0)
if ((len = wcstombs(NULL, _Message, 0)) != (size_t)-1)
{
fwprintf (stderr, L"%ws\n", msgbuf);
abort ();
message = malloc(len + 1);
wcstombs(message, _Message, len + 1);
}
nCode = MessageBoxW (NULL, msgbuf, L"MinGW Runtime Assertion", MB_ABORTRETRYIGNORE|
MB_ICONHAND|MB_SETFOREGROUND|MB_TASKMODAL);
if (nCode == IDABORT)
if ((len = wcstombs(NULL, _File, 0)) != (size_t)-1)
{
raise (SIGABRT);
_exit (3);
abort ();
file = malloc(len + 1);
wcstombs(file, _File, len + 1);
}
if (nCode == IDIGNORE)
return;
abort ();
_assert(message, file, _Line);
free(message);
free(file);
}
static void __cdecl init_wassert(const wchar_t *message, const wchar_t *file, unsigned line);
void (__cdecl *__MINGW_IMP_SYMBOL(_wassert))(const wchar_t*, const wchar_t*,unsigned) = init_wassert;
static void __cdecl init_wassert(const wchar_t *message, const wchar_t *file, unsigned line)
{
void *func;
func = (void*)GetProcAddress(__mingw_get_msvcrt_handle(), "_wassert");
if(!func)
func = mingw_wassert;
return (__MINGW_IMP_SYMBOL(_wassert) = func)(message, file, line);
}

View File

@ -1,4 +1,3 @@
#define MINGW_HAS_SECURE_API 1
#include <windows.h>
#include <malloc.h>
#include <errno.h>

View File

@ -1,4 +1,3 @@
#define MINGW_HAS_SECURE_API 1
#include <windows.h>
#include <malloc.h>
#include <errno.h>

View File

@ -1,4 +1,3 @@
#define MINGW_HAS_SECURE_API 1
#include <windows.h>
#include <malloc.h>
#include <errno.h>

View File

@ -1,4 +1,3 @@
#define MINGW_HAS_SECURE_API 1
#include <windows.h>
#include <malloc.h>
#include <errno.h>

View File

@ -1,4 +1,3 @@
#define MINGW_HAS_SECURE_API 1
#include <windows.h>
#include <malloc.h>
#include <errno.h>

View File

@ -1,4 +1,3 @@
#define MINGW_HAS_SECURE_API 1
#include <windows.h>
#include <malloc.h>
#include <errno.h>

View File

@ -1,4 +1,3 @@
#define MINGW_HAS_SECURE_API 1
#include <windows.h>
#include <malloc.h>
#include <errno.h>

View File

@ -1,4 +1,3 @@
#define MINGW_HAS_SECURE_API 1
#include <windows.h>
#include <malloc.h>
#include <errno.h>

View File

@ -1,4 +1,3 @@
#define MINGW_HAS_SECURE_API 1
#include <windows.h>
#include <malloc.h>
#include <errno.h>

View File

@ -1,4 +1,3 @@
#define MINGW_HAS_SECURE_API 1
#include <windows.h>
#include <malloc.h>
#include <errno.h>

View File

@ -1,4 +1,3 @@
#define MINGW_HAS_SECURE_API 1
#include <sec_api/stdio_s.h>
int __cdecl _vscprintf_p(const char *format, va_list arglist)

View File

@ -1,4 +1,3 @@
#define MINGW_HAS_SECURE_API 1
#include <sec_api/stdio_s.h>
int __cdecl _vscwprintf_p(const wchar_t *format, va_list arglist)

View File

@ -1,4 +1,3 @@
#define MINGW_HAS_SECURE_API 1
#include <sec_api/stdio_s.h>
int __cdecl _vswprintf_p(wchar_t *_DstBuf, size_t _MaxCount, const wchar_t *_Format, va_list _ArgList)

View File

@ -1,4 +1,3 @@
#define MINGW_HAS_SECURE_API 1
#include <windows.h>
#include <malloc.h>
#include <errno.h>

View File

@ -1,4 +1,3 @@
#define MINGW_HAS_SECURE_API 1
#include <windows.h>
#include <malloc.h>
#include <errno.h>

Some files were not shown because too many files have changed in this diff Show More