This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
[PATCH 2/2] xtensa: gas: add relaxations tests
- From: Max Filippov <jcmvbkbc at gmail dot com>
- To: binutils at sourceware dot org
- Cc: Sterling Augustine <augustine dot sterling at gmail dot com>, Eric Tsai <erictsai at cadence dot com>, linux-xtensa at linux-xtensa dot org, Max Filippov <jcmvbkbc at gmail dot com>
- Date: Wed, 10 Apr 2019 13:38:20 -0700
- Subject: [PATCH 2/2] xtensa: gas: add relaxations tests
- References: <20190410203820.18358-1-jcmvbkbc@gmail.com>
gas/
2019-04-10 Max Filippov <jcmvbkbc@gmail.com>
* testsuite/gas/xtensa/loop-relax-2.d: New test definition.
* testsuite/gas/xtensa/loop-relax.d: New test definition.
* testsuite/gas/xtensa/loop-relax.s: New test source.
* testsuite/gas/xtensa/text-section-literals-1a.d: New test
definition.
* testsuite/gas/xtensa/text-section-literals-2.d: New test
definition.
* testsuite/gas/xtensa/text-section-literals-2.s: New test
source.
* testsuite/gas/xtensa/text-section-literals-2a.d: New test
definition.
* testsuite/gas/xtensa/text-section-literals-3.d: New test
definition.
* testsuite/gas/xtensa/text-section-literals-3.s: New test
source.
* testsuite/gas/xtensa/text-section-literals-4.d: New test
definition.
* testsuite/gas/xtensa/text-section-literals-4.s: New test
source.
* testsuite/gas/xtensa/text-section-literals-4a.d: New test
definition.
---
gas/testsuite/gas/xtensa/loop-relax-2.d | 7 +++
gas/testsuite/gas/xtensa/loop-relax.d | 14 ++++++
gas/testsuite/gas/xtensa/loop-relax.s | 58 ++++++++++++++++++++++
.../gas/xtensa/text-section-literals-1a.d | 18 +++++++
gas/testsuite/gas/xtensa/text-section-literals-2.d | 9 ++++
gas/testsuite/gas/xtensa/text-section-literals-2.s | 3 ++
.../gas/xtensa/text-section-literals-2a.d | 10 ++++
gas/testsuite/gas/xtensa/text-section-literals-3.d | 11 ++++
gas/testsuite/gas/xtensa/text-section-literals-3.s | 3 ++
gas/testsuite/gas/xtensa/text-section-literals-4.d | 9 ++++
gas/testsuite/gas/xtensa/text-section-literals-4.s | 3 ++
.../gas/xtensa/text-section-literals-4a.d | 10 ++++
12 files changed, 155 insertions(+)
create mode 100644 gas/testsuite/gas/xtensa/loop-relax-2.d
create mode 100644 gas/testsuite/gas/xtensa/loop-relax.d
create mode 100644 gas/testsuite/gas/xtensa/loop-relax.s
create mode 100644 gas/testsuite/gas/xtensa/text-section-literals-1a.d
create mode 100644 gas/testsuite/gas/xtensa/text-section-literals-2.d
create mode 100644 gas/testsuite/gas/xtensa/text-section-literals-2.s
create mode 100644 gas/testsuite/gas/xtensa/text-section-literals-2a.d
create mode 100644 gas/testsuite/gas/xtensa/text-section-literals-3.d
create mode 100644 gas/testsuite/gas/xtensa/text-section-literals-3.s
create mode 100644 gas/testsuite/gas/xtensa/text-section-literals-4.d
create mode 100644 gas/testsuite/gas/xtensa/text-section-literals-4.s
create mode 100644 gas/testsuite/gas/xtensa/text-section-literals-4a.d
diff --git a/gas/testsuite/gas/xtensa/loop-relax-2.d b/gas/testsuite/gas/xtensa/loop-relax-2.d
new file mode 100644
index 000000000000..c0024bf67637
--- /dev/null
+++ b/gas/testsuite/gas/xtensa/loop-relax-2.d
@@ -0,0 +1,7 @@
+#as: --text-section-literals
+#source: loop_align.s
+#objdump: -d
+
+#...
+.*loop.*a5,.*
+#...
diff --git a/gas/testsuite/gas/xtensa/loop-relax.d b/gas/testsuite/gas/xtensa/loop-relax.d
new file mode 100644
index 000000000000..a5c8793ca21c
--- /dev/null
+++ b/gas/testsuite/gas/xtensa/loop-relax.d
@@ -0,0 +1,14 @@
+#as:
+#objdump: -d
+
+#...
+.*loop.*a2,.*
+.*rsr.lend.*a2
+.*wsr.lbeg.*a2
+.*l32r.*a2,.*
+.*nop
+.*wsr.lend.*a2
+.*isync
+.*rsr.lcount.*a2
+.*addi.*a2, a2, 1
+#...
diff --git a/gas/testsuite/gas/xtensa/loop-relax.s b/gas/testsuite/gas/xtensa/loop-relax.s
new file mode 100644
index 000000000000..26fbdd85cf8e
--- /dev/null
+++ b/gas/testsuite/gas/xtensa/loop-relax.s
@@ -0,0 +1,58 @@
+foo = 0x12345678
+bar = 0x12345679
+baz = 0x1234567a
+qux = 0x1234567b
+
+ .text
+ .globl main
+ .align 4
+main:
+ entry sp, 32
+ movi a2, foo
+ movi a3, bar
+ movi a4, baz
+ movi a5, qux
+ movi a6, 0
+ movi a7, 2
+
+ loop a2, .Lloop_end
+ j 1f
+
+2:
+ movi a2, 10
+ loop a2, 3f
+ addi a6, a6, 1
+3:
+ .rep 100
+ nop
+ .endr
+
+ movi a2, 10
+ loop a2, 3f
+ addi a6, a6, 1
+3:
+ .rep 100
+ nop
+ .endr
+
+ .align 4
+ .literal_position
+1:
+ beqi a6, 2, 2b
+ movi a2, foo
+ movi a3, bar
+ movi a4, baz
+ movi a5, qux
+
+ beqi a6, 1, 1f
+
+ addi a6, a6, 1
+.Lloop_end:
+
+ .rep 16
+ ill
+ .endr
+
+1:
+ movi a2, 0
+ retw
diff --git a/gas/testsuite/gas/xtensa/text-section-literals-1a.d b/gas/testsuite/gas/xtensa/text-section-literals-1a.d
new file mode 100644
index 000000000000..ca18e353bf4f
--- /dev/null
+++ b/gas/testsuite/gas/xtensa/text-section-literals-1a.d
@@ -0,0 +1,18 @@
+#as: --auto-litpools
+#objdump: -d
+#source: text-section-literals-1.s
+
+.*: +file format .*xtensa.*
+#...
+Disassembly of section .init.literal:
+#...
+Disassembly of section .fini.literal:
+#...
+Disassembly of section .init:
+#...
+ *0:.*l32r.*
+#...
+Disassembly of section .fini:
+#...
+ *0:.*l32r.*
+#...
diff --git a/gas/testsuite/gas/xtensa/text-section-literals-2.d b/gas/testsuite/gas/xtensa/text-section-literals-2.d
new file mode 100644
index 000000000000..c73c6b15abf0
--- /dev/null
+++ b/gas/testsuite/gas/xtensa/text-section-literals-2.d
@@ -0,0 +1,9 @@
+#as: --text-section-literals
+#objdump: -ds
+#Lone literal assembled successfully with --text-section-literals
+
+.*file format .*xtensa.*
+#...
+Contents of section .text:
+ 0000 12345678 .*
+#...
diff --git a/gas/testsuite/gas/xtensa/text-section-literals-2.s b/gas/testsuite/gas/xtensa/text-section-literals-2.s
new file mode 100644
index 000000000000..2846b420fa42
--- /dev/null
+++ b/gas/testsuite/gas/xtensa/text-section-literals-2.s
@@ -0,0 +1,3 @@
+ .text
+
+ .literal .L0, 0x12345678
diff --git a/gas/testsuite/gas/xtensa/text-section-literals-2a.d b/gas/testsuite/gas/xtensa/text-section-literals-2a.d
new file mode 100644
index 000000000000..9b918769f9d5
--- /dev/null
+++ b/gas/testsuite/gas/xtensa/text-section-literals-2a.d
@@ -0,0 +1,10 @@
+#as: --auto-litpools
+#objdump: -ds
+#source: text-section-literals-2.s
+#Lone literal assembled successfully with --auto-litpools
+
+.*file format .*xtensa.*
+#...
+Contents of section .text:
+ 0000 12345678 .*
+#...
diff --git a/gas/testsuite/gas/xtensa/text-section-literals-3.d b/gas/testsuite/gas/xtensa/text-section-literals-3.d
new file mode 100644
index 000000000000..b45a7e12e1a9
--- /dev/null
+++ b/gas/testsuite/gas/xtensa/text-section-literals-3.d
@@ -0,0 +1,11 @@
+#as: --text-section-literals
+#objdump: -ds
+
+.*file format .*xtensa.*
+#...
+Contents of section .text:
+ 0000 12345678 .*
+#...
+00000004 <foo>:
+.*4:.*l32r.*a2, 0.*
+#...
diff --git a/gas/testsuite/gas/xtensa/text-section-literals-3.s b/gas/testsuite/gas/xtensa/text-section-literals-3.s
new file mode 100644
index 000000000000..a3fad22548e1
--- /dev/null
+++ b/gas/testsuite/gas/xtensa/text-section-literals-3.s
@@ -0,0 +1,3 @@
+ .text
+foo:
+ movi a2, 0x12345678
diff --git a/gas/testsuite/gas/xtensa/text-section-literals-4.d b/gas/testsuite/gas/xtensa/text-section-literals-4.d
new file mode 100644
index 000000000000..f09a1f62487f
--- /dev/null
+++ b/gas/testsuite/gas/xtensa/text-section-literals-4.d
@@ -0,0 +1,9 @@
+#as: --text-section-literals --longcalls
+#objdump: -d
+
+.*file format .*xtensa.*
+#...
+00000004 <foo>:
+.*4:.*l32r.*a0, 0 .*
+.*7:.*callx0.*a0
+#...
diff --git a/gas/testsuite/gas/xtensa/text-section-literals-4.s b/gas/testsuite/gas/xtensa/text-section-literals-4.s
new file mode 100644
index 000000000000..57be3ac48c33
--- /dev/null
+++ b/gas/testsuite/gas/xtensa/text-section-literals-4.s
@@ -0,0 +1,3 @@
+ .text
+foo:
+ call0 bar
diff --git a/gas/testsuite/gas/xtensa/text-section-literals-4a.d b/gas/testsuite/gas/xtensa/text-section-literals-4a.d
new file mode 100644
index 000000000000..64a186a053c2
--- /dev/null
+++ b/gas/testsuite/gas/xtensa/text-section-literals-4a.d
@@ -0,0 +1,10 @@
+#as: --auto-litpools --longcalls
+#objdump: -d
+#source: text-section-literals-4.s
+
+.*file format .*xtensa.*
+#...
+00000004 <foo>:
+.*4:.*l32r.*a0, 0 .*
+.*7:.*callx0.*a0
+#...
--
2.11.0