diff --git a/sample/test_util.cpp b/sample/test_util.cpp index 7115b38..35c2fa8 100644 --- a/sample/test_util.cpp +++ b/sample/test_util.cpp @@ -102,6 +102,7 @@ void putCPUinfo(bool onlyCpuidFeature) { Cpu::tSHA512, "sha512" }, { Cpu::tSM3, "sm3" }, { Cpu::tSM4, "sm4" }, + { Cpu::tAVX_VNNI_INT16, "avx_vnni_int16" }, }; for (size_t i = 0; i < NUM_OF_ARRAY(tbl); i++) { if (cpu.has(tbl[i].type)) printf(" %s", tbl[i].str); diff --git a/xbyak/xbyak_util.h b/xbyak/xbyak_util.h index 5756443..0bcc134 100644 --- a/xbyak/xbyak_util.h +++ b/xbyak/xbyak_util.h @@ -469,6 +469,7 @@ public: XBYAK_DEFINE_TYPE(78, tSHA512); XBYAK_DEFINE_TYPE(79, tSM3); XBYAK_DEFINE_TYPE(80, tSM4); + XBYAK_DEFINE_TYPE(81, tAVX_VNNI_INT16); #undef XBYAK_SPLIT_ID #undef XBYAK_DEFINE_TYPE @@ -624,6 +625,7 @@ public: if (EAX & (1U << 23)) type_ |= tAVX_IFMA; if (EDX & (1U << 4)) type_ |= tAVX_VNNI_INT8; if (EDX & (1U << 5)) type_ |= tAVX_NE_CONVERT; + if (EDX & (1U << 10)) type_ |= tAVX_VNNI_INT16; if (EDX & (1U << 14)) type_ |= tPREFETCHITI; } }