| commit | 1bf82718d84e2464b4d914c8df477df1dd06f0f6 | [log] [tgz] |
|---|---|---|
| author | MITSUNARI Shigeo <herumi@nifty.com> | Fri Aug 15 17:35:51 2025 +0900 |
| committer | MITSUNARI Shigeo <herumi@nifty.com> | Fri Aug 15 17:35:51 2025 +0900 |
| tree | d4dc7ca742833146005351897f22e937234d6f14 | |
| parent | 5c52a47da4a0fd8ba762f31ff994b3798a130a7f [diff] |
add test of mov(eax, ptr[label]);
A JIT assembler for x86/x64 architectures supporting advanced instruction sets up to AVX10.2
Xbyak is a C++ header-only library that enables dynamic assembly of x86/x64 instructions using mnemonics.
The pronunciation of Xbyak is /kʌɪbjæk/ (kai-byak).
The name is derived from the Japanese word 開闢 (kaibyaku), which means “the beginning of the world” or “creation”.
Note: Use and_(), or_(), ... instead of and(), or(). If you want to use them, then specify -fno-operator-names option to gcc/clang.
ptr[(void*)0xffffffff] causes an error.XBYAK_OLD_DISP_CHECK if you need an old check, but the option will be remoevd.jmp(mem, T_FAR), call(mem, T_FAR) retf() for far absolute indirect jump.push(byte, imm) (resp. push(word, imm)) forces to cast imm to 8(resp. 16) bit.#include <winsock2.h> has been removed from xbyak.h, so add it explicitly if you need it.XBYAK_USE_MMAP_ALLOCATOR will be defined on Linux/macOS unless XBYAK_DONT_USE_MMAP_ALLOCATOR is defined.Almost C++03 or later compilers for x86/x64 such as Visual Studio, g++, clang++, Intel C++ compiler and g++ on mingw/cygwin.
GitHub | Website (Japanese) | herumi@nifty.com