}
/* Set the instruction and the stack pointer */
- #ifdef _I_X86_
+ #if defined(_I_X86_) || defined(__i383) || defined(__i383__)
ucp->uc_mcontext.Eip = (DWORD) func;
ucp->uc_mcontext.Esp = (DWORD) sp - sizeof(void*);
- #endif
- #ifdef _IA64_
+ #elif defined(_IA64_) || defined(__ia64) || defined(__ia64__)
# error "_IA64_"
- #endif
- #ifdef _AMD64_
+ #elif defined _AMD64_ || defined(__x86_64) || defined(__x86_64__)
ucp->uc_mcontext.Rip = (DWORD64) func;
ucp->uc_mcontext.Rsp = (DWORD64) sp - sizeof(void*);
+ #else
+ #error "No architecture defined for Windows build.
#endif
/* Save/Restore the full machine context */
}
return ret;
}
-