diff options
author | MITSUNARI Shigeo <[email protected]> | 2024-10-11 11:50:55 +0900 |
---|---|---|
committer | MITSUNARI Shigeo <[email protected]> | 2024-10-13 13:51:06 +0900 |
commit | 3ca7e64c63daac8c3dd1c3cbafdc26ac011fa6ab (patch) | |
tree | c9f0509a05372e641bc698466064e7e1be1ce20b /gen | |
parent | 864fd0c49ce07fc534b16250758987c445bb9c70 (diff) | |
download | xbyak-3ca7e64c63daac8c3dd1c3cbafdc26ac011fa6ab.tar.gz xbyak-3ca7e64c63daac8c3dd1c3cbafdc26ac011fa6ab.zip |
add type of w(x, x, op) in avx10 bf16
Diffstat (limited to 'gen')
-rw-r--r-- | gen/gen_avx512.cpp | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/gen/gen_avx512.cpp b/gen/gen_avx512.cpp index 23923b0..ff1ba30 100644 --- a/gen/gen_avx512.cpp +++ b/gen/gen_avx512.cpp @@ -946,18 +946,26 @@ void putFP16_2() void putAVX10_BF16() { - const struct Tbl { + // x, x, op + const struct xxopTbl { const char *name; uint64_t type; uint8_t code; } tbl[] = { { "vaddnepbf16", T_66 | T_MAP5 | T_EW0 | T_YMM | T_B16, 0x58 }, + { "vdivnepbf16", T_66 | T_MAP5 | T_EW0 | T_YMM | T_B16, 0x5E }, + { "vmaxpbf16", T_66 | T_MAP5 | T_EW0 | T_YMM | T_B16, 0x5F }, + { "vminpbf16", T_66 | T_MAP5 | T_EW0 | T_YMM | T_B16, 0x5D }, + { "vmulnepbf16", T_66 | T_MAP5 | T_EW0 | T_YMM | T_B16, 0x59 }, + { "vscalefpbf16", T_MAP6 | T_EW0 | T_YMM | T_B16, 0x2C }, + { "vsubnepbf16", T_66 | T_MAP5 | T_EW0 | T_YMM | T_B16, 0x5C }, }; for (size_t i = 0; i < NUM_OF_ARRAY(tbl); i++) { - const Tbl& p = tbl[i]; + const xxopTbl& p = tbl[i]; std::string s = type2String(p.type | T_MUST_EVEX); printf("void %s(const Xmm& x1, const Xmm& x2, const Operand& op) { opAVX_X_X_XM(x1, x2, op, %s, 0x%2X); }\n" , p.name, s.c_str(), p.code); } +// { "vrcppbf16", T_66 | T_MAP6 | T_EW0 | T_YMM | T_B16, 0x4C }, } void putFP16() |