diff options
author | MITSUNARI Shigeo <[email protected]> | 2021-12-14 13:58:27 +0900 |
---|---|---|
committer | MITSUNARI Shigeo <[email protected]> | 2021-12-14 14:09:33 +0900 |
commit | df39606fee959ba7ceb0dbd7ae3be2b4b8a56b10 (patch) | |
tree | df6ab235fb3f61e26e68779f67a5265d77bbb205 /readme.txt | |
parent | 08f11817c4b7a73af0a2fd201cfefc1c01c07d95 (diff) | |
download | xbyak-df39606fee959ba7ceb0dbd7ae3be2b4b8a56b10.tar.gz xbyak-df39606fee959ba7ceb0dbd7ae3be2b4b8a56b10.zip |
update doc
Diffstat (limited to 'readme.txt')
-rw-r--r-- | readme.txt | 20 |
1 files changed, 19 insertions, 1 deletions
@@ -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)
|