diff options
author | MITSUNARI Shigeo <[email protected]> | 2022-10-06 09:14:49 +0900 |
---|---|---|
committer | MITSUNARI Shigeo <[email protected]> | 2022-10-07 09:30:06 +0900 |
commit | 3706869f8fdff083ac4ef5058cde01c043fb1471 (patch) | |
tree | 466ead8102f6c6e8c00b4c0efdcdae231869a298 | |
parent | d6f2d7577239470228cbccdf10f2b6485a9701ae (diff) | |
download | xbyak-3706869f8fdff083ac4ef5058cde01c043fb1471.tar.gz xbyak-3706869f8fdff083ac4ef5058cde01c043fb1471.zip |
desc. of setDefaultEncoding
-rw-r--r-- | doc/changelog.md | 2 | ||||
-rw-r--r-- | doc/usage.md | 8 | ||||
-rw-r--r-- | readme.txt | 4 |
3 files changed, 13 insertions, 1 deletions
diff --git a/doc/changelog.md b/doc/changelog.md index 31fd939..484b6bd 100644 --- a/doc/changelog.md +++ b/doc/changelog.md @@ -1,5 +1,7 @@ # History +* 2022/Oct/06 vpmadd52{h,l}uq support AVX-IFMA +* 2022/Oct/05 support amx_fp16/avx_vnni_int8/avx_ne_convert and add setDefaultEncoding() * 2022/Aug/15 ver 6.62 add serialize instruction * 2022/Aug/02 ver 6.61.1 noexcept is supported by Visual Studio 2015 or later * 2022/Jul/29 ver 6.61 fix exception of movzx eax, ah in 64-bit mode diff --git a/doc/usage.md b/doc/usage.md index 7dad245..7b5678e 100644 --- a/doc/usage.md +++ b/doc/usage.md @@ -110,7 +110,15 @@ vfpclassps k5{k3}, [rax+64]{1to4}, 5 --> vfpclassps(k5|k3, yword_b [rax+64], vpdpbusd(xm0, xm1, xm2); // default encoding is EVEX vpdpbusd(xm0, xm1, xm2, EvexEncoding); // same as the above vpdpbusd(xm0, xm1, xm2, VexEncoding); // VEX encoding +setDefaultEncoding(VexEncoding); // default encoding is VEX +vpdpbusd(xm0, xm1, xm2); // VEX encoding ``` + +- setDefaultEncoding(PreferredEncoding encoding); + - Set the default encoding to select EVEX or VEX. + - The default value is EvexEncoding. + - This function affects only an instruction that has a PreferredEncoding argument such as vpdpbusd. + ### Remark * `k1`, ..., `k7` are opmask registers. - `k0` is dealt as no mask. @@ -166,13 +166,15 @@ vfpclassps k5{k3}, [rax+64]{1to4}, 5 --> vfpclassps(k5|k3, xword_b [rax+64], vpdpbusd(xm0, xm1, xm2); // default encoding is EVEX
vpdpbusd(xm0, xm1, xm2, EvexEncoding); // same as the above
vpdpbusd(xm0, xm1, xm2, VexEncoding); // VEX encoding
-
+setDefaultEncoding(VexEncoding); // default encoding is VEX
+vpdpbusd(xm0, xm1, xm2); // VEX encoding
注意
* k1, ..., k7 は新しいopmaskレジスタです。
* z, sae, rn-sae, rd-sae, ru-sae, rz-saeの代わりにT_z, T_sae, T_rn_sae, T_rd_sae, T_ru_sae, T_rz_saeを使ってください。
* `k4 | k3`と`k3 | k4`は意味が異なります。
* {1toX}の代わりにptr_bを使ってください。Xは自動的に決まります。
* 一部の命令はメモリサイズを指定するためにxword/yword/zword(_b)を使ってください。
+* setDefaultEncoding()でencoding省略時のEVEX/VEXを設定できます。
・ラベル
|