]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commitdiff
LoongArch: Add gas testsuit for alias instructions
authorLulu Cai <cailulu@loongson.cn>
Fri, 5 Jan 2024 03:41:27 +0000 (11:41 +0800)
committerliuzhensong <liuzhensong@loongson.cn>
Tue, 5 Mar 2024 11:55:31 +0000 (19:55 +0800)
Test the alias instructions.

gas/testsuite/gas/loongarch/insn_alias_32.d [new file with mode: 0644]
gas/testsuite/gas/loongarch/insn_alias_32.s [new file with mode: 0644]
gas/testsuite/gas/loongarch/insn_alias_64.d [new file with mode: 0644]
gas/testsuite/gas/loongarch/insn_alias_64.s [new file with mode: 0644]

diff --git a/gas/testsuite/gas/loongarch/insn_alias_32.d b/gas/testsuite/gas/loongarch/insn_alias_32.d
new file mode 100644 (file)
index 0000000..753eae7
--- /dev/null
@@ -0,0 +1,19 @@
+#as:
+#objdump: -d -M no-aliases
+#skip: loongarch64-*-*
+
+.*     file format .*
+
+
+Disassembly of section .text:
+
+0+ <L1>:
+   0:  001500a4        or              \$a0, \$a1, \$zero
+   4:  02bffc04        addi.w          \$a0, \$zero, -1
+   8:  03400000        andi            \$zero, \$zero, 0x0
+   c:  03800404        ori             \$a0, \$zero, 0x1
+  10:  4c000020        jirl            \$zero, \$ra, 0
+  14:  4c000020        jirl            \$zero, \$ra, 0
+  18:  60000080        blt             \$a0, \$zero, 0 # 18 <L1\+0x18>
+  1c:  64000080        bge             \$a0, \$zero, 0 # 1c <L1\+0x1c>
+  20:  64000004        bge             \$zero, \$a0, 0 # 20 <L1\+0x20>
diff --git a/gas/testsuite/gas/loongarch/insn_alias_32.s b/gas/testsuite/gas/loongarch/insn_alias_32.s
new file mode 100644 (file)
index 0000000..8027e32
--- /dev/null
@@ -0,0 +1,10 @@
+L1:
+  move  $a0,$a1
+  li.w  $a0,-1
+  nop
+  li.w $a0,1
+  ret
+  jr    $ra
+  bltz  $a0,.L1
+  bgez  $a0,.L1
+  blez  $a0,.L1
diff --git a/gas/testsuite/gas/loongarch/insn_alias_64.d b/gas/testsuite/gas/loongarch/insn_alias_64.d
new file mode 100644 (file)
index 0000000..8d3ed7b
--- /dev/null
@@ -0,0 +1,20 @@
+#as-new:
+#objdump: -d -M no-aliases
+#skip: loongarch32-*-*
+
+.*:     file format .*
+
+
+Disassembly of section .text:
+
+0+ <L1>:
+   0:  001500a4        or              \$a0, \$a1, \$zero
+   4:  02bffc04        addi.w          \$a0, \$zero, -1
+   8:  02bffc04        addi.w          \$a0, \$zero, -1
+   c:  03400000        andi            \$zero, \$zero, 0x0
+  10:  03800404        ori             \$a0, \$zero, 0x1
+  14:  4c000020        jirl            \$zero, \$ra, 0
+  18:  4c000020        jirl            \$zero, \$ra, 0
+  1c:  60000080        blt             \$a0, \$zero, 0 # 1c <L1\+0x1c>
+  20:  64000080        bge             \$a0, \$zero, 0 # 20 <L1\+0x20>
+  24:  64000004        bge             \$zero, \$a0, 0 # 24 <L1\+0x24>
diff --git a/gas/testsuite/gas/loongarch/insn_alias_64.s b/gas/testsuite/gas/loongarch/insn_alias_64.s
new file mode 100644 (file)
index 0000000..e7e4263
--- /dev/null
@@ -0,0 +1,11 @@
+L1:
+  move  $a0,$a1
+  li.w  $a0,-1
+  li.d  $a0,-1
+  nop
+  li.w $a0,1
+  ret
+  jr    $ra
+  bltz  $a0,.L1
+  bgez  $a0,.L1
+  blez  $a0,.L1