aboutsummaryrefslogtreecommitdiffhomepage
path: root/readme.txt
diff options
context:
space:
mode:
authorMITSUNARI Shigeo <[email protected]>2021-12-14 13:58:27 +0900
committerMITSUNARI Shigeo <[email protected]>2021-12-14 14:09:33 +0900
commitdf39606fee959ba7ceb0dbd7ae3be2b4b8a56b10 (patch)
treedf6ab235fb3f61e26e68779f67a5265d77bbb205 /readme.txt
parent08f11817c4b7a73af0a2fd201cfefc1c01c07d95 (diff)
downloadxbyak-df39606fee959ba7ceb0dbd7ae3be2b4b8a56b10.tar.gz
xbyak-df39606fee959ba7ceb0dbd7ae3be2b4b8a56b10.zip
update doc
Diffstat (limited to 'readme.txt')
-rw-r--r--readme.txt20
1 files changed, 19 insertions, 1 deletions
diff --git a/readme.txt b/readme.txt
index e526d21..460da05 100644
--- a/readme.txt
+++ b/readme.txt
@@ -1,5 +1,5 @@
- C++用x86(IA-32), x64(AMD64, x86-64) JITアセンブラ Xbyak 6.00
+ C++用x86(IA-32), x64(AMD64, x86-64) JITアセンブラ Xbyak 6.01
-----------------------------------------------------------------------------
◎概要
@@ -277,6 +277,24 @@ L(label);
assert(label.getAddress(), getCurr());
```
+4. farジャンプ
+
+`jmp(mem, T_FAR)`, `call(mem, T_FAR)`, `retf()`をサポートします。
+サイズを明示するために`ptr`の代わりに`word|dword|qword`を利用してください。
+
+32bit
+```
+jmp(word[eax], T_FAR); // jmp m16:16(FF /5)
+jmp(dword[eax], T_FAR); // jmp m16:32(FF /5)
+```
+
+64bit
+```
+jmp(word[rax], T_FAR); // jmp m16:16(FF /5)
+jmp(dword[rax], T_FAR); // jmp m16:32(FF /5)
+jmp(qword[rax], T_FAR); // jmp m16:64(REX.W FF /5)
+```
+
・Xbyak::CodeGenerator()コンストラクタインタフェース
@param maxSize [in] コード生成最大サイズ(デフォルト4096byte)