aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorMITSUNARI Shigeo <[email protected]>2022-11-25 16:21:33 +0900
committerMITSUNARI Shigeo <[email protected]>2022-11-25 16:21:33 +0900
commit6c047f48081806b89a6e7fa6a1bde663096d6ce3 (patch)
tree068850345297b057f2901662f6a956a6125ce9db
parentf07c5c25546297096d40154f44ef1dae0b548e0d (diff)
downloadxbyak-6c047f48081806b89a6e7fa6a1bde663096d6ce3.tar.gz
xbyak-6c047f48081806b89a6e7fa6a1bde663096d6ce3.zip
detect rao-int
-rw-r--r--sample/test_util.cpp1
-rw-r--r--xbyak/xbyak_util.h2
2 files changed, 3 insertions, 0 deletions
diff --git a/sample/test_util.cpp b/sample/test_util.cpp
index a20d2df..ef6e3fa 100644
--- a/sample/test_util.cpp
+++ b/sample/test_util.cpp
@@ -93,6 +93,7 @@ void putCPUinfo(bool onlyCpuidFeature)
{ Cpu::tAVX_VNNI_INT8, "avx_vnni_int8" },
{ Cpu::tAVX_NE_CONVERT, "avx_ne_convert" },
{ Cpu::tAVX_IFMA, "avx_ifma" },
+ { Cpu::tRAO_INT, "rao-int" },
};
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 8431925..e1e4476 100644
--- a/xbyak/xbyak_util.h
+++ b/xbyak/xbyak_util.h
@@ -414,6 +414,7 @@ public:
XBYAK_DEFINE_TYPE(69, tAVX_VNNI_INT8);
XBYAK_DEFINE_TYPE(70, tAVX_NE_CONVERT);
XBYAK_DEFINE_TYPE(71, tAVX_IFMA);
+ XBYAK_DEFINE_TYPE(72, tRAO_INT);
#undef XBYAK_SPLIT_ID
#undef XBYAK_DEFINE_TYPE
@@ -553,6 +554,7 @@ public:
if (EDX & (1U << 22)) type_ |= tAMX_BF16;
if (maxNumSubLeaves >= 1) {
getCpuidEx(7, 1, data);
+ if (EAX & (1U << 3)) type_ |= tRAO_INT;
if (EAX & (1U << 4)) type_ |= tAVX_VNNI;
if (type_ & tAVX512F) {
if (EAX & (1U << 5)) type_ |= tAVX512_BF16;