commit | 2c02730b822d461aa2010f5b9cec6a8595243866 | [log] [tgz] |
---|---|---|
author | MITSUNARI Shigeo <herumi@nifty.com> | Thu Oct 31 09:18:58 2024 +0900 |
committer | MITSUNARI Shigeo <herumi@nifty.com> | Thu Oct 31 09:18:58 2024 +0900 |
tree | 609d40ad2a33fa1dffa190a6e7754dfe6addaf6e | |
parent | 97b66116ffd26fdbbe27cb6b56236e7078dbd3a0 [diff] | |
parent | e8ba033af9eaaf3ae94981652efba1ce861c552a [diff] |
Merge branch 'dev'
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