aboutsummaryrefslogtreecommitdiff
path: root/gas
diff options
context:
space:
mode:
authorPaul Iannetta <piannetta@kalrayinc.com>2023-09-07 17:27:31 +0200
committerAlan Modra <amodra@gmail.com>2023-09-08 07:49:09 +0930
commit6ab5851ceb85bf64c222ce3234dbe956148a7428 (patch)
tree48223d640ad11622fc74917d33e6b36a2ea4c177 /gas
parentdd39dcae8880f0ed298daa1e35d21a84f0a7bdec (diff)
downloadgdb-6ab5851ceb85bf64c222ce3234dbe956148a7428.zip
gdb-6ab5851ceb85bf64c222ce3234dbe956148a7428.tar.gz
gdb-6ab5851ceb85bf64c222ce3234dbe956148a7428.tar.bz2
kvx: Add a testcase for bundles with KVXMAXBUNDLEWORDS syllables
* testsuite/gas/kvx/fat-bundles.s: New test. * testsuite/gas/kvx/kv3-1-fat-bundles.d: New test. * testsuite/gas/kvx/kv3-2-fat-bundles.d: New test.
Diffstat (limited to 'gas')
-rw-r--r--gas/testsuite/gas/kvx/fat-bundles.s13
-rw-r--r--gas/testsuite/gas/kvx/kv3-1-fat-bundles.d20
-rw-r--r--gas/testsuite/gas/kvx/kv3-2-fat-bundles.d20
3 files changed, 53 insertions, 0 deletions
diff --git a/gas/testsuite/gas/kvx/fat-bundles.s b/gas/testsuite/gas/kvx/fat-bundles.s
new file mode 100644
index 0000000..8119c60
--- /dev/null
+++ b/gas/testsuite/gas/kvx/fat-bundles.s
@@ -0,0 +1,13 @@
+# The bundles in this file all have 8 syllables.
+
+ addd $r0 = $r0, 123456789010 # 1 ALU + 2 Immediate Extensions
+ addd $r0 = $r0, 123456789010 # 1 ALU + 2 Immediate Extensions
+ addd $r1 = $r2, 1234 # 1 ALU + 1 Immediate Extension
+ ;;
+ igoto $r0 # 1 BCU
+ xmt44d $a0a1a2a3 = $a0a1a2a3 # 1 TCA
+ addd $r0 = $r0, 1234 # 1 ALU + 1 Immediate Extension
+ addd $r0 = $r0, 12345678901 # 1 ALU + 1 Immediate Extension
+ fmuld $r1 = $r2, $r3 # 1 MAU
+ lwz $r0 = 0[$r0] # 1 LSU
+ ;;
diff --git a/gas/testsuite/gas/kvx/kv3-1-fat-bundles.d b/gas/testsuite/gas/kvx/kv3-1-fat-bundles.d
new file mode 100644
index 0000000..1f80e04
--- /dev/null
+++ b/gas/testsuite/gas/kvx/kv3-1-fat-bundles.d
@@ -0,0 +1,20 @@
+#as: -march=kv3-1
+#objdump: -d
+#source: fat-bundles.s
+.*\/fat-bundles.o: file format elf64-kvx
+
+
+Disassembly of section .text:
+
+0000000000000000 <.text>:
+ 0: 82 34 04 e1 80 84 00 e1 addd \$r1 = \$r2, 1234 \(0x4d2\)
+ 8: 80 84 00 e1 01 00 00 80 46 a6 2f 8f addd \$r0 = \$r0, 123456789010 \(0x1cbe991a12\)
+ 14: 00 00 00 88 46 a6 2f 97 00 00 00 10 addd \$r0 = \$r0, 123456789010 \(0x1cbe991a12\);;
+
+ 20: 00 00 d8 8f igoto \$r0
+ 24: 00 00 0c 84 xmt44d \$a0a1a2a3 = \$a0a1a2a3
+ 28: 80 34 00 e1 40 0d 00 e1 addd \$r0 = \$r0, 1234 \(0x4d2\)
+ 30: c2 70 05 d8 00 00 00 b0 addd \$r0 = \$r0, 12345678901 \(0x2dfdc1c35\)
+ 38: 01 00 00 80 fmuld \$r1 = \$r2, \$r3
+ 3c: 07 f7 b7 08 lwz \$r0 = 0 \(0x0\)\[\$r0\];;
+
diff --git a/gas/testsuite/gas/kvx/kv3-2-fat-bundles.d b/gas/testsuite/gas/kvx/kv3-2-fat-bundles.d
new file mode 100644
index 0000000..54717eb
--- /dev/null
+++ b/gas/testsuite/gas/kvx/kv3-2-fat-bundles.d
@@ -0,0 +1,20 @@
+#as: -march=kv3-2
+#objdump: -d
+#source: fat-bundles.s
+.*\/fat-bundles.o: file format elf64-kvx
+
+
+Disassembly of section .text:
+
+0000000000000000 <.text>:
+ 0: 82 34 04 e2 80 84 00 e2 addd \$r1 = \$r2, 1234 \(0x4d2\)
+ 8: 80 84 00 e2 01 00 00 80 46 a6 2f 8f addd \$r0 = \$r0, 123456789010 \(0x1cbe991a12\)
+ 14: 00 00 00 88 46 a6 2f 97 00 00 00 10 addd \$r0 = \$r0, 123456789010 \(0x1cbe991a12\);;
+
+ 20: 00 00 d8 8f igoto \$r0
+ 24: 00 10 05 87 xcopyv.td \$a0a1a2a3 = \$a0a1a2a3
+ 28: 80 34 00 e2 40 0d 00 e2 addd \$r0 = \$r0, 1234 \(0x4d2\)
+ 30: c2 70 05 d8 00 00 00 b0 addd \$r0 = \$r0, 12345678901 \(0x2dfdc1c35\)
+ 38: 01 00 00 80 fmuld \$r1 = \$r2, \$r3
+ 3c: 07 f7 b7 08 lwz \$r0 = 0 \(0x0\)\[\$r0\];;
+