]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commitdiff
aarch64: Add new test mov-wide.d
authorAlice Carlotti <alice.carlotti@arm.com>
Sun, 20 Apr 2025 22:12:35 +0000 (23:12 +0100)
committerAlice Carlotti <alice.carlotti@arm.com>
Fri, 9 May 2025 19:27:21 +0000 (20:27 +0100)
Only movn was previously untested.

gas/testsuite/gas/aarch64/mov-wide.d [new file with mode: 0644]
gas/testsuite/gas/aarch64/mov-wide.s [new file with mode: 0644]

diff --git a/gas/testsuite/gas/aarch64/mov-wide.d b/gas/testsuite/gas/aarch64/mov-wide.d
new file mode 100644 (file)
index 0000000..6627902
--- /dev/null
@@ -0,0 +1,46 @@
+#as: -march=armv8-a
+#objdump: -dr
+
+.*:     file format .*
+
+
+Disassembly of section \.text:
+
+0+ <\.text>:
+ *[0-9a-f]+:   12800000        mov     w0, #0xffffffff                 // #-1
+ *[0-9a-f]+:   1280001f        mov     wzr, #0xffffffff                // #-1
+ *[0-9a-f]+:   129fffe0        movn    w0, #0xffff
+ *[0-9a-f]+:   12a00000        movn    w0, #0x0, lsl #16
+ *[0-9a-f]+:   92800000        mov     x0, #0xffffffffffffffff         // #-1
+ *[0-9a-f]+:   9280001f        mov     xzr, #0xffffffffffffffff        // #-1
+ *[0-9a-f]+:   929fffe0        mov     x0, #0xffffffffffff0000         // #-65536
+ *[0-9a-f]+:   92e00000        movn    x0, #0x0, lsl #48
+ *[0-9a-f]+:   52800000        mov     w0, #0x0                        // #0
+ *[0-9a-f]+:   5280001f        mov     wzr, #0x0                       // #0
+ *[0-9a-f]+:   529fffe0        mov     w0, #0xffff                     // #65535
+ *[0-9a-f]+:   52a00000        movz    w0, #0x0, lsl #16
+ *[0-9a-f]+:   d2800000        mov     x0, #0x0                        // #0
+ *[0-9a-f]+:   d280001f        mov     xzr, #0x0                       // #0
+ *[0-9a-f]+:   d29fffe0        mov     x0, #0xffff                     // #65535
+ *[0-9a-f]+:   d2e00000        movz    x0, #0x0, lsl #48
+ *[0-9a-f]+:   72800000        movk    w0, #0x0
+ *[0-9a-f]+:   7280001f        movk    wzr, #0x0
+ *[0-9a-f]+:   729fffe0        movk    w0, #0xffff
+ *[0-9a-f]+:   72a00000        movk    w0, #0x0, lsl #16
+ *[0-9a-f]+:   f2800000        movk    x0, #0x0
+ *[0-9a-f]+:   f280001f        movk    xzr, #0x0
+ *[0-9a-f]+:   f29fffe0        movk    x0, #0xffff
+ *[0-9a-f]+:   f2e00000        movk    x0, #0x0, lsl #48
+ *[0-9a-f]+:   52800000        mov     w0, #0x0                        // #0
+ *[0-9a-f]+:   5280001f        mov     wzr, #0x0                       // #0
+ *[0-9a-f]+:   529fffe0        mov     w0, #0xffff                     // #65535
+ *[0-9a-f]+:   52bfffe0        mov     w0, #0xffff0000                 // #-65536
+ *[0-9a-f]+:   12800000        mov     w0, #0xffffffff                 // #-1
+ *[0-9a-f]+:   12b00000        mov     w0, #0x7fffffff                 // #2147483647
+ *[0-9a-f]+:   d2800000        mov     x0, #0x0                        // #0
+ *[0-9a-f]+:   d280001f        mov     xzr, #0x0                       // #0
+ *[0-9a-f]+:   d29fffe0        mov     x0, #0xffff                     // #65535
+ *[0-9a-f]+:   d2ffffe0        mov     x0, #0xffff000000000000         // #-281474976710656
+ *[0-9a-f]+:   92800000        mov     x0, #0xffffffffffffffff         // #-1
+ *[0-9a-f]+:   929fffe0        mov     x0, #0xffffffffffff0000         // #-65536
+ *[0-9a-f]+:   92ffffe0        mov     x0, #0xffffffffffff             // #281474976710655
diff --git a/gas/testsuite/gas/aarch64/mov-wide.s b/gas/testsuite/gas/aarch64/mov-wide.s
new file mode 100644 (file)
index 0000000..058e23e
--- /dev/null
@@ -0,0 +1,40 @@
+       movn    w0, #0
+       movn    wzr, #0, lsl #0
+       movn    w0, #65535
+       movn    w0, #0, lsl #16
+       movn    x0, #0
+       movn    xzr, #0, lsl #0
+       movn    x0, #65535
+       movn    x0, #0, lsl #48
+
+       movz    w0, #0
+       movz    wzr, #0, lsl #0
+       movz    w0, #65535
+       movz    w0, #0, lsl #16
+       movz    x0, #0
+       movz    xzr, #0, lsl #0
+       movz    x0, #65535
+       movz    x0, #0, lsl #48
+
+       movk    w0, #0
+       movk    wzr, #0, lsl #0
+       movk    w0, #65535
+       movk    w0, #0, lsl #16
+       movk    x0, #0
+       movk    xzr, #0, lsl #0
+       movk    x0, #65535
+       movk    x0, #0, lsl #48
+
+       mov     w0, #0
+       mov     wzr, #0
+       mov     w0, #65535
+       mov     w0, #4294901760
+       mov     w0, #-1
+       mov     w0, #2147483647
+       mov     x0, #0
+       mov     xzr, #0
+       mov     x0, #65535
+       mov     x0, #18446462598732840960
+       mov     x0, #-1
+       mov     x0, #-65536
+       mov     x0, #281474976710655