From: Alice Carlotti Date: Sun, 20 Apr 2025 22:03:39 +0000 (+0100) Subject: aarch64: Add new test advsimd-scalar-shift-immediate.d X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=c9b4c146368433f0bbdf4d6b3517e3b5f79d2bb4;p=thirdparty%2Fbinutils-gdb.git aarch64: Add new test advsimd-scalar-shift-immediate.d All instructions were previously untested. --- 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 index 00000000000..8a511fccc71 --- /dev/null +++ b/gas/testsuite/gas/aarch64/advsimd-scalar-shift-immediate.d @@ -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 index 00000000000..bddc9cb2a1a --- /dev/null +++ b/gas/testsuite/gas/aarch64/advsimd-scalar-shift-immediate.s @@ -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