[英]Convert Inline C Assembler (Intel syntax to AT&T)
我正在嘗試將此功能從MSVC ++轉換為MINGW(這是原始的MSVC功能)
VOID __declspec(naked) BNSTUB()
{
__asm
{
pushad;
call OnChatPacketReceived;
TEST EAX,EAX;
popad;
jnz oldCall;
MOV EAX,0;
MOV DWORD PTR DS:[EBX+0x6FF3EBA0],1
ret;
oldCall:
CALL eax;
MOV DWORD PTR DS:[EBX+0x6FF3EBA0],1
ret;
}
}
但是我在pushad和popad上有問題。 他們給我一個“未聲明的標識符”
pusha popa(無d)
在Mingw中,它可能被稱為“ pushall”而不是“ pusha”:所以請嘗試“ pushalld”和“ popalld”。
您可以在C語言中進行編譯,還可以使用-S
參數保留匯編程序列表。 那應該顯示AT&T語法的全部榮耀。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.