commit | 6c593b9a10e450f342efc1cf871dbcf7bb3612fe | [log] [tgz] |
---|---|---|
author | Andrea Pappacoda <andrea@pappacoda.it> | Sat Mar 09 21:51:48 2024 +0100 |
committer | Andrea Pappacoda <andrea@pappacoda.it> | Sat Mar 09 21:51:48 2024 +0100 |
tree | 9ead028741e6712814e6107aecb09e42031f8f7c | |
parent | fc183427e852a70fb98add1ba640020a53034bb0 [diff] |
build(meson): arch-independent fixes This patch fixes a couple of issues introduced in commits c7c1eac070851068d7adc3a67ad2efd196145687 and 9f535729159baf467c3bd8dc7ec017a40289a12c: - Dropped `dataonly: true` from `pkgconfig.generate()`, since it generates a .pc file unsuitable for libraries. Instead, I've just set `install_dir` to `$datadir/pkgconfig`, which generates the following: $ cat /usr/share/pkgconfig/xbyak.pc prefix=/usr includedir=${prefix}/include Name: xbyak Description: JIT assembler for x86(IA32), x64(AMD64, x86-64) URL: https://github.com/herumi/xbyak Version: 7.06 Cflags: -I${includedir} - Changed `share/cmake/xbyak` to `get_option('datadir')/'cmake'/meson.project_name()` to avoid hardcoding "share" as the datadir. - Added `arch_independent: true` to the `cmake.write_basic_package_version_file()` call so that the generated CMake version file doesn't contain arch-specific checks unsuitable for a file located in /usr/share/cmake.
A C++ JIT assembler for x86 (IA32), x64 (AMD64, x86-64)
Xbyak is a C++ header library that enables dynamically to assemble x86(IA32), x64(AMD64, x86-64) mnemonic.
The pronunciation of Xbyak is kəi-bja-k
. It is named from a Japanese word 開闢, which means the beginning of the world.
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