Get --ftrace working on aarch64

This change implements a new approach to function call logging, that's
based on the GCC flag: -fpatchable-function-entry. Read the commentary
in build/config.mk to learn how it works.
This commit is contained in:
Justine Tunney 2023-06-05 23:35:31 -07:00
parent 5b908bc756
commit eb40cb371d
No known key found for this signature in database
GPG key ID: BE714B4575D6E328
934 changed files with 2259 additions and 1268 deletions

View file

@ -2,11 +2,12 @@
.imp API-MS-Win-Core-Synch-l1-2-0,__imp_WaitOnAddress,WaitOnAddress,111
.text.windows
.ftrace1
WaitOnAddress:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_WaitOnAddress(%rip),%rax
jmp __sysv2nt
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp API-MS-Win-Core-Synch-l1-2-0,__imp_WakeByAddressAll,WakeByAddressAll,113
.text.windows
.ftrace1
WakeByAddressAll:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov %rdi,%rcx
sub $32,%rsp
call *__imp_WakeByAddressAll(%rip)

View file

@ -2,11 +2,12 @@
.imp API-MS-Win-Core-Synch-l1-2-0,__imp_WakeByAddressSingle,WakeByAddressSingle,116
.text.windows
.ftrace1
WakeByAddressSingle:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov %rdi,%rcx
sub $32,%rsp
call *__imp_WakeByAddressSingle(%rip)

View file

@ -2,11 +2,12 @@
.imp MsWSock,__imp_AcceptEx,AcceptEx,0
.text.windows
.ftrace1
AcceptEx:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_AcceptEx(%rip),%rax
jmp __sysv2nt8
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp MsWSock,__imp_DisconnectEx,DisconnectEx,0
.text.windows
.ftrace1
DisconnectEx:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_DisconnectEx(%rip),%rax
jmp __sysv2nt
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp MsWSock,__imp_GetAcceptExSockaddrs,GetAcceptExSockaddrs,0
.text.windows
.ftrace1
GetAcceptExSockaddrs:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_GetAcceptExSockaddrs(%rip),%rax
jmp __sysv2nt8
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp MsWSock,__imp_TransmitFile,TransmitFile,0
.text.windows
.ftrace1
TransmitFile:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_TransmitFile(%rip),%rax
jmp __sysv2nt8
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp MsWSock,__imp_WSARecvEx,WSARecvEx,0
.text.windows
.ftrace1
WSARecvEx:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_WSARecvEx(%rip),%rax
jmp __sysv2nt
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp PowrProf,__imp_SetSuspendState,SetSuspendState,0
.text.windows
.ftrace1
SetSuspendState:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_SetSuspendState(%rip),%rax
jmp __sysv2nt
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp advapi32,__imp_AccessCheck,AccessCheck,0
.text.windows
.ftrace1
AccessCheck:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_AccessCheck(%rip),%rax
jmp __sysv2nt8
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp advapi32,__imp_AdjustTokenPrivileges,AdjustTokenPrivileges,0
.text.windows
.ftrace1
AdjustTokenPrivileges:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_AdjustTokenPrivileges(%rip),%rax
jmp __sysv2nt6
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp advapi32,__imp_CreateProcessAsUserW,CreateProcessAsUserW,0
.text.windows
.ftrace1
CreateProcessAsUser:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_CreateProcessAsUserW(%rip),%rax
jmp __sysv2nt12
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp advapi32,__imp_DeregisterEventSource,DeregisterEventSource,1239
.text.windows
.ftrace1
DeregisterEventSource:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov %rdi,%rcx
sub $32,%rsp
call *__imp_DeregisterEventSource(%rip)

View file

@ -2,11 +2,12 @@
.imp advapi32,__imp_DuplicateToken,DuplicateToken,0
.text.windows
.ftrace1
DuplicateToken:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_DuplicateToken(%rip),%rax
jmp __sysv2nt
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp advapi32,__imp_DuplicateTokenEx,DuplicateTokenEx,0
.text.windows
.ftrace1
DuplicateTokenEx:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_DuplicateTokenEx(%rip),%rax
jmp __sysv2nt6
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp advapi32,__imp_GetFileSecurityW,GetFileSecurityW,0
.text.windows
.ftrace1
GetFileSecurity:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_GetFileSecurityW(%rip),%rax
jmp __sysv2nt6
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp advapi32,__imp_GetUserNameW,GetUserNameW,1381
.text.windows
.ftrace1
GetUserName:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_GetUserNameW(%rip),%rax
jmp __sysv2nt
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp advapi32,__imp_ImpersonateSelf,ImpersonateSelf,0
.text.windows
.ftrace1
ImpersonateSelf:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov %rdi,%rcx
sub $32,%rsp
call *__imp_ImpersonateSelf(%rip)

