public inbox for binutils-cvs@sourceware.org
 help / color / mirror / Atom feed
* [binutils-gdb] ELF: test certain .text/.data usages
@ 2024-01-05  7:18 Jan Beulich
  0 siblings, 0 replies; only message in thread
From: Jan Beulich @ 2024-01-05  7:18 UTC (permalink / raw)
  To: bfd-cvs

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=1de6e1fdf10e9e1ab387da04c3bbc6e83e5c5226

commit 1de6e1fdf10e9e1ab387da04c3bbc6e83e5c5226
Author: Jan Beulich <jbeulich@suse.com>
Date:   Fri Jan 5 08:17:34 2024 +0100

    ELF: test certain .text/.data usages
    
    Various targets have / had overrides for .text and/or .data. Make sure
    that in such cases sub-section specifiers are accepted, as mandated by
    the doc.

Diff:
---
 gas/testsuite/gas/elf/data-prev.d    | 14 ++++++++++++++
 gas/testsuite/gas/elf/data-prev.s    |  6 ++++++
 gas/testsuite/gas/elf/data-subsect.d | 11 +++++++++++
 gas/testsuite/gas/elf/data-subsect.s | 14 ++++++++++++++
 gas/testsuite/gas/elf/elf.exp        |  4 ++++
 gas/testsuite/gas/elf/text-prev.d    | 14 ++++++++++++++
 gas/testsuite/gas/elf/text-prev.s    |  6 ++++++
 gas/testsuite/gas/elf/text-subsect.d | 11 +++++++++++
 gas/testsuite/gas/elf/text-subsect.s | 10 ++++++++++
 9 files changed, 90 insertions(+)

diff --git a/gas/testsuite/gas/elf/data-prev.d b/gas/testsuite/gas/elf/data-prev.d
new file mode 100644
index 00000000000..8464f1f685b
--- /dev/null
+++ b/gas/testsuite/gas/elf/data-prev.d
@@ -0,0 +1,14 @@
+#name: .data / .previous interaction
+#as: --no-pad-sections
+#readelf: -S --wide
+
+There are [0-9]+ section headers, starting at offset 0x[0-9a-f]+:
+
+Section Headers:
+ +\[Nr\] Name +Type +Addr(ess|) +Off +Size .*
+#...
+ *\[ [1-9]\] *\.text +PROGBITS +0*0 +0[0-9a-f]* 0* .*
+ *\[ [1-9]\] *\.data +PROGBITS +0*0 +0[0-9a-f]* 0*1 .*
+#...
+ *\[ [1-9]\] *\.aux +PROGBITS +0*0 +0[0-9a-f]* 0*1 .*
+#pass
diff --git a/gas/testsuite/gas/elf/data-prev.s b/gas/testsuite/gas/elf/data-prev.s
new file mode 100644
index 00000000000..291805cbf4f
--- /dev/null
+++ b/gas/testsuite/gas/elf/data-prev.s
@@ -0,0 +1,6 @@
+	.text
+	.section .aux, "a", %progbits
+	.data
+	.byte 0
+	.previous
+	.byte 1
diff --git a/gas/testsuite/gas/elf/data-subsect.d b/gas/testsuite/gas/elf/data-subsect.d
new file mode 100644
index 00000000000..bfbdd36c636
--- /dev/null
+++ b/gas/testsuite/gas/elf/data-subsect.d
@@ -0,0 +1,11 @@
+#name: .data <subsection>
+#as: --no-pad-sections
+#readelf: -S --wide
+
+There are [0-9]+ section headers, starting at offset 0x[0-9a-f]+:
+
+Section Headers:
+ +\[Nr\] Name +Type +Addr(ess|) +Off +Size .*
+#...
+ *\[ [1-9]\] *\.data +PROGBITS +0*0 +0[0-9a-f]* 0*a .*
+#pass
diff --git a/gas/testsuite/gas/elf/data-subsect.s b/gas/testsuite/gas/elf/data-subsect.s
new file mode 100644
index 00000000000..5436c46e278
--- /dev/null
+++ b/gas/testsuite/gas/elf/data-subsect.s
@@ -0,0 +1,14 @@
+	.data
+	.byte 1
+
+	.data 2
+	.balign 2
+	.byte 3
+	.byte 3
+
+	.data 1
+	.balign 4
+	.byte 2
+	.byte 2
+	.byte 2
+	.byte 2
diff --git a/gas/testsuite/gas/elf/elf.exp b/gas/testsuite/gas/elf/elf.exp
index 88ef09c7c84..e03dc2bf00c 100644
--- a/gas/testsuite/gas/elf/elf.exp
+++ b/gas/testsuite/gas/elf/elf.exp
@@ -194,6 +194,10 @@ if { [is_elf_format] } then {
 	}
     }
     run_dump_test "pseudo"
