[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 19/23] tests/tcg/xtensa: add LSCI/LSCX group tests
From: |
Max Filippov |
Subject: |
[Qemu-devel] [PATCH 19/23] tests/tcg/xtensa: add LSCI/LSCX group tests |
Date: |
Mon, 18 Feb 2019 22:11:07 -0800 |
Signed-off-by: Max Filippov <address@hidden>
---
tests/tcg/xtensa/Makefile | 1 +
tests/tcg/xtensa/test_lsc.S | 122 ++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 123 insertions(+)
create mode 100644 tests/tcg/xtensa/test_lsc.S
diff --git a/tests/tcg/xtensa/Makefile b/tests/tcg/xtensa/Makefile
index bd94ba6fe549..c2bc278be5e7 100644
--- a/tests/tcg/xtensa/Makefile
+++ b/tests/tcg/xtensa/Makefile
@@ -41,6 +41,7 @@ TESTCASES += test_fail.tst
TESTCASES += test_flix.tst
TESTCASES += test_interrupt.tst
TESTCASES += test_loop.tst
+TESTCASES += test_lsc.tst
TESTCASES += test_mac16.tst
TESTCASES += test_max.tst
TESTCASES += test_min.tst
diff --git a/tests/tcg/xtensa/test_lsc.S b/tests/tcg/xtensa/test_lsc.S
new file mode 100644
index 000000000000..0578bf19e72e
--- /dev/null
+++ b/tests/tcg/xtensa/test_lsc.S
@@ -0,0 +1,122 @@
+#include "macros.inc"
+
+test_suite lsc
+
+#if XCHAL_HAVE_FP
+
+test lsi
+ movi a2, 1
+ wsr a2, cpenable
+
+ movi a2, 1f
+ lsi f0, a2, 0
+ lsi f1, a2, 4
+ lsiu f2, a2, 8
+ movi a3, 1f + 8
+ assert eq, a2, a3
+ rfr a2, f0
+ movi a3, 0x3f800000
+ assert eq, a2, a3
+ rfr a2, f1
+ movi a3, 0x40000000
+ assert eq, a2, a3
+ rfr a2, f2
+ movi a3, 0x40400000
+ assert eq, a2, a3
+.data
+ .align 4
+1:
+.float 1, 2, 3
+.text
+test_end
+
+test ssi
+ movi a2, 1f
+ movi a3, 0x40800000
+ wfr f3, a3
+ ssi f3, a2, 0
+ movi a3, 0x40a00000
+ wfr f4, a3
+ ssi f4, a2, 4
+ movi a3, 0x40c00000
+ wfr f5, a3
+ ssiu f5, a2, 8
+ movi a3, 1f + 8
+ assert eq, a2, a3
+ l32i a4, a2, -8
+ movi a3, 0x40800000
+ assert eq, a4, a3
+ l32i a4, a2, -4
+ movi a3, 0x40a00000
+ assert eq, a4, a3
+ l32i a4, a2, 0
+ movi a3, 0x40c00000
+ assert eq, a4, a3
+.data
+ .align 4
+1:
+.float 0, 0, 0
+.text
+test_end
+
+test lsx
+ movi a2, 1f
+ movi a3, 0
+ lsx f6, a2, a3
+ movi a3, 4
+ lsx f7, a2, a3
+ movi a3, 8
+ lsxu f8, a2, a3
+ movi a3, 1f + 8
+ assert eq, a2, a3
+ rfr a2, f6
+ movi a3, 0x40e00000
+ assert eq, a2, a3
+ rfr a2, f7
+ movi a3, 0x41000000
+ assert eq, a2, a3
+ rfr a2, f8
+ movi a3, 0x41100000
+ assert eq, a2, a3
+.data
+ .align 4
+1:
+.float 7, 8, 9
+.text
+test_end
+
+test ssx
+ movi a2, 1f
+ movi a3, 0
+ movi a4, 0x41200000
+ wfr f9, a4
+ ssx f9, a2, a3
+ movi a3, 4
+ movi a4, 0x41300000
+ wfr f10, a4
+ ssx f10, a2, a3
+ movi a3, 8
+ movi a4, 0x41400000
+ wfr f11, a4
+ ssxu f11, a2, a3
+ movi a3, 1f + 8
+ assert eq, a2, a3
+ l32i a4, a2, -8
+ movi a3, 0x41200000
+ assert eq, a4, a3
+ l32i a4, a2, -4
+ movi a3, 0x41300000
+ assert eq, a4, a3
+ l32i a4, a2, 0
+ movi a3, 0x41400000
+ assert eq, a4, a3
+.data
+ .align 4
+1:
+.float 0, 0, 0
+.text
+test_end
+
+#endif
+
+test_suite_end
--
2.11.0
- [Qemu-devel] [PATCH 09/23] tests/tcg/xtensa: conditionalize cache option tests, (continued)
- [Qemu-devel] [PATCH 09/23] tests/tcg/xtensa: conditionalize cache option tests, Max Filippov, 2019/02/19
- [Qemu-devel] [PATCH 10/23] tests/tcg/xtensa: add straightforward conditionals, Max Filippov, 2019/02/19
- [Qemu-devel] [PATCH 16/23] tests/tcg/xtensa: conditionalize windowed register tests, Max Filippov, 2019/02/19
- [Qemu-devel] [PATCH 13/23] tests/tcg/xtensa: conditionalize and expand SR tests, Max Filippov, 2019/02/19
- [Qemu-devel] [PATCH 18/23] tests/tcg/xtensa: add test for FLIX, Max Filippov, 2019/02/19
- [Qemu-devel] [PATCH 11/23] tests/tcg/xtensa: conditionalize interrupt tests, Max Filippov, 2019/02/19
- [Qemu-devel] [PATCH 12/23] tests/tcg/xtensa: conditionalize timer/CCOUNT tests, Max Filippov, 2019/02/19
- [Qemu-devel] [PATCH 21/23] tests/tcg/xtensa: add FP0 group conversion tests, Max Filippov, 2019/02/19
- [Qemu-devel] [PATCH 14/23] tests/tcg/xtensa: fix SR tests for big endian configs, Max Filippov, 2019/02/19
- [Qemu-devel] [PATCH 15/23] tests/tcg/xtensa: conditionalize and fix s32c1i tests, Max Filippov, 2019/02/19
- [Qemu-devel] [PATCH 19/23] tests/tcg/xtensa: add LSCI/LSCX group tests,
Max Filippov <=
- [Qemu-devel] [PATCH 20/23] tests/tcg/xtensa: add FP0 group arithmetic tests, Max Filippov, 2019/02/19
- [Qemu-devel] [PATCH 22/23] tests/tcg/xtensa: add FP1 group tests, Max Filippov, 2019/02/19
- [Qemu-devel] [PATCH 17/23] tests/tcg/xtensa: conditionalize MMU-related tests, Max Filippov, 2019/02/19
- [Qemu-devel] [PATCH 23/23] tests/tcg/xtensa: add FPU2000 coprocessor tests, Max Filippov, 2019/02/19