aboutsummaryrefslogtreecommitdiff
path: root/test/aarch64
diff options
context:
space:
mode:
Diffstat (limited to 'test/aarch64')
-rw-r--r--test/aarch64/test-assembler-aarch64.cc17
-rw-r--r--test/aarch64/test-disasm-aarch64.cc3
2 files changed, 20 insertions, 0 deletions
diff --git a/test/aarch64/test-assembler-aarch64.cc b/test/aarch64/test-assembler-aarch64.cc
index 0a57ade6..5def1293 100644
--- a/test/aarch64/test-assembler-aarch64.cc
+++ b/test/aarch64/test-assembler-aarch64.cc
@@ -22885,6 +22885,23 @@ TEST(system_dcpop) {
TEARDOWN();
}
+TEST(system_dccvadp) {
+ SETUP_WITH_FEATURES(CPUFeatures::kDCCVADP);
+ const char* msg = "DCCVADP test!";
+ uintptr_t msg_addr = reinterpret_cast<uintptr_t>(msg);
+
+ START();
+ __ Mov(x20, msg_addr);
+ __ Dc(CVADP, x20);
+ END();
+
+#ifdef VIXL_INCLUDE_SIMULATOR_AARCH64
+ RUN();
+ ASSERT_EQUAL_64(msg_addr, x20);
+#endif
+
+ TEARDOWN();
+}
TEST(neon_2regmisc_xtn) {
SETUP_WITH_FEATURES(CPUFeatures::kNEON);
diff --git a/test/aarch64/test-disasm-aarch64.cc b/test/aarch64/test-disasm-aarch64.cc
index 65909bf3..cdddf860 100644
--- a/test/aarch64/test-disasm-aarch64.cc
+++ b/test/aarch64/test-disasm-aarch64.cc
@@ -3274,6 +3274,8 @@ TEST(system_sys) {
COMPARE(sys(0x3, 0x7, 0xa, 0x1, x2), "dc cvac, x2");
COMPARE(sys(0x3, 0x7, 0xb, 0x1, x3), "dc cvau, x3");
COMPARE(sys(0x3, 0x7, 0xe, 0x1, x4), "dc civac, x4");
+ COMPARE(sys(0x3, 0x7, 0xc, 0x1, x5), "dc cvap, x5");
+ COMPARE(sys(0x3, 0x7, 0xd, 0x1, x6), "dc cvadp, x6");
COMPARE(sys(0x3, 0x7, 0x4, 0x1, x0), "dc zva, x0");
COMPARE(sys(0x0, 0x0, 0x0, 0x0, x0), "sys #0, C0, C0, #0, x0");
COMPARE(sys(0x1, 0x2, 0x5, 0x2, x5), "sys #1, C2, C5, #2, x5");
@@ -3303,6 +3305,7 @@ TEST(system_dc) {
COMPARE(dc(CVAU, x3), "dc cvau, x3");
COMPARE(dc(CVAP, x4), "dc cvap, x4");
COMPARE(dc(CIVAC, x5), "dc civac, x5");
+ COMPARE(dc(CVADP, x6), "dc cvadp, x6");
COMPARE(dc(ZVA, x0), "dc zva, x0");
COMPARE(dc(ZVA, xzr), "dc zva, xzr");