aboutsummaryrefslogtreecommitdiff
path: root/gas
diff options
context:
space:
mode:
authorLulu Cai <cailulu@loongson.cn>2024-01-05 11:41:27 +0800
committerliuzhensong <liuzhensong@loongson.cn>2024-03-05 19:55:31 +0800
commit30dbbdc55a77d3b4e4ca4e1fca874fbb06c34f6e (patch)
tree6e7bf1948df109c19494dc9fdbc97ead6fa387fc /gas
parenta7ea089b0bccb6379e079e2ab764c2012d94b472 (diff)
downloadgdb-30dbbdc55a77d3b4e4ca4e1fca874fbb06c34f6e.zip
gdb-30dbbdc55a77d3b4e4ca4e1fca874fbb06c34f6e.tar.gz
gdb-30dbbdc55a77d3b4e4ca4e1fca874fbb06c34f6e.tar.bz2
LoongArch: Add gas testsuit for alias instructions
Test the alias instructions.
Diffstat (limited to 'gas')
-rw-r--r--gas/testsuite/gas/loongarch/insn_alias_32.d19
-rw-r--r--gas/testsuite/gas/loongarch/insn_alias_32.s10
-rw-r--r--gas/testsuite/gas/loongarch/insn_alias_64.d20
-rw-r--r--gas/testsuite/gas/loongarch/insn_alias_64.s11
4 files changed, 60 insertions, 0 deletions
diff --git a/gas/testsuite/gas/loongarch/insn_alias_32.d b/gas/testsuite/gas/loongarch/insn_alias_32.d
new file mode 100644
index 0000000..753eae7
--- /dev/null
+++ b/gas/testsuite/gas/loongarch/insn_alias_32.d
@@ -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
index 0000000..8027e32
--- /dev/null
+++ b/gas/testsuite/gas/loongarch/insn_alias_32.s
@@ -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
index 0000000..8d3ed7b
--- /dev/null
+++ b/gas/testsuite/gas/loongarch/insn_alias_64.d
@@ -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
index 0000000..e7e4263
--- /dev/null
+++ b/gas/testsuite/gas/loongarch/insn_alias_64.s
@@ -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