+    run_dump_test "text-prev" $dump_opts
+    run_dump_test "text-subsect" $dump_opts
+    run_dump_test "data-prev" $dump_opts
+    run_dump_test "data-subsect" $dump_opts
     run_dump_test "section0"
     run_dump_test "section1"
     # The h8300 port issues a warning message for
diff --git a/gas/testsuite/gas/elf/text-prev.d b/gas/testsuite/gas/elf/text-prev.d
new file mode 100644
index 00000000000..e8a14ee485b
--- /dev/null
+++ b/gas/testsuite/gas/elf/text-prev.d
@@ -0,0 +1,14 @@
+#name: .text / .previous interaction
+#as: --no-pad-sections
+#readelf: -S --wide
+
+There are [0-9]+ section headers, starting at offset 0x[0-9a-f]+:
+
+Section Headers:
+ +\[Nr\] Name +Type +Addr(ess|) +Off +Size .*
+#...
+ *\[ [1-9]\] *\.text +PROGBITS +0*0 +0[0-9a-f]* 0*([1248]|10) .*
+ *\[ [1-9]\] *\.data +PROGBITS +0*0 +0[0-9a-f]* 0* .*
+#...
+ *\[ [1-9]\] *\.aux +PROGBITS +0*0 +0[0-9a-f]* 0*1 .*
+#pass
diff --git a/gas/testsuite/gas/elf/text-prev.s b/gas/testsuite/gas/elf/text-prev.s
new file mode 100644
index 00000000000..673d5d2bd51
--- /dev/null
+++ b/gas/testsuite/gas/elf/text-prev.s
@@ -0,0 +1,6 @@
+	.data
+	.section .aux, "a", %progbits
+	.text
+	.nop
+	.previous
+	.byte 0
diff --git a/gas/testsuite/gas/elf/text-subsect.d b/gas/testsuite/gas/elf/text-subsect.d
new file mode 100644
index 00000000000..7968bc7efd0
--- /dev/null
+++ b/gas/testsuite/gas/elf/text-subsect.d
@@ -0,0 +1,11 @@
+#name: .text <subsection>
+#as: --no-pad-sections
+#readelf: -S --wide
+
+There are [0-9]+ section headers, starting at offset 0x[0-9a-f]+:
+
+Section Headers:
+ +\[Nr\] Name +Type +Addr(ess|) +Off +Size .*
+#...
+ *\[ [1-9]\] *\.text +PROGBITS +0*0 +0[0-9a-f]* 0*(6[1248]|70) .*
+#pass
diff --git a/gas/testsuite/gas/elf/text-subsect.s b/gas/testsuite/gas/elf/text-subsect.s
new file mode 100644
index 00000000000..1f50c58cb55
--- /dev/null
+++ b/gas/testsuite/gas/elf/text-subsect.s
@@ -0,0 +1,10 @@
+	.text
+	.nop
+
+	.text 2
+	.balign 32
+	.nop
+
+	.text 1
+	.balign 64
+	.nop

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2024-01-05  7:18 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-01-05  7:18 [binutils-gdb] ELF: test certain .text/.data usages Jan Beulich

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).