aboutsummaryrefslogtreecommitdiffhomepage
path: root/test/apx.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'test/apx.cpp')
-rw-r--r--test/apx.cpp22
1 files changed, 22 insertions, 0 deletions
diff --git a/test/apx.cpp b/test/apx.cpp
index d184e6c..f03b032 100644
--- a/test/apx.cpp
+++ b/test/apx.cpp
@@ -1753,3 +1753,25 @@ CYBOZU_TEST_AUTO(kmov)
CYBOZU_TEST_EQUAL(c.getSize(), n);
CYBOZU_TEST_EQUAL_ARRAY(c.getCode(), tbl, n);
}
+
+CYBOZU_TEST_AUTO(amx)
+{
+ struct Code : Xbyak::CodeGenerator {
+ Code()
+ {
+ ldtilecfg(ptr [r30+r29*4+0x12]);
+ sttilecfg(ptr [r30+r29*4+0x12]);
+ tileloadd(tmm1, ptr [r30+r29*4+0x12]);
+ tileloaddt1(tmm3, ptr [r30+r29*4+0x12]);
+ tilestored(ptr [r30+r29*4+0x12], tmm5);
+ }
+ } c;
+ const uint8_t tbl[] = {
+ 0x62, 0x9a, 0x78, 0x08, 0x49, 0x44, 0xae, 0x12, 0x62, 0x9a, 0x79, 0x08, 0x49, 0x44, 0xae, 0x12,
+ 0x62, 0x9a, 0x7b, 0x08, 0x4b, 0x4c, 0xae, 0x12, 0x62, 0x9a, 0x79, 0x08, 0x4b, 0x5c, 0xae, 0x12,
+ 0x62, 0x9a, 0x7a, 0x08, 0x4b, 0x6c, 0xae, 0x12,
+ };
+ const size_t n = sizeof(tbl);
+ CYBOZU_TEST_EQUAL(c.getSize(), n);
+ CYBOZU_TEST_EQUAL_ARRAY(c.getCode(), tbl, n);
+}