From: Claudio Bantaloukas <[email protected]>

These functions could already support svmfloat8_t types but were missing tests.
This change uses the similar ones for uint8.

gcc/testsuite/
        * gcc.target/aarch64/sme2/acle-asm/luti2_mf8_x2.c: New test.
        * gcc.target/aarch64/sme2/acle-asm/luti2_mf8_x4.c: Likewise.
        * gcc.target/aarch64/sme2/acle-asm/luti2_mf8.c: Likewise.
        * gcc.target/aarch64/sme2/acle-asm/luti4_mf8_x2.c: Likewise.
        * gcc.target/aarch64/sme2/acle-asm/luti4_mf8.c: Likewise.
---
 .../aarch64/sme2/acle-asm/luti2_mf8.c         | 48 ++++++++++++++++
 .../aarch64/sme2/acle-asm/luti2_mf8_x2.c      | 50 +++++++++++++++++
 .../aarch64/sme2/acle-asm/luti2_mf8_x4.c      | 56 +++++++++++++++++++
 .../aarch64/sme2/acle-asm/luti4_mf8.c         | 48 ++++++++++++++++
 .../aarch64/sme2/acle-asm/luti4_mf8_x2.c      | 50 +++++++++++++++++
 5 files changed, 252 insertions(+)
 create mode 100644 gcc/testsuite/gcc.target/aarch64/sme2/acle-asm/luti2_mf8.c
 create mode 100644 
gcc/testsuite/gcc.target/aarch64/sme2/acle-asm/luti2_mf8_x2.c
 create mode 100644 
gcc/testsuite/gcc.target/aarch64/sme2/acle-asm/luti2_mf8_x4.c
 create mode 100644 gcc/testsuite/gcc.target/aarch64/sme2/acle-asm/luti4_mf8.c
 create mode 100644 
gcc/testsuite/gcc.target/aarch64/sme2/acle-asm/luti4_mf8_x2.c

