commit | fbb18f69d5aba767a62e4cdb598ddb2da9e964d6 | [log] [tgz] |
---|---|---|
author | Andrea Pappacoda <andrea@pappacoda.it> | Fri Dec 02 14:58:59 2022 +0100 |
committer | Andrea Pappacoda <andrea@pappacoda.it> | Fri Dec 02 15:10:35 2022 +0100 |
tree | f0ae7d25a19e3046530ff26f9ea8b09b9b861d03 | |
parent | bb70083e64665cd66ce3eb10be080f4eb47f4290 [diff] |
ci: use containers GitHub's CI default runners are full of all kinds of software, and this can cause hard to reproduce errors. Luckly, GitHub Actions supports running jobs in a container image, so that the build environment is minimal and reprocucible. This patch changes the main CI job to run in a Debian Testing container, fixing the issues described in <https://github.com/herumi/xbyak/commit/cfb1127c3bf28d55e68b367a0a6944829a5c025d>. As Debian Testing is a semi-rolling relase distribution, and nasm 2.15 is shipped by default, I've also modified the script to install nasm from apt instead of building it from source.
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