]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commitdiff
aarch64: Add new test advsimd-scalar-shift-immediate.d
authorAlice Carlotti <alice.carlotti@arm.com>
Sun, 20 Apr 2025 22:03:39 +0000 (23:03 +0100)
committerAlice Carlotti <alice.carlotti@arm.com>
Fri, 9 May 2025 19:27:20 +0000 (20:27 +0100)
All instructions were previously untested.

gas/testsuite/gas/aarch64/advsimd-scalar-shift-immediate.d [new file with mode: 0644]
gas/testsuite/gas/aarch64/advsimd-scalar-shift-immediate.s [new file with mode: 0644]

diff --git a/gas/testsuite/gas/aarch64/advsimd-scalar-shift-immediate.d b/gas/testsuite/gas/aarch64/advsimd-scalar-shift-immediate.d
new file mode 100644 (file)
index 0000000..8a511fc
--- /dev/null
@@ -0,0 +1,173 @@
+#as: -march=armv8-a
+#objdump: -dr
+
+.*:     file format .*
+
+
+Disassembly of section \.text:
+
+0+ <\.text>:
+ *[0-9a-f]+:   5f400400        sshr    d0, d0, #64
+ *[0-9a-f]+:   5f40041f        sshr    d31, d0, #64
+ *[0-9a-f]+:   5f4007e0        sshr    d0, d31, #64
+ *[0-9a-f]+:   5f7f0400        sshr    d0, d0, #1
+ *[0-9a-f]+:   5f401400        ssra    d0, d0, #64
+ *[0-9a-f]+:   5f40141f        ssra    d31, d0, #64
+ *[0-9a-f]+:   5f4017e0        ssra    d0, d31, #64
+ *[0-9a-f]+:   5f7f1400        ssra    d0, d0, #1
+ *[0-9a-f]+:   5f402400        srshr   d0, d0, #64
+ *[0-9a-f]+:   5f40241f        srshr   d31, d0, #64
+ *[0-9a-f]+:   5f4027e0        srshr   d0, d31, #64
+ *[0-9a-f]+:   5f7f2400        srshr   d0, d0, #1
+ *[0-9a-f]+:   5f403400        srsra   d0, d0, #64
+ *[0-9a-f]+:   5f40341f        srsra   d31, d0, #64
+ *[0-9a-f]+:   5f4037e0        srsra   d0, d31, #64
+ *[0-9a-f]+:   5f7f3400        srsra   d0, d0, #1
+ *[0-9a-f]+:   5f405400        shl     d0, d0, #0
+ *[0-9a-f]+:   5f40541f        shl     d31, d0, #0
+ *[0-9a-f]+:   5f4057e0        shl     d0, d31, #0
+ *[0-9a-f]+:   5f7f5400        shl     d0, d0, #63
+ *[0-9a-f]+:   5f087400        sqshl   b0, b0, #0
+ *[0-9a-f]+:   5f08741f        sqshl   b31, b0, #0
+ *[0-9a-f]+:   5f0877e0        sqshl   b0, b31, #0
+ *[0-9a-f]+:   5f0f7400        sqshl   b0, b0, #7
+ *[0-9a-f]+:   5f107400        sqshl   h0, h0, #0
+ *[0-9a-f]+:   5f10741f        sqshl   h31, h0, #0
+ *[0-9a-f]+:   5f1077e0        sqshl   h0, h31, #0
+ *[0-9a-f]+:   5f1f7400        sqshl   h0, h0, #15
+ *[0-9a-f]+:   5f207400        sqshl   s0, s0, #0
+ *[0-9a-f]+:   5f20741f        sqshl   s31, s0, #0
+ *[0-9a-f]+:   5f2077e0        sqshl   s0, s31, #0
+ *[0-9a-f]+:   5f3f7400        sqshl   s0, s0, #31
+ *[0-9a-f]+:   5f407400        sqshl   d0, d0, #0
+ *[0-9a-f]+:   5f40741f        sqshl   d31, d0, #0
+ *[0-9a-f]+:   5f4077e0        sqshl   d0, d31, #0
+ *[0-9a-f]+:   5f7f7400        sqshl   d0, d0, #63
+ *[0-9a-f]+:   5f089400        sqshrn  b0, h0, #8
+ *[0-9a-f]+:   5f08941f        sqshrn  b31, h0, #8
+ *[0-9a-f]+:   5f0897e0        sqshrn  b0, h31, #8
+ *[0-9a-f]+:   5f0f9400        sqshrn  b0, h0, #1
+ *[0-9a-f]+:   5f109400        sqshrn  h0, s0, #16
+ *[0-9a-f]+:   5f10941f        sqshrn  h31, s0, #16
+ *[0-9a-f]+:   5f1097e0        sqshrn  h0, s31, #16
+ *[0-9a-f]+:   5f1f9400        sqshrn  h0, s0, #1
+ *[0-9a-f]+:   5f209400        sqshrn  s0, d0, #32
+ *[0-9a-f]+:   5f20941f        sqshrn  s31, d0, #32
+ *[0-9a-f]+:   5f2097e0        sqshrn  s0, d31, #32
+ *[0-9a-f]+:   5f3f9400        sqshrn  s0, d0, #1
+ *[0-9a-f]+:   5f089c00        sqrshrn b0, h0, #8
+ *[0-9a-f]+:   5f089c1f        sqrshrn b31, h0, #8
+ *[0-9a-f]+:   5f089fe0        sqrshrn b0, h31, #8
+ *[0-9a-f]+:   5f0f9c00        sqrshrn b0, h0, #1
+ *[0-9a-f]+:   5f109c00        sqrshrn h0, s0, #16
+ *[0-9a-f]+:   5f109c1f        sqrshrn h31, s0, #16
+ *[0-9a-f]+:   5f109fe0        sqrshrn h0, s31, #16
+ *[0-9a-f]+:   5f1f9c00        sqrshrn h0, s0, #1
+ *[0-9a-f]+:   5f209c00        sqrshrn s0, d0, #32
+ *[0-9a-f]+:   5f209c1f        sqrshrn s31, d0, #32
+ *[0-9a-f]+:   5f209fe0        sqrshrn s0, d31, #32
+ *[0-9a-f]+:   5f3f9c00        sqrshrn s0, d0, #1
+ *[0-9a-f]+:   7f400400        ushr    d0, d0, #64
+ *[0-9a-f]+:   7f40041f        ushr    d31, d0, #64
+ *[0-9a-f]+:   7f4007e0        ushr    d0, d31, #64
+ *[0-9a-f]+:   7f7f0400        ushr    d0, d0, #1
+ *[0-9a-f]+:   7f401400        usra    d0, d0, #64
+ *[0-9a-f]+:   7f40141f        usra    d31, d0, #64
+ *[0-9a-f]+:   7f4017e0        usra    d0, d31, #64
+ *[0-9a-f]+:   7f7f1400        usra    d0, d0, #1
+ *[0-9a-f]+:   7f402400        urshr   d0, d0, #64
+ *[0-9a-f]+:   7f40241f        urshr   d31, d0, #64
+ *[0-9a-f]+:   7f4027e0        urshr   d0, d31, #64
+ *[0-9a-f]+:   7f7f2400        urshr   d0, d0, #1
+ *[0-9a-f]+:   7f403400        ursra   d0, d0, #64
+ *[0-9a-f]+:   7f40341f        ursra   d31, d0, #64
+ *[0-9a-f]+:   7f4037e0        ursra   d0, d31, #64
+ *[0-9a-f]+:   7f7f3400        ursra   d0, d0, #1
+ *[0-9a-f]+:   7f404400        sri     d0, d0, #64
+ *[0-9a-f]+:   7f40441f        sri     d31, d0, #64
+ *[0-9a-f]+:   7f4047e0        sri     d0, d31, #64
+ *[0-9a-f]+:   7f7f4400        sri     d0, d0, #1
+ *[0-9a-f]+:   7f405400        sli     d0, d0, #0
+ *[0-9a-f]+:   7f40541f        sli     d31, d0, #0
+ *[0-9a-f]+:   7f4057e0        sli     d0, d31, #0
+ *[0-9a-f]+:   7f7f5400        sli     d0, d0, #63
+ *[0-9a-f]+:   7f086400        sqshlu  b0, b0, #0
+ *[0-9a-f]+:   7f08641f        sqshlu  b31, b0, #0
+ *[0-9a-f]+:   7f0867e0        sqshlu  b0, b31, #0
+ *[0-9a-f]+:   7f0f6400        sqshlu  b0, b0, #7
+ *[0-9a-f]+:   7f106400        sqshlu  h0, h0, #0
+ *[0-9a-f]+:   7f10641f        sqshlu  h31, h0, #0
+ *[0-9a-f]+:   7f1067e0        sqshlu  h0, h31, #0
+ *[0-9a-f]+:   7f1f6400        sqshlu  h0, h0, #15
+ *[0-9a-f]+:   7f206400        sqshlu  s0, s0, #0
+ *[0-9a-f]+:   7f20641f        sqshlu  s31, s0, #0
+ *[0-9a-f]+:   7f2067e0        sqshlu  s0, s31, #0
+ *[0-9a-f]+:   7f3f6400        sqshlu  s0, s0, #31
+ *[0-9a-f]+:   7f406400        sqshlu  d0, d0, #0
+ *[0-9a-f]+:   7f40641f        sqshlu  d31, d0, #0
+ *[0-9a-f]+:   7f4067e0        sqshlu  d0, d31, #0
+ *[0-9a-f]+:   7f7f6400        sqshlu  d0, d0, #63
+ *[0-9a-f]+:   7f087400        uqshl   b0, b0, #0
+ *[0-9a-f]+:   7f08741f        uqshl   b31, b0, #0
+ *[0-9a-f]+:   7f0877e0        uqshl   b0, b31, #0
+ *[0-9a-f]+:   7f0f7400        uqshl   b0, b0, #7
+ *[0-9a-f]+:   7f107400        uqshl   h0, h0, #0
+ *[0-9a-f]+:   7f10741f        uqshl   h31, h0, #0
+ *[0-9a-f]+:   7f1077e0        uqshl   h0, h31, #0
+ *[0-9a-f]+:   7f1f7400        uqshl   h0, h0, #15
+ *[0-9a-f]+:   7f207400        uqshl   s0, s0, #0
+ *[0-9a-f]+:   7f20741f        uqshl   s31, s0, #0
+ *[0-9a-f]+:   7f2077e0        uqshl   s0, s31, #0
+ *[0-9a-f]+:   7f3f7400        uqshl   s0, s0, #31
+ *[0-9a-f]+:   7f407400        uqshl   d0, d0, #0
+ *[0-9a-f]+:   7f40741f        uqshl   d31, d0, #0
+ *[0-9a-f]+:   7f4077e0        uqshl   d0, d31, #0
+ *[0-9a-f]+:   7f7f7400        uqshl   d0, d0, #63
+ *[0-9a-f]+:   7f088400        sqshrun b0, h0, #8
+ *[0-9a-f]+:   7f08841f        sqshrun b31, h0, #8
+ *[0-9a-f]+:   7f0887e0        sqshrun b0, h31, #8
+ *[0-9a-f]+:   7f0f8400        sqshrun b0, h0, #1
+ *[0-9a-f]+:   7f108400        sqshrun h0, s0, #16
+ *[0-9a-f]+:   7f10841f        sqshrun h31, s0, #16
+ *[0-9a-f]+:   7f1087e0        sqshrun h0, s31, #16
+ *[0-9a-f]+:   7f1f8400        sqshrun h0, s0, #1
+ *[0-9a-f]+:   7f208400        sqshrun s0, d0, #32
+ *[0-9a-f]+:   7f20841f        sqshrun s31, d0, #32
+ *[0-9a-f]+:   7f2087e0        sqshrun s0, d31, #32
+ *[0-9a-f]+:   7f3f8400        sqshrun s0, d0, #1
+ *[0-9a-f]+:   7f088c00        sqrshrun        b0, h0, #8
+ *[0-9a-f]+:   7f088c1f        sqrshrun        b31, h0, #8
+ *[0-9a-f]+:   7f088fe0        sqrshrun        b0, h31, #8
+ *[0-9a-f]+:   7f0f8c00        sqrshrun        b0, h0, #1
+ *[0-9a-f]+:   7f108c00        sqrshrun        h0, s0, #16
+ *[0-9a-f]+:   7f108c1f        sqrshrun        h31, s0, #16
+ *[0-9a-f]+:   7f108fe0        sqrshrun        h0, s31, #16
+ *[0-9a-f]+:   7f1f8c00        sqrshrun        h0, s0, #1
+ *[0-9a-f]+:   7f208c00        sqrshrun        s0, d0, #32
+ *[0-9a-f]+:   7f208c1f        sqrshrun        s31, d0, #32
+ *[0-9a-f]+:   7f208fe0        sqrshrun        s0, d31, #32
+ *[0-9a-f]+:   7f3f8c00        sqrshrun        s0, d0, #1
+ *[0-9a-f]+:   7f089400        uqshrn  b0, h0, #8
+ *[0-9a-f]+:   7f08941f        uqshrn  b31, h0, #8
+ *[0-9a-f]+:   7f0897e0        uqshrn  b0, h31, #8
+ *[0-9a-f]+:   7f0f9400        uqshrn  b0, h0, #1
+ *[0-9a-f]+:   7f109400        uqshrn  h0, s0, #16
+ *[0-9a-f]+:   7f10941f        uqshrn  h31, s0, #16
+ *[0-9a-f]+:   7f1097e0        uqshrn  h0, s31, #16
+ *[0-9a-f]+:   7f1f9400        uqshrn  h0, s0, #1
+ *[0-9a-f]+:   7f209400        uqshrn  s0, d0, #32
+ *[0-9a-f]+:   7f20941f        uqshrn  s31, d0, #32
+ *[0-9a-f]+:   7f2097e0        uqshrn  s0, d31, #32
+ *[0-9a-f]+:   7f3f9400        uqshrn  s0, d0, #1
+ *[0-9a-f]+:   7f089c00        uqrshrn b0, h0, #8
+ *[0-9a-f]+:   7f089c1f        uqrshrn b31, h0, #8
+ *[0-9a-f]+:   7f089fe0        uqrshrn b0, h31, #8
+ *[0-9a-f]+:   7f0f9c00        uqrshrn b0, h0, #1
+ *[0-9a-f]+:   7f109c00        uqrshrn h0, s0, #16
+ *[0-9a-f]+:   7f109c1f        uqrshrn h31, s0, #16
+ *[0-9a-f]+:   7f109fe0        uqrshrn h0, s31, #16
+ *[0-9a-f]+:   7f1f9c00        uqrshrn h0, s0, #1
+ *[0-9a-f]+:   7f209c00        uqrshrn s0, d0, #32
+ *[0-9a-f]+:   7f209c1f        uqrshrn s31, d0, #32
+ *[0-9a-f]+:   7f209fe0        uqrshrn s0, d31, #32
+ *[0-9a-f]+:   7f3f9c00        uqrshrn s0, d0, #1
diff --git a/gas/testsuite/gas/aarch64/advsimd-scalar-shift-immediate.s b/gas/testsuite/gas/aarch64/advsimd-scalar-shift-immediate.s
new file mode 100644 (file)
index 0000000..bddc9cb
--- /dev/null
@@ -0,0 +1,183 @@
+       sshr    d0, d0, #64
+       sshr    d31, d0, #64
+       sshr    d0, d31, #64
+       sshr    d0, d0, #1
+
+       ssra    d0, d0, #64
+       ssra    d31, d0, #64
+       ssra    d0, d31, #64
+       ssra    d0, d0, #1
+
+       srshr   d0, d0, #64
+       srshr   d31, d0, #64
+       srshr   d0, d31, #64
+       srshr   d0, d0, #1
+
+       srsra   d0, d0, #64
+       srsra   d31, d0, #64
+       srsra   d0, d31, #64
+       srsra   d0, d0, #1
+
+       shl     d0, d0, #0
+       shl     d31, d0, #0
+       shl     d0, d31, #0
+       shl     d0, d0, #63
+
+       sqshl   b0, b0, #0
+       sqshl   b31, b0, #0
+       sqshl   b0, b31, #0
+       sqshl   b0, b0, #7
+       sqshl   h0, h0, #0
+       sqshl   h31, h0, #0
+       sqshl   h0, h31, #0
+       sqshl   h0, h0, #15
+       sqshl   s0, s0, #0
+       sqshl   s31, s0, #0
+       sqshl   s0, s31, #0
+       sqshl   s0, s0, #31
+       sqshl   d0, d0, #0
+       sqshl   d31, d0, #0
+       sqshl   d0, d31, #0
+       sqshl   d0, d0, #63
+
+       sqshrn  b0, h0, #8
+       sqshrn  b31, h0, #8
+       sqshrn  b0, h31, #8
+       sqshrn  b0, h0, #1
+       sqshrn  h0, s0, #16
+       sqshrn  h31, s0, #16
+       sqshrn  h0, s31, #16
+       sqshrn  h0, s0, #1
+       sqshrn  s0, d0, #32
+       sqshrn  s31, d0, #32
+       sqshrn  s0, d31, #32
+       sqshrn  s0, d0, #1
+
+       sqrshrn b0, h0, #8
+       sqrshrn b31, h0, #8
+       sqrshrn b0, h31, #8
+       sqrshrn b0, h0, #1
+       sqrshrn h0, s0, #16
+       sqrshrn h31, s0, #16
+       sqrshrn h0, s31, #16
+       sqrshrn h0, s0, #1
+       sqrshrn s0, d0, #32
+       sqrshrn s31, d0, #32
+       sqrshrn s0, d31, #32
+       sqrshrn s0, d0, #1
+
+       ushr    d0, d0, #64
+       ushr    d31, d0, #64
+       ushr    d0, d31, #64
+       ushr    d0, d0, #1
+
+       usra    d0, d0, #64
+       usra    d31, d0, #64
+       usra    d0, d31, #64
+       usra    d0, d0, #1
+
+       urshr   d0, d0, #64
+       urshr   d31, d0, #64
+       urshr   d0, d31, #64
+       urshr   d0, d0, #1
+
+       ursra   d0, d0, #64
+       ursra   d31, d0, #64
+       ursra   d0, d31, #64
+       ursra   d0, d0, #1
+
+       sri     d0, d0, #64
+       sri     d31, d0, #64
+       sri     d0, d31, #64
+       sri     d0, d0, #1
+
+       sli     d0, d0, #0
+       sli     d31, d0, #0
+       sli     d0, d31, #0
+       sli     d0, d0, #63
+
+       sqshlu  b0, b0, #0
+       sqshlu  b31, b0, #0
+       sqshlu  b0, b31, #0
+       sqshlu  b0, b0, #7
+       sqshlu  h0, h0, #0
+       sqshlu  h31, h0, #0
+       sqshlu  h0, h31, #0
+       sqshlu  h0, h0, #15
+       sqshlu  s0, s0, #0
+       sqshlu  s31, s0, #0
+       sqshlu  s0, s31, #0
+       sqshlu  s0, s0, #31
+       sqshlu  d0, d0, #0
+       sqshlu  d31, d0, #0
+       sqshlu  d0, d31, #0
+       sqshlu  d0, d0, #63
+
+       uqshl   b0, b0, #0
+       uqshl   b31, b0, #0
+       uqshl   b0, b31, #0
+       uqshl   b0, b0, #7
+       uqshl   h0, h0, #0
+       uqshl   h31, h0, #0
+       uqshl   h0, h31, #0
+       uqshl   h0, h0, #15
+       uqshl   s0, s0, #0
+       uqshl   s31, s0, #0
+       uqshl   s0, s31, #0
+       uqshl   s0, s0, #31
+       uqshl   d0, d0, #0
+       uqshl   d31, d0, #0
+       uqshl   d0, d31, #0
+       uqshl   d0, d0, #63
+
+       sqshrun b0, h0, #8
+       sqshrun b31, h0, #8
+       sqshrun b0, h31, #8
+       sqshrun b0, h0, #1
+       sqshrun h0, s0, #16
+       sqshrun h31, s0, #16
+       sqshrun h0, s31, #16
+       sqshrun h0, s0, #1
+       sqshrun s0, d0, #32
+       sqshrun s31, d0, #32
+       sqshrun s0, d31, #32
+       sqshrun s0, d0, #1
+
+       sqrshrun        b0, h0, #8
+       sqrshrun        b31, h0, #8
+       sqrshrun        b0, h31, #8
+       sqrshrun        b0, h0, #1
+       sqrshrun        h0, s0, #16
+       sqrshrun        h31, s0, #16
+       sqrshrun        h0, s31, #16
+       sqrshrun        h0, s0, #1
+       sqrshrun        s0, d0, #32
+       sqrshrun        s31, d0, #32
+       sqrshrun        s0, d31, #32
+       sqrshrun        s0, d0, #1
+
+       uqshrn  b0, h0, #8
+       uqshrn  b31, h0, #8
+       uqshrn  b0, h31, #8
+       uqshrn  b0, h0, #1
+       uqshrn  h0, s0, #16
+       uqshrn  h31, s0, #16
+       uqshrn  h0, s31, #16
+       uqshrn  h0, s0, #1
+       uqshrn  s0, d0, #32
+       uqshrn  s31, d0, #32
+       uqshrn  s0, d31, #32
+       uqshrn  s0, d0, #1
+
+       uqrshrn b0, h0, #8
+       uqrshrn b31, h0, #8
+       uqrshrn b0, h31, #8
+       uqrshrn b0, h0, #1
+       uqrshrn h0, s0, #16
+       uqrshrn h31, s0, #16
+       uqrshrn h0, s31, #16
+       uqrshrn h0, s0, #1
+       uqrshrn s0, d0, #32
+       uqrshrn s31, d0, #32
+       uqrshrn s0, d31, #32
+       uqrshrn s0, d0, #1