diff --git a/gcc/testsuite/gcc.target/aarch64/sme2/acle-asm/luti2_mf8.c b/gcc/testsuite/gcc.target/aarch64/sme2/acle-asm/luti2_mf8.c
new file mode 100644
index 00000000000..3cd830c385f
--- /dev/null
+++ b/gcc/testsuite/gcc.target/aarch64/sme2/acle-asm/luti2_mf8.c
@@ -0,0 +1,48 @@
+/* { dg-final { check-function-bodies "**" "" "-DCHECK_ASM" } } */
+
+#include "test_sme2_acle.h"
+
+/*
+** luti2_z1_z0_0:
+**	luti2	z1\.b, zt0, z0\[0\]
+**	ret
+*/
+TEST_XN_SINGLE (luti2_z1_z0_0, svmfloat8_t, svuint8_t, z1,
+		svluti2_lane_zt_mf8 (0, z0, 0),
+		svluti2_lane_zt_mf8 (0, z0, 0))
+
+/*
+** luti2_z18_z5_15:
+**	luti2	z18\.b, zt0, z5\[15\]
+**	ret
+*/
+TEST_XN_SINGLE (luti2_z18_z5_15, svmfloat8_t, svuint8_t, z18,
+		svluti2_lane_zt_mf8 (0, z5, 15),
+		svluti2_lane_zt_mf8 (0, z5, 15))
+
+/*
+** luti2_z24_z7_13:
+**	luti2	z24\.b, zt0, z7\[13\]
+**	ret
+*/
+TEST_XN_SINGLE (luti2_z24_z7_13, svmfloat8_t, svuint8_t, z24,
+		svluti2_lane_zt_mf8 (0, z7, 13),
+		svluti2_lane_zt_mf8 (0, z7, 13))
+
+/*
+** luti2_z28_z16_11:
+**	luti2	z28\.b, zt0, z16\[11\]
+**	ret
+*/
+TEST_XN_SINGLE (luti2_z28_z16_11, svmfloat8_t, svuint8_t, z28,
+		svluti2_lane_zt_mf8 (0, z16, 11),
+		svluti2_lane_zt_mf8 (0, z16, 11))
+
+/*
+** luti2_z24_z23_1:
+**	luti2	z24\.b, zt0, z23\[1\]
+**	ret
+*/
+TEST_XN_SINGLE (luti2_z24_z23_1, svmfloat8_t, svuint8_t, z24,
+		svluti2_lane_zt_mf8 (0, z23, 1),
+		svluti2_lane_zt_mf8 (0, z23, 1))
diff --git a/gcc/testsuite/gcc.target/aarch64/sme2/acle-asm/luti2_mf8_x2.c b/gcc/testsuite/gcc.target/aarch64/sme2/acle-asm/luti2_mf8_x2.c
new file mode 100644
index 00000000000..bb299affdd3
--- /dev/null
+++ b/gcc/testsuite/gcc.target/aarch64/sme2/acle-asm/luti2_mf8_x2.c
@@ -0,0 +1,50 @@
+/* { dg-final { check-function-bodies "**" "" "-DCHECK_ASM" } } */
+
+#include "test_sme2_acle.h"
+
+/*
+** luti2_z1_z0_0:
+**	luti2	{[^\n]+}, zt0, z0\[0\]
+**	mov	[^\n]+
+**	mov	[^\n]+
+**	ret
+*/
+TEST_XN_SINGLE (luti2_z1_z0_0, svmfloat8x2_t, svuint8_t, z1,
+		svluti2_lane_zt_mf8_x2 (0, z0, 0),
+		svluti2_lane_zt_mf8_x2 (0, z0, 0))
+
+/*
+** luti2_z18_z5_7:
+**	luti2	{z18\.b - z19\.b}, zt0, z5\[7\]
+**	ret
+*/
+TEST_XN_SINGLE (luti2_z18_z5_7, svmfloat8x2_t, svuint8_t, z18,
+		svluti2_lane_zt_mf8_x2 (0, z5, 7),
+		svluti2_lane_zt_mf8_x2 (0, z5, 7))
+
+/*
+** luti2_z24_z7_6:
+**	luti2	{z24\.b - z25\.b}, zt0, z7\[6\]
+**	ret
+*/
+TEST_XN_SINGLE (luti2_z24_z7_6, svmfloat8x2_t, svuint8_t, z24,
+		svluti2_lane_zt_mf8_x2 (0, z7, 6),
+		svluti2_lane_zt_mf8_x2 (0, z7, 6))
+
+/*
+** luti2_z28_z16_3:
+**	luti2	{z28\.b - z29\.b}, zt0, z16\[3\]
+**	ret
+*/
+TEST_XN_SINGLE (luti2_z28_z16_3, svmfloat8x2_t, svuint8_t, z28,
+		svluti2_lane_zt_mf8_x2 (0, z16, 3),
+		svluti2_lane_zt_mf8_x2 (0, z16, 3))
+
+/*
+** luti2_z24_z23_1:
+**	luti2	{z24\.b - z25\.b}, zt0, z23\[1\]
+**	ret
+*/
+TEST_XN_SINGLE (luti2_z24_z23_1, svmfloat8x2_t, svuint8_t, z24,
+		svluti2_lane_zt_mf8_x2 (0, z23, 1),
+		svluti2_lane_zt_mf8_x2 (0, z23, 1))
diff --git a/gcc/testsuite/gcc.target/aarch64/sme2/acle-asm/luti2_mf8_x4.c b/gcc/testsuite/gcc.target/aarch64/sme2/acle-asm/luti2_mf8_x4.c
new file mode 100644
index 00000000000..a9cefbc14d9
--- /dev/null
+++ b/gcc/testsuite/gcc.target/aarch64/sme2/acle-asm/luti2_mf8_x4.c
@@ -0,0 +1,56 @@
+/* { dg-final { check-function-bodies "**" "" "-DCHECK_ASM" } } */
+
+#include "test_sme2_acle.h"
+
+/*
+** luti2_z1_z0_0:
+**	luti2	{[^\n]+}, zt0, z0\[0\]
+**	mov	[^\n]+
+**	mov	[^\n]+
+**	mov	[^\n]+
+**	mov	[^\n]+
+**	ret
+*/
+TEST_XN_SINGLE (luti2_z1_z0_0, svmfloat8x4_t, svuint8_t, z1,
+		svluti2_lane_zt_mf8_x4 (0, z0, 0),
+		svluti2_lane_zt_mf8_x4 (0, z0, 0))
+
+/*
+** luti2_z18_z5_3:
+**	luti2	{[^\n]+}, zt0, z5\[3\]
+**	mov	[^\n]+
+**	mov	[^\n]+
+**	mov	[^\n]+
+**	mov	[^\n]+
+**	ret
+*/
+TEST_XN_SINGLE (luti2_z18_z5_3, svmfloat8x4_t, svuint8_t, z18,
+		svluti2_lane_zt_mf8_x4 (0, z5, 3),
+		svluti2_lane_zt_mf8_x4 (0, z5, 3))
+
+/*
+** luti2_z24_z7_2:
+**	luti2	{z24\.b - z27\.b}, zt0, z7\[2\]
+**	ret
+*/
+TEST_XN_SINGLE (luti2_z24_z7_2, svmfloat8x4_t, svuint8_t, z24,
+		svluti2_lane_zt_mf8_x4 (0, z7, 2),
+		svluti2_lane_zt_mf8_x4 (0, z7, 2))
+
+/*
+** luti2_z28_z16_1:
+**	luti2	{z28\.b - z31\.b}, zt0, z16\[1\]
+**	ret
+*/
+TEST_XN_SINGLE (luti2_z28_z16_1, svmfloat8x4_t, svuint8_t, z28,
+		svluti2_lane_zt_mf8_x4 (0, z16, 1),
+		svluti2_lane_zt_mf8_x4 (0, z16, 1))
+
+/*
+** luti2_z24_z23_0:
+**	luti2	{z24\.b - z27\.b}, zt0, z23\[0\]
+**	ret
+*/
+TEST_XN_SINGLE (luti2_z24_z23_0, svmfloat8x4_t, svuint8_t, z24,
+		svluti2_lane_zt_mf8_x4 (0, z23, 0),
+		svluti2_lane_zt_mf8_x4 (0, z23, 0))
diff --git a/gcc/testsuite/gcc.target/aarch64/sme2/acle-asm/luti4_mf8.c b/gcc/testsuite/gcc.target/aarch64/sme2/acle-asm/luti4_mf8.c
new file mode 100644
index 00000000000..1ca04b338eb
--- /dev/null
+++ b/gcc/testsuite/gcc.target/aarch64/sme2/acle-asm/luti4_mf8.c
@@ -0,0 +1,48 @@
+/* { dg-final { check-function-bodies "**" "" "-DCHECK_ASM" } } */
+
+#include "test_sme2_acle.h"
+
+/*
+** luti4_z1_z0_0:
+**	luti4	z1\.b, zt0, z0\[0\]
+**	ret
+*/
+TEST_XN_SINGLE (luti4_z1_z0_0, svmfloat8_t, svuint8_t, z1,
+		svluti4_lane_zt_mf8 (0, z0, 0),
+		svluti4_lane_zt_mf8 (0, z0, 0))
+
+/*
+** luti4_z18_z5_7:
+**	luti4	z18\.b, zt0, z5\[7\]
+**	ret
+*/
+TEST_XN_SINGLE (luti4_z18_z5_7, svmfloat8_t, svuint8_t, z18,
+		svluti4_lane_zt_mf8 (0, z5, 7),
+		svluti4_lane_zt_mf8 (0, z5, 7))
+
+/*
+** luti4_z24_z7_6:
+**	luti4	z24\.b, zt0, z7\[6\]
+**	ret
+*/
+TEST_XN_SINGLE (luti4_z24_z7_6, svmfloat8_t, svuint8_t, z24,
+		svluti4_lane_zt_mf8 (0, z7, 6),
+		svluti4_lane_zt_mf8 (0, z7, 6))
+
+/*
+** luti4_z28_z16_4:
+**	luti4	z28\.b, zt0, z16\[4\]
+**	ret
+*/
+TEST_XN_SINGLE (luti4_z28_z16_4, svmfloat8_t, svuint8_t, z28,
+		svluti4_lane_zt_mf8 (0, z16, 4),
+		svluti4_lane_zt_mf8 (0, z16, 4))
+
+/*
+** luti4_z24_z23_1:
+**	luti4	z24\.b, zt0, z23\[1\]
+**	ret
+*/
+TEST_XN_SINGLE (luti4_z24_z23_1, svmfloat8_t, svuint8_t, z24,
+		svluti4_lane_zt_mf8 (0, z23, 1),
+		svluti4_lane_zt_mf8 (0, z23, 1))
diff --git a/gcc/testsuite/gcc.target/aarch64/sme2/acle-asm/luti4_mf8_x2.c b/gcc/testsuite/gcc.target/aarch64/sme2/acle-asm/luti4_mf8_x2.c
new file mode 100644
index 00000000000..1e3516ed340
--- /dev/null
+++ b/gcc/testsuite/gcc.target/aarch64/sme2/acle-asm/luti4_mf8_x2.c
@@ -0,0 +1,50 @@
+/* { dg-final { check-function-bodies "**" "" "-DCHECK_ASM" } } */
+
+#include "test_sme2_acle.h"
+
+/*
+** luti4_z1_z0_0:
+**	luti4	{[^\n]+}, zt0, z0\[0\]
+**	mov	[^\n]+
+**	mov	[^\n]+
+**	ret
+*/
+TEST_XN_SINGLE (luti4_z1_z0_0, svmfloat8x2_t, svuint8_t, z1,
+		svluti4_lane_zt_mf8_x2 (0, z0, 0),
+		svluti4_lane_zt_mf8_x2 (0, z0, 0))
+
+/*
+** luti4_z18_z5_3:
+**	luti4	{z18\.b - z19\.b}, zt0, z5\[3\]
+**	ret
+*/
+TEST_XN_SINGLE (luti4_z18_z5_3, svmfloat8x2_t, svuint8_t, z18,
+		svluti4_lane_zt_mf8_x2 (0, z5, 3),
+		svluti4_lane_zt_mf8_x2 (0, z5, 3))
+
+/*
+** luti4_z24_z7_2:
+**	luti4	{z24\.b - z25\.b}, zt0, z7\[2\]
+**	ret
+*/
+TEST_XN_SINGLE (luti4_z24_z7_2, svmfloat8x2_t, svuint8_t, z24,
+		svluti4_lane_zt_mf8_x2 (0, z7, 2),
+		svluti4_lane_zt_mf8_x2 (0, z7, 2))
+
+/*
+** luti4_z28_z16_1:
+**	luti4	{z28\.b - z29\.b}, zt0, z16\[1\]
+**	ret
+*/
+TEST_XN_SINGLE (luti4_z28_z16_1, svmfloat8x2_t, svuint8_t, z28,
+		svluti4_lane_zt_mf8_x2 (0, z16, 1),
+		svluti4_lane_zt_mf8_x2 (0, z16, 1))
+
+/*
+** luti4_z24_z23_0:
+**	luti4	{z24\.b - z25\.b}, zt0, z23\[0\]
+**	ret
+*/
+TEST_XN_SINGLE (luti4_z24_z23_0, svmfloat8x2_t, svuint8_t, z24,
+		svluti4_lane_zt_mf8_x2 (0, z23, 0),
+		svluti4_lane_zt_mf8_x2 (0, z23, 0))

Reply via email to