aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorMITSUNARI Shigeo <[email protected]>2022-12-07 16:09:18 +0900
committerMITSUNARI Shigeo <[email protected]>2022-12-07 16:09:18 +0900
commitf6678587615bfca1c8aa324dc1d2c7b4d0001a4b (patch)
tree5bd0476545cd391fd6ec8ed32f33ad36c627a08e
parent124617ac952df2bc3c90e3a08a78d8d78625ff2c (diff)
downloadxbyak-f6678587615bfca1c8aa324dc1d2c7b4d0001a4b.tar.gz
xbyak-f6678587615bfca1c8aa324dc1d2c7b4d0001a4b.zip
add detection of prefetchiti
-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 b87b803..96e9d21 100644
--- a/sample/test_util.cpp
+++ b/sample/test_util.cpp
@@ -95,6 +95,7 @@ void putCPUinfo(bool onlyCpuidFeature)
{ Cpu::tAVX_IFMA, "avx_ifma" },
{ Cpu::tRAO_INT, "rao-int" },
{ Cpu::tCMPCCXADD, "cmpccxadd" },
+ { Cpu::tPREFETCHITI, "prefetchiti" },
};
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 ebf15e6..da7b68b 100644
--- a/xbyak/xbyak_util.h
+++ b/xbyak/xbyak_util.h
@@ -416,6 +416,7 @@ public:
XBYAK_DEFINE_TYPE(71, tAVX_IFMA);
XBYAK_DEFINE_TYPE(72, tRAO_INT);
XBYAK_DEFINE_TYPE(73, tCMPCCXADD);
+ XBYAK_DEFINE_TYPE(74, tPREFETCHITI);
#undef XBYAK_SPLIT_ID
#undef XBYAK_DEFINE_TYPE
@@ -565,6 +566,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 << 14)) type_ |= tPREFETCHITI;
}
}
setFamily();