mirror of
https://github.com/jart/cosmopolitan.git
synced 2025-07-07 11:48:30 +00:00
Clean up some code
- Use good ELF technique in cosmo_dlopen() - Make strerror() conform more to other libc impls - Introduce __clear_cache() and use it in cosmo_dlopen() - Remove libc/fmt/fmt.h header (trying to kill off LIBC_FMT)
This commit is contained in:
parent
7010a8081e
commit
68c7c9c1e0
244 changed files with 378 additions and 588 deletions
18
libc/nt/kernel32/FormatMessageA.S
Normal file
18
libc/nt/kernel32/FormatMessageA.S
Normal file
|
@ -0,0 +1,18 @@
|
|||
#include "libc/nt/codegen.h"
|
||||
.imp kernel32,__imp_FormatMessageA,FormatMessageA
|
||||
|
||||
.text.windows
|
||||
.ftrace1
|
||||
FormatMessageA:
|
||||
.ftrace2
|
||||
#ifdef __x86_64__
|
||||
push %rbp
|
||||
mov %rsp,%rbp
|
||||
mov __imp_FormatMessageA(%rip),%rax
|
||||
jmp __sysv2nt8
|
||||
#elif defined(__aarch64__)
|
||||
mov x0,#0
|
||||
ret
|
||||
#endif
|
||||
.endfn FormatMessageA,globl
|
||||
.previous
|
|
@ -87,6 +87,7 @@ imp 'FindNextVolume' FindNextVolumeW kernel32 3
|
|||
imp 'FindVolumeClose' FindVolumeClose kernel32 1
|
||||
imp 'FlushConsoleInputBuffer' FlushConsoleInputBuffer kernel32 1
|
||||
imp 'FormatMessage' FormatMessageW kernel32 7
|
||||
imp 'FormatMessageA' FormatMessageA kernel32 7
|
||||
imp 'FreeConsole' FreeConsole kernel32 0
|
||||
imp 'FreeEnvironmentStrings' FreeEnvironmentStringsW kernel32 1
|
||||
imp 'FreeLibrary' FreeLibrary kernel32 1
|
||||
|
|
|
@ -51,6 +51,9 @@ void SetLastError(uint32_t dwErrCode);
|
|||
uint32_t FormatMessage(uint32_t dwFlags, const void *lpSource,
|
||||
uint32_t dwMessageId, uint32_t dwLanguageId,
|
||||
char16_t *lpBuffer, uint32_t nSize, va_list *Arguments);
|
||||
uint32_t FormatMessageA(uint32_t dwFlags, const void *lpSource,
|
||||
uint32_t dwMessageId, uint32_t dwLanguageId,
|
||||
char *lpBuffer, uint32_t nSize, va_list *Arguments);
|
||||
int64_t OpenProcess(uint32_t dwDesiredAccess, bool32 bInheritHandle,
|
||||
uint32_t dwProcessId);
|
||||
uint32_t GetCurrentProcessId(void); /* %gs:0x40 */
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue