mirror of
https://github.com/jart/cosmopolitan.git
synced 2025-07-06 19:28:29 +00:00
Improve system call support on NT
- Improve i/o perf on New Technology - Code cleanup on read() for New Technology - Fix bad bug with dup() of socket on New Technology - Clean up some more strace errors on New Technology
This commit is contained in:
parent
29bf8b1a30
commit
4f98ad1054
79 changed files with 707 additions and 197 deletions
|
@ -2,11 +2,11 @@
|
|||
.imp kernel32,__imp_CreateDirectoryW,CreateDirectoryW,0
|
||||
|
||||
.text.windows
|
||||
CreateDirectory:
|
||||
__CreateDirectory:
|
||||
push %rbp
|
||||
mov %rsp,%rbp
|
||||
.profilable
|
||||
mov __imp_CreateDirectoryW(%rip),%rax
|
||||
jmp __sysv2nt
|
||||
.endfn CreateDirectory,globl
|
||||
.endfn __CreateDirectory,globl
|
||||
.previous
|
||||
|
|
|
@ -2,11 +2,11 @@
|
|||
.imp kernel32,__imp_CreateProcessW,CreateProcessW,0
|
||||
|
||||
.text.windows
|
||||
CreateProcess:
|
||||
__CreateProcess:
|
||||
push %rbp
|
||||
mov %rsp,%rbp
|
||||
.profilable
|
||||
mov __imp_CreateProcessW(%rip),%rax
|
||||
jmp __sysv2nt10
|
||||
.endfn CreateProcess,globl
|
||||
.endfn __CreateProcess,globl
|
||||
.previous
|
||||
|
|
|
@ -2,11 +2,11 @@
|
|||
.imp kernel32,__imp_DeviceIoControl,DeviceIoControl,0
|
||||
|
||||
.text.windows
|
||||
DeviceIoControl:
|
||||
__DeviceIoControl:
|
||||
push %rbp
|
||||
mov %rsp,%rbp
|
||||
.profilable
|
||||
mov __imp_DeviceIoControl(%rip),%rax
|
||||
jmp __sysv2nt8
|
||||
.endfn DeviceIoControl,globl
|
||||
.endfn __DeviceIoControl,globl
|
||||
.previous
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
.imp kernel32,__imp_GetFileAttributesW,GetFileAttributesW,0
|
||||
|
||||
.text.windows
|
||||
GetFileAttributes:
|
||||
__GetFileAttributes:
|
||||
push %rbp
|
||||
mov %rsp,%rbp
|
||||
.profilable
|
||||
|
@ -11,5 +11,5 @@ GetFileAttributes:
|
|||
call *__imp_GetFileAttributesW(%rip)
|
||||
leave
|
||||
ret
|
||||
.endfn GetFileAttributes,globl
|
||||
.endfn __GetFileAttributes,globl
|
||||
.previous
|
||||
|
|
|
@ -560,7 +560,7 @@ imp 'CreateDialogIndirectParamAor' CreateDialogIndirectParamAorW user32 1
|
|||
imp 'CreateDialogIndirectParam' CreateDialogIndirectParamW user32 1612
|
||||
imp 'CreateDialogParamA' CreateDialogParamA user32 1613
|
||||
imp 'CreateDialogParam' CreateDialogParamW user32 1614
|
||||
imp 'CreateDirectory' CreateDirectoryW kernel32 0 2 # KernelBase
|
||||
imp '__CreateDirectory' CreateDirectoryW kernel32 0 2 # KernelBase
|
||||
imp 'CreateDirectoryA' CreateDirectoryA kernel32 0 2 # KernelBase
|
||||
imp 'CreateDirectoryExA' CreateDirectoryExA kernel32 182
|
||||
imp 'CreateDirectoryEx' CreateDirectoryExW kernel32 0 # KernelBase
|
||||
|
@ -643,7 +643,7 @@ imp 'CreatePrivateObjectSecurity' CreatePrivateObjectSecurity advapi32 0
|
|||
imp 'CreatePrivateObjectSecurityEx' CreatePrivateObjectSecurityEx advapi32 0 # KernelBase
|
||||
imp 'CreatePrivateObjectSecurityWithMultipleInheritance' CreatePrivateObjectSecurityWithMultipleInheritance advapi32 0 # KernelBase
|
||||
imp 'CreateProcessA' CreateProcessA kernel32 0 10 # KernelBase
|
||||
imp 'CreateProcess' CreateProcessW kernel32 0 10 # KernelBase
|
||||
imp '__CreateProcess' CreateProcessW kernel32 0 10 # KernelBase
|
||||
imp 'CreateProcessAsUserA' CreateProcessAsUserA advapi32 0 11 # KernelBase
|
||||
imp 'CreateProcessAsUser' CreateProcessAsUserW advapi32 0 11 # KernelBase
|
||||
imp 'CreateProcessInternal' CreateProcessInternalW KernelBase 211
|
||||
|
@ -1218,7 +1218,7 @@ imp 'DestroyPrivateObjectSecurity' DestroyPrivateObjectSecurity advapi32 0
|
|||
imp 'DestroyReasons' DestroyReasons user32 1689
|
||||
imp 'DestroyWindow' DestroyWindow user32 1690 1
|
||||
imp 'DeviceCapabilitiesExA' DeviceCapabilitiesExA gdi32 1391
|
||||
imp 'DeviceIoControl' DeviceIoControl kernel32 0 8 # KernelBase
|
||||
imp '__DeviceIoControl' DeviceIoControl kernel32 0 8 # KernelBase
|
||||
imp 'DialogBoxIndirectParamA' DialogBoxIndirectParamA user32 1691
|
||||
imp 'DialogBoxIndirectParamAor' DialogBoxIndirectParamAorW user32 1692
|
||||
imp 'DialogBoxIndirectParam' DialogBoxIndirectParamW user32 1693
|
||||
|
@ -2121,7 +2121,7 @@ imp 'GetExtensionProperty' GetExtensionProperty KernelBase 540
|
|||
imp 'GetExtensionProperty2' GetExtensionProperty2 KernelBase 541
|
||||
imp 'GetFallbackDisplayName' GetFallbackDisplayName KernelBase 542
|
||||
imp 'GetFileAttributesA' GetFileAttributesA kernel32 0 1 # KernelBase
|
||||
imp 'GetFileAttributes' GetFileAttributesW kernel32 0 1 # KernelBase
|
||||
imp '__GetFileAttributes' GetFileAttributesW kernel32 0 1 # KernelBase
|
||||
imp 'GetFileAttributesExA' GetFileAttributesExA kernel32 0 3 # KernelBase
|
||||
imp 'GetFileAttributesEx' GetFileAttributesExW kernel32 0 3 # KernelBase
|
||||
imp 'GetFileAttributesTransactedA' GetFileAttributesTransactedA kernel32 583
|
||||
|
|
|
@ -15,8 +15,5 @@ extern typeof(SetPriorityClass) *const __imp_SetPriorityClass __msabi;
|
|||
#define GetCurrentProcessId(...) __imp_GetCurrentProcessId(__VA_ARGS__)
|
||||
extern typeof(GetCurrentProcessId) *const __imp_GetCurrentProcessId __msabi;
|
||||
|
||||
#define CreateProcess(...) __imp_CreateProcessW(__VA_ARGS__)
|
||||
extern typeof(CreateProcess) *const __imp_CreateProcessW __msabi;
|
||||
|
||||
extern typeof(FormatMessage) *const __imp_FormatMessageW __msabi;
|
||||
extern typeof(SetLastError) *const __imp_SetLastError __msabi;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue