aboutsummaryrefslogtreecommitdiffhomepage
path: root/readme.md
diff options
context:
space:
mode:
authorMITSUNARI Shigeo <[email protected]>2016-08-03 13:19:02 +0900
committerMITSUNARI Shigeo <[email protected]>2016-08-03 13:19:02 +0900
commitfc777abfd4ea276e084ac3a4f3490ec174570c71 (patch)
treef169c46ffd19b9f31e440b53fb9cacec093c720b /readme.md
parent780db6774d7aae09d7494ae4578f07820ac2c648 (diff)
downloadxbyak-fc777abfd4ea276e084ac3a4f3490ec174570c71.tar.gz
xbyak-fc777abfd4ea276e084ac3a4f3490ec174570c71.zip
update document
Diffstat (limited to 'readme.md')
-rw-r--r--readme.md19
1 files changed, 13 insertions, 6 deletions
diff --git a/readme.md b/readme.md
index f5aa3a9..a7dee31 100644
--- a/readme.md
+++ b/readme.md
@@ -1,5 +1,5 @@
-Xbyak 5.00 ; JIT assembler for x86(IA32), x64(AMD64, x86-64) by C++
+Xbyak 5.01 ; JIT assembler for x86(IA32), x64(AMD64, x86-64) by C++
=============
Abstract
@@ -32,7 +32,7 @@ MMX/MMX2/SSE/SSE2/SSE3/SSSE3/SSE4/FPU(*partial*)/AVX/AVX2/FMA/VEX-encoded GPR/AV
>Note: Xbyak uses and(), or(), xor(), not() functions, so "-fno-operator-names" option is required on gcc.
Or define XBYAK_NO_OP_NAMES and use and_(), or_(), xor_(), not_() instead of them.
-and_(), or_(), xor_(), not_() are available if XBYAK_NO_OP_NAMES is not defined.
+and_(), or_(), xor_(), not_() are always available.
Install
-------------
@@ -40,7 +40,6 @@ Install
The following files are necessary. Please add the path to your compile directories.
* xbyak.h
-* xbyak_bin2hex.h
* xbyak_mnemonic.h
Linux:
@@ -90,13 +89,18 @@ mov ax, cs --> mov(ax, cs);
### AVX
-You can omit a destination for almost 3-op mnemonics.
-
vaddps(xmm1, xmm2, xmm3); // xmm1 <- xmm2 + xmm3
- vaddps(xmm2, xmm3); // xmm2 <- xmm2 + xmm3
vaddps(xmm2, xmm3, ptr [rax]); // use ptr to access memory
vgatherdpd(xmm1, ptr [ebp+123+xmm2*4], xmm3);
+*Remark*
+The omitted destination syntax as the following ss disabled.
+```
+ vaddps(xmm2, xmm3); // xmm2 <- xmm2 + xmm3
+``
+define `XBYAK_ENABLE_OMITTED_OPERAND` if you use it for backward compatibility.
+But the newer version will not support it.
+
### AVX-512
```
@@ -282,6 +286,8 @@ Macro
* **XBYAK64** is defined on 64bit.
* **XBYAK64_WIN** is defined on 64bit Windows(VC)
* **XBYAK64_GCC** is defined on 64bit gcc, cygwin
+* define **XBYAK_NO_OP_NAMES** on gcc without `-fno-operator-names`
+* define **XBYAK_ENABLE_OMITTED_OPERAND** if you use omitted destination such as `vaddps(xmm2, xmm3);`(duplicated in the future)
Sample
-------------
@@ -309,6 +315,7 @@ The header files under xbyak/ are independent of cybozulib.
History
-------------
+* 2016/Aug/03 ver 5.01 disable omitted operand
* 2016/Jun/24 ver 5.00 support avx-512 instruction set
* 2016/Jun/13 avx-512 add mask instructions
* 2016/May/05 ver 4.91 add detection of AVX-512 to Xbyak::util::Cpu