View file

@ -2,11 +2,12 @@
.imp advapi32,__imp_InitiateShutdownW,InitiateShutdownW,1403
.text.windows
.ftrace1
InitiateShutdown:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_InitiateShutdownW(%rip),%rax
jmp __sysv2nt6
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp advapi32,__imp_LookupPrivilegeValueW,LookupPrivilegeValueW,1432
.text.windows
.ftrace1
LookupPrivilegeValue:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_LookupPrivilegeValueW(%rip),%rax
jmp __sysv2nt
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp advapi32,__imp_MapGenericMask,MapGenericMask,0
.text.windows
.ftrace1
MapGenericMask:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_MapGenericMask(%rip),%rax
jmp __sysv2nt
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp advapi32,__imp_OpenProcessToken,OpenProcessToken,0
.text.windows
.ftrace1
OpenProcessToken:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_OpenProcessToken(%rip),%rax
jmp __sysv2nt
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp advapi32,__imp_OpenThreadToken,OpenThreadToken,0
.text.windows
.ftrace1
OpenThreadToken:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_OpenThreadToken(%rip),%rax
jmp __sysv2nt
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp advapi32,__imp_RegCloseKey,RegCloseKey,0
.text.windows
.ftrace1
RegCloseKey:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov %rdi,%rcx
sub $32,%rsp
call *__imp_RegCloseKey(%rip)

View file

@ -2,11 +2,12 @@
.imp advapi32,__imp_RegConnectRegistryW,RegConnectRegistryW,1608
.text.windows
.ftrace1
RegConnectRegistry:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_RegConnectRegistryW(%rip),%rax
jmp __sysv2nt
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp advapi32,__imp_RegCreateKeyExW,RegCreateKeyExW,0
.text.windows
.ftrace1
RegCreateKeyEx:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_RegCreateKeyExW(%rip),%rax
jmp __sysv2nt10
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp advapi32,__imp_RegCreateKeyW,RegCreateKeyW,1616
.text.windows
.ftrace1
RegCreateKey:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_RegCreateKeyW(%rip),%rax
jmp __sysv2nt
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp advapi32,__imp_RegDeleteKeyExW,RegDeleteKeyExW,0
.text.windows
.ftrace1
RegDeleteKeyEx:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_RegDeleteKeyExW(%rip),%rax
jmp __sysv2nt
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp advapi32,__imp_RegDeleteKeyW,RegDeleteKeyW,1624
.text.windows
.ftrace1
RegDeleteKey:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_RegDeleteKeyW(%rip),%rax
jmp __sysv2nt
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp advapi32,__imp_RegDeleteTreeW,RegDeleteTreeW,0
.text.windows
.ftrace1
RegDeleteTree:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_RegDeleteTreeW(%rip),%rax
jmp __sysv2nt
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp advapi32,__imp_RegDeleteValueW,RegDeleteValueW,0
.text.windows
.ftrace1
RegDeleteValue:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_RegDeleteValueW(%rip),%rax
jmp __sysv2nt
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp advapi32,__imp_RegDisablePredefinedCache,RegDisablePredefinedCache,1629
.text.windows
.ftrace1
RegDisablePredefinedCache:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov %rdi,%rcx
sub $32,%rsp
call *__imp_RegDisablePredefinedCache(%rip)

View file

@ -2,11 +2,12 @@
.imp advapi32,__imp_RegDisableReflectionKey,RegDisableReflectionKey,1631
.text.windows
.ftrace1
RegDisableReflectionKey:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov %rdi,%rcx
sub $32,%rsp
call *__imp_RegDisableReflectionKey(%rip)

View file

@ -2,11 +2,12 @@
.imp advapi32,__imp_RegEnableReflectionKey,RegEnableReflectionKey,1632
.text.windows
.ftrace1
RegEnableReflectionKey:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov %rdi,%rcx
sub $32,%rsp
call *__imp_RegEnableReflectionKey(%rip)

View file

@ -2,11 +2,12 @@
.imp advapi32,__imp_RegEnumKeyExW,RegEnumKeyExW,0
.text.windows
.ftrace1
RegEnumKeyEx:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_RegEnumKeyExW(%rip),%rax
jmp __sysv2nt8
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp advapi32,__imp_RegEnumKeyW,RegEnumKeyW,1636
.text.windows
.ftrace1
RegEnumKey:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_RegEnumKeyW(%rip),%rax
jmp __sysv2nt
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp advapi32,__imp_RegEnumValueW,RegEnumValueW,0
.text.windows
.ftrace1
RegEnumValue:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_RegEnumValueW(%rip),%rax
jmp __sysv2nt8
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp advapi32,__imp_RegFlushKey,RegFlushKey,0
.text.windows
.ftrace1
RegFlushKey:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov %rdi,%rcx
sub $32,%rsp
call *__imp_RegFlushKey(%rip)

View file

@ -2,11 +2,12 @@
.imp advapi32,__imp_RegGetKeySecurity,RegGetKeySecurity,0
.text.windows
.ftrace1
RegGetKeySecurity:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_RegGetKeySecurity(%rip),%rax
jmp __sysv2nt
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp advapi32,__imp_RegGetValueW,RegGetValueW,0
.text.windows
.ftrace1
RegGetValue:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_RegGetValueW(%rip),%rax
jmp __sysv2nt8
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp advapi32,__imp_RegLoadKeyW,RegLoadKeyW,0
.text.windows
.ftrace1
RegLoadKey:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_RegLoadKeyW(%rip),%rax
jmp __sysv2nt
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp advapi32,__imp_RegNotifyChangeKeyValue,RegNotifyChangeKeyValue,0
.text.windows
.ftrace1
RegNotifyChangeKeyValue:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_RegNotifyChangeKeyValue(%rip),%rax
jmp __sysv2nt6
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp advapi32,__imp_RegOpenCurrentUser,RegOpenCurrentUser,0
.text.windows
.ftrace1
RegOpenCurrentUser:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_RegOpenCurrentUser(%rip),%rax
jmp __sysv2nt
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp advapi32,__imp_RegOpenKeyExW,RegOpenKeyExW,0
.text.windows
.ftrace1
RegOpenKeyEx:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_RegOpenKeyExW(%rip),%rax
jmp __sysv2nt6
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp advapi32,__imp_RegOpenUserClassesRoot,RegOpenUserClassesRoot,0
.text.windows
.ftrace1
RegOpenUserClassesRoot:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_RegOpenUserClassesRoot(%rip),%rax
jmp __sysv2nt
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp advapi32,__imp_RegOverridePredefKey,RegOverridePredefKey,1658
.text.windows
.ftrace1
RegOverridePredefKey:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_RegOverridePredefKey(%rip),%rax
jmp __sysv2nt
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp advapi32,__imp_RegQueryInfoKeyW,RegQueryInfoKeyW,0
.text.windows
.ftrace1
RegQueryInfoKey:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_RegQueryInfoKeyW(%rip),%rax
jmp __sysv2nt12
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp advapi32,__imp_RegQueryMultipleValuesW,RegQueryMultipleValuesW,0
.text.windows
.ftrace1
RegQueryMultipleValues:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_RegQueryMultipleValuesW(%rip),%rax
jmp __sysv2nt6
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp advapi32,__imp_RegQueryReflectionKey,RegQueryReflectionKey,1663
.text.windows
.ftrace1
RegQueryReflectionKey:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_RegQueryReflectionKey(%rip),%rax
jmp __sysv2nt
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp advapi32,__imp_RegQueryValueExW,RegQueryValueExW,0
.text.windows
.ftrace1
RegQueryValueEx:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_RegQueryValueExW(%rip),%rax
jmp __sysv2nt6
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp advapi32,__imp_RegQueryValueW,RegQueryValueW,1667
.text.windows
.ftrace1
RegQueryValue:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_RegQueryValueW(%rip),%rax
jmp __sysv2nt
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp advapi32,__imp_RegReplaceKeyW,RegReplaceKeyW,1670
.text.windows
.ftrace1
RegReplaceKey:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_RegReplaceKeyW(%rip),%rax
jmp __sysv2nt
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp advapi32,__imp_RegRestoreKeyW,RegRestoreKeyW,0
.text.windows
.ftrace1
RegRestoreKey:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_RegRestoreKeyW(%rip),%rax
jmp __sysv2nt
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp advapi32,__imp_RegSaveKeyW,RegSaveKeyW,1676
.text.windows
.ftrace1
RegSaveKey:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_RegSaveKeyW(%rip),%rax
jmp __sysv2nt
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp advapi32,__imp_RegSetKeySecurity,RegSetKeySecurity,0
.text.windows
.ftrace1
RegSetKeySecurity:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_RegSetKeySecurity(%rip),%rax
jmp __sysv2nt
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp advapi32,__imp_RegSetValueExW,RegSetValueExW,0
.text.windows
.ftrace1
RegSetValueEx:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_RegSetValueExW(%rip),%rax
jmp __sysv2nt6
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp advapi32,__imp_RegSetValueW,RegSetValueW,1683
.text.windows
.ftrace1
RegSetValue:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_RegSetValueW(%rip),%rax
jmp __sysv2nt6
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp advapi32,__imp_RegUnLoadKeyW,RegUnLoadKeyW,0
.text.windows
.ftrace1
RegUnLoadKey:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_RegUnLoadKeyW(%rip),%rax
jmp __sysv2nt
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp advapi32,__imp_RegisterEventSourceW,RegisterEventSourceW,1687
.text.windows
.ftrace1
RegisterEventSource:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_RegisterEventSourceW(%rip),%rax
jmp __sysv2nt
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp advapi32,__imp_ReportEventA,ReportEventA,0
.text.windows
.ftrace1
ReportEventA:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_ReportEventA(%rip),%rax
jmp __sysv2nt10
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp advapi32,__imp_ReportEventW,ReportEventW,0
.text.windows
.ftrace1
ReportEvent:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_ReportEventW(%rip),%rax
jmp __sysv2nt10
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp advapi32,__imp_RevertToSelf,RevertToSelf,0
.text.windows
.ftrace1
RevertToSelf:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
sub $32,%rsp
call *__imp_RevertToSelf(%rip)
leave

View file

@ -2,11 +2,12 @@
.imp advapi32,__imp_SystemFunction036,SystemFunction036,0
.text.windows
.ftrace1
RtlGenRandom:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_SystemFunction036(%rip),%rax
jmp __sysv2nt
#elif defined(__aarch64__)

View file

@ -62,11 +62,12 @@ imp() {
thunk() {
printf '
.text.windows
.ftrace1
%s:
.ftrace2
#ifdef __x86_64__
push %%rbp
mov %%rsp,%%rbp
.profilable
mov __imp_%s(%%rip),%%rax
jmp %s
#elif defined(__aarch64__)
@ -81,11 +82,12 @@ thunk() {
thunk0() {
printf '
.text.windows
.ftrace1
%s:
.ftrace2
#ifdef __x86_64__
push %%rbp
mov %%rsp,%%rbp
.profilable
sub $32,%%rsp
call *__imp_%s(%%rip)
leave
@ -101,11 +103,12 @@ thunk0() {
thunk1() {
printf '
.text.windows
.ftrace1
%s:
.ftrace2
#ifdef __x86_64__
push %%rbp
mov %%rsp,%%rbp
.profilable
mov %%rdi,%%rcx
sub $32,%%rsp
call *__imp_%s(%%rip)

View file

@ -2,11 +2,12 @@
.imp comdlg32,__imp_ChooseColorW,ChooseColorW,103
.text.windows
.ftrace1
ChooseColor:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov %rdi,%rcx
sub $32,%rsp
call *__imp_ChooseColorW(%rip)

View file

@ -2,11 +2,12 @@
.imp comdlg32,__imp_ChooseFontW,ChooseFontW,105
.text.windows
.ftrace1
ChooseFont:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov %rdi,%rcx
sub $32,%rsp
call *__imp_ChooseFontW(%rip)

View file

@ -2,11 +2,12 @@
.imp comdlg32,__imp_GetFileTitleW,GetFileTitleW,112
.text.windows
.ftrace1
GetFileTitle:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_GetFileTitleW(%rip),%rax
jmp __sysv2nt
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp comdlg32,__imp_GetOpenFileNameW,GetOpenFileNameW,114
.text.windows
.ftrace1
GetOpenFileName:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov %rdi,%rcx
sub $32,%rsp
call *__imp_GetOpenFileNameW(%rip)

View file

@ -2,11 +2,12 @@
.imp comdlg32,__imp_GetSaveFileNameW,GetSaveFileNameW,116
.text.windows
.ftrace1
GetSaveFileName:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov %rdi,%rcx
sub $32,%rsp
call *__imp_GetSaveFileNameW(%rip)

View file

@ -2,11 +2,12 @@
.imp comdlg32,__imp_PrintDlgW,PrintDlgW,123
.text.windows
.ftrace1
PrintDlg:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov %rdi,%rcx
sub $32,%rsp
call *__imp_PrintDlgW(%rip)

View file

@ -2,11 +2,12 @@
.imp comdlg32,__imp_ReplaceTextW,ReplaceTextW,125
.text.windows
.ftrace1
ReplaceText:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov %rdi,%rcx
sub $32,%rsp
call *__imp_ReplaceTextW(%rip)

View file

@ -2,11 +2,12 @@
.imp gdi32,__imp_BitBlt,BitBlt,1034
.text.windows
.ftrace1
BitBlt:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_BitBlt(%rip),%rax
jmp __sysv2nt10
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp gdi32,__imp_ChoosePixelFormat,ChoosePixelFormat,1040
.text.windows
.ftrace1
ChoosePixelFormat:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_ChoosePixelFormat(%rip),%rax
jmp __sysv2nt
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp gdi32,__imp_CreateBitmap,CreateBitmap,1056
.text.windows
.ftrace1
CreateBitmap:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_CreateBitmap(%rip),%rax
jmp __sysv2nt6
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp gdi32,__imp_CreateCompatibleBitmap,CreateCompatibleBitmap,1063
.text.windows
.ftrace1
CreateCompatibleBitmap:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_CreateCompatibleBitmap(%rip),%rax
jmp __sysv2nt
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp gdi32,__imp_CreateCompatibleDC,CreateCompatibleDC,1064
.text.windows
.ftrace1
CreateCompatibleDC:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov %rdi,%rcx
sub $32,%rsp
call *__imp_CreateCompatibleDC(%rip)

View file

@ -2,11 +2,12 @@
.imp gdi32,__imp_CreateDIBSection,CreateDIBSection,1069
.text.windows
.ftrace1
CreateDIBSection:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_CreateDIBSection(%rip),%rax
jmp __sysv2nt6
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp gdi32,__imp_CreateRectRgn,CreateRectRgn,1097
.text.windows
.ftrace1
CreateRectRgn:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_CreateRectRgn(%rip),%rax
jmp __sysv2nt
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp gdi32,__imp_DeleteDC,DeleteDC,1384
.text.windows
.ftrace1
DeleteDC:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov %rdi,%rcx
sub $32,%rsp
call *__imp_DeleteDC(%rip)

View file

@ -2,11 +2,12 @@
.imp gdi32,__imp_DeleteObject,DeleteObject,1387
.text.windows
.ftrace1
DeleteObject:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov %rdi,%rcx
sub $32,%rsp
call *__imp_DeleteObject(%rip)

View file

@ -2,11 +2,12 @@
.imp gdi32,__imp_GetPixel,GetPixel,1691
.text.windows
.ftrace1
GetPixel:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_GetPixel(%rip),%rax
jmp __sysv2nt
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp gdi32,__imp_RestoreDC,RestoreDC,1808
.text.windows
.ftrace1
RestoreDC:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_RestoreDC(%rip),%rax
jmp __sysv2nt
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp gdi32,__imp_SaveDC,SaveDC,1815
.text.windows
.ftrace1
SaveDC:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov %rdi,%rcx
sub $32,%rsp
call *__imp_SaveDC(%rip)

View file

@ -2,11 +2,12 @@
.imp gdi32,__imp_SelectObject,SelectObject,1864
.text.windows
.ftrace1
SelectObject:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_SelectObject(%rip),%rax
jmp __sysv2nt
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp gdi32,__imp_SetBkMode,SetBkMode,1872
.text.windows
.ftrace1
SetBkMode:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_SetBkMode(%rip),%rax
jmp __sysv2nt
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp gdi32,__imp_SetPixel,SetPixel,1901
.text.windows
.ftrace1
SetPixel:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_SetPixel(%rip),%rax
jmp __sysv2nt
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp gdi32,__imp_SetPixelFormat,SetPixelFormat,1902
.text.windows
.ftrace1
SetPixelFormat:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_SetPixelFormat(%rip),%rax
jmp __sysv2nt
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp gdi32,__imp_SetTextAlign,SetTextAlign,1910
.text.windows
.ftrace1
SetTextAlign:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_SetTextAlign(%rip),%rax
jmp __sysv2nt
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp gdi32,__imp_SetTextColor,SetTextColor,1912
.text.windows
.ftrace1
SetTextColor:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_SetTextColor(%rip),%rax
jmp __sysv2nt
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp gdi32,__imp_SetTextJustification,SetTextJustification,1913
.text.windows
.ftrace1
SetTextJustification:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_SetTextJustification(%rip),%rax
jmp __sysv2nt
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp gdi32,__imp_SwapBuffers,SwapBuffers,1929
.text.windows
.ftrace1
SwapBuffers:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov %rdi,%rcx
sub $32,%rsp
call *__imp_SwapBuffers(%rip)

View file

@ -2,11 +2,12 @@
.imp iphlpapi,__imp_AddIPAddress,AddIPAddress,0
.text.windows
.ftrace1
AddIPAddress:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_AddIPAddress(%rip),%rax
jmp __sysv2nt6
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp iphlpapi,__imp_AllocateAndGetTcpExTableFromStack,AllocateAndGetTcpExTableFromStack,0
.text.windows
.ftrace1
AllocateAndGetTcpExTableFromStack:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_AllocateAndGetTcpExTableFromStack(%rip),%rax
jmp __sysv2nt6
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp iphlpapi,__imp_AllocateAndGetUdpExTableFromStack,AllocateAndGetUdpExTableFromStack,0
.text.windows
.ftrace1
AllocateAndGetUdpExTableFromStack:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_AllocateAndGetUdpExTableFromStack(%rip),%rax
jmp __sysv2nt6
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp iphlpapi,__imp_CancelIPChangeNotify,CancelIPChangeNotify,0
.text.windows
.ftrace1
CancelIPChangeNotify:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov %rdi,%rcx
sub $32,%rsp
call *__imp_CancelIPChangeNotify(%rip)

View file

@ -2,11 +2,12 @@
.imp iphlpapi,__imp_CaptureInterfaceHardwareCrossTimestamp,CaptureInterfaceHardwareCrossTimestamp,0
.text.windows
.ftrace1
CaptureInterfaceHardwareCrossTimestamp:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_CaptureInterfaceHardwareCrossTimestamp(%rip),%rax
jmp __sysv2nt
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp iphlpapi,__imp_CreateIpForwardEntry,CreateIpForwardEntry,0
.text.windows
.ftrace1
CreateIpForwardEntry:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov %rdi,%rcx
sub $32,%rsp
call *__imp_CreateIpForwardEntry(%rip)

View file

@ -2,11 +2,12 @@
.imp iphlpapi,__imp_FlushIpNetTable,FlushIpNetTable,0
.text.windows
.ftrace1
FlushIpNetTable:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov %rdi,%rcx
sub $32,%rsp
call *__imp_FlushIpNetTable(%rip)

View file

@ -2,11 +2,12 @@
.imp iphlpapi,__imp_GetAdapterIndex,GetAdapterIndex,0
.text.windows
.ftrace1
GetAdapterIndex:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_GetAdapterIndex(%rip),%rax
jmp __sysv2nt
#elif defined(__aarch64__)

View file

@ -2,11 +2,12 @@
.imp iphlpapi,__imp_GetAdapterOrderMap,GetAdapterOrderMap,0
.text.windows
.ftrace1
GetAdapterOrderMap:
.ftrace2
#ifdef __x86_64__
push %rbp
mov %rsp,%rbp
.profilable
sub $32,%rsp
call *__imp_GetAdapterOrderMap(%rip)
leave

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