[PATCH 06/11] s390: Align register usage in linker TLS IE tests
Jens Remus
jremus@linux.ibm.com
Thu Nov 13 13:21:39 GMT 2025
In TLS Initial Exec (IE) model tests consistently use registers r3, r4,
and r5. This simplifies manual tracing of the test using e.g. GDB.
ld/testsuite/
* ld-s390/tlsbin.s: Consistently use registers r3, r4, and r5
in IE tests.
* ld-s390/tlsbin_64.s: Likewise.
* ld-s390/tlsbinpic.s: Likewise.
* ld-s390/tlsbinpic_64.s: Likewise.
* ld-s390/tlsbin.dd: Adapt expected test output patterns to
test changes.
* ld-s390/tlsbin_64.dd: Likewise.
Signed-off-by: Jens Remus <jremus@linux.ibm.com>
---
ld/testsuite/ld-s390/tlsbin.dd | 8 ++++----
ld/testsuite/ld-s390/tlsbin.s | 4 ++--
ld/testsuite/ld-s390/tlsbin_64.dd | 12 ++++++------
ld/testsuite/ld-s390/tlsbin_64.s | 4 ++--
ld/testsuite/ld-s390/tlsbinpic.s | 4 ++--
ld/testsuite/ld-s390/tlsbinpic_64.s | 8 ++++----
6 files changed, 20 insertions(+), 20 deletions(-)
diff --git a/ld/testsuite/ld-s390/tlsbin.dd b/ld/testsuite/ld-s390/tlsbin.dd
index 98107435d80a..6121ed470fec 100644
--- a/ld/testsuite/ld-s390/tlsbin.dd
+++ b/ld/testsuite/ld-s390/tlsbin.dd
@@ -104,8 +104,8 @@ Disassembly of section .text:
+[0-9a-f]+: 41 54 30 00 la %r5,0\(%r4,%r3\)
# IE against global var
+[0-9a-f]+: 58 30 d0 34 l %r3,52\(%r13\)
- +[0-9a-f]+: 58 33 c0 00 l %r3,0\(%r3,%r12\)
- +[0-9a-f]+: 58 33 90 00 l %r3,0\(%r3,%r9\)
+ +[0-9a-f]+: 58 43 c0 00 l %r4,0\(%r3,%r12\)
+ +[0-9a-f]+: 58 54 90 00 l %r5,0\(%r4,%r9\)
# IE -> LE against global var defined in exec
+[0-9a-f]+: 58 30 d0 38 l %r3,56\(%r13\)
+[0-9a-f]+: 18 43 lr %r4,%r3
@@ -170,8 +170,8 @@ Disassembly of section .text:
+[0-9a-f]+: b2 4f 00 90 ear %r9,%a0
# IE against global var
+[0-9a-f]+: 58 30 d0 00 l %r3,0\(%r13\)
- +[0-9a-f]+: 58 33 c0 00 l %r3,0\(%r3,%r12\)
- +[0-9a-f]+: 41 33 90 00 la %r3,0\(%r3,%r9\)
+ +[0-9a-f]+: 58 43 c0 00 l %r4,0\(%r3,%r12\)
+ +[0-9a-f]+: 41 54 90 00 la %r5,0\(%r4,%r9\)
# IE -> LE against global var defined in exec
+[0-9a-f]+: 58 30 d0 04 l %r3,4\(%r13\)
+[0-9a-f]+: 18 43 lr %r4,%r3
diff --git a/ld/testsuite/ld-s390/tlsbin.s b/ld/testsuite/ld-s390/tlsbin.s
index fbb715a0fa62..43f9c4569e2b 100644
--- a/ld/testsuite/ld-s390/tlsbin.s
+++ b/ld/testsuite/ld-s390/tlsbin.s
@@ -49,8 +49,8 @@ _start:
/* IE against global var */
l %r3,.LC0-.LT1(%r13)
- l %r3,0(%r3,%r12):tls_load:sG6
- la %r3,0(%r3,%r9)
+ l %r4,0(%r3,%r12):tls_load:sG6
+ la %r5,0(%r4,%r9)
/* IE -> LE against global var defined in exec */
l %r3,.LC1-.LT1(%r13)
diff --git a/ld/testsuite/ld-s390/tlsbin_64.dd b/ld/testsuite/ld-s390/tlsbin_64.dd
index 26f4caac68ce..f5391575a245 100644
--- a/ld/testsuite/ld-s390/tlsbin_64.dd
+++ b/ld/testsuite/ld-s390/tlsbin_64.dd
@@ -115,8 +115,8 @@ Disassembly of section .text:
+[0-9a-f]+: 41 54 30 00 la %r5,0\(%r4,%r3\)
# IE against global var
+[0-9a-f]+: e3 30 d0 58 00 04 lg %r3,88\(%r13\)
- +[0-9a-f]+: e3 33 c0 00 00 04 lg %r3,0\(%r3,%r12\)
- +[0-9a-f]+: 41 33 90 00 la %r3,0\(%r3,%r9\)
+ +[0-9a-f]+: e3 43 c0 00 00 04 lg %r4,0\(%r3,%r12\)
+ +[0-9a-f]+: 41 54 90 00 la %r5,0\(%r4,%r9\)
# IE -> LE against global var defined in exec
+[0-9a-f]+: e3 30 d0 60 00 04 lg %r3,96\(%r13\)
+[0-9a-f]+: eb 43 00 00 00 0d sllg %r4,%r3,0
@@ -131,8 +131,8 @@ Disassembly of section .text:
+[0-9a-f]+: 41 54 90 00 la %r5,0\(%r4,%r9\)
# IE against global var with larl got access
+[0-9a-f]+: c0 30 [0-9a-f ]+ larl %r3,[0-9a-f]+ <.*>
- +[0-9a-f]+: e3 33 c0 00 00 04 lg %r3,0\(%r3,%r12\)
- +[0-9a-f]+: 41 33 90 00 la %r3,0\(%r3,%r9\)
+ +[0-9a-f]+: e3 43 c0 00 00 04 lg %r4,0\(%r3,%r12\)
+ +[0-9a-f]+: 41 54 90 00 la %r5,0\(%r4,%r9\)
# IE against global var defined in exec with larl got access
+[0-9a-f]+: c0 30 [0-9a-f ]+ larl %r3,[0-9a-f]+ <_GLOBAL_OFFSET_TABLE_\+0x30>
+[0-9a-f]+: eb 43 00 00 00 0d sllg %r4,%r3,0
@@ -203,8 +203,8 @@ Disassembly of section .text:
+[0-9a-f]+: b2 4f 00 91 ear %r9,%a1
# IE against global var
+[0-9a-f]+: e3 30 d0 00 00 04 lg %r3,0\(%r13\)
- +[0-9a-f]+: e3 33 c0 00 00 04 lg %r3,0\(%r3,%r12\)
- +[0-9a-f]+: 41 33 90 00 la %r3,0\(%r3,%r9\)
+ +[0-9a-f]+: e3 43 c0 00 00 04 lg %r4,0\(%r3,%r12\)
+ +[0-9a-f]+: 41 54 90 00 la %r5,0\(%r4,%r9\)
# IE -> LE against global var defined in exec
+[0-9a-f]+: e3 30 d0 08 00 04 lg %r3,8\(%r13\)
+[0-9a-f]+: eb 43 00 00 00 0d sllg %r4,%r3,0
diff --git a/ld/testsuite/ld-s390/tlsbin_64.s b/ld/testsuite/ld-s390/tlsbin_64.s
index 686cd15bc574..82fb4d5a00ff 100644
--- a/ld/testsuite/ld-s390/tlsbin_64.s
+++ b/ld/testsuite/ld-s390/tlsbin_64.s
@@ -51,8 +51,8 @@ _start:
/* IE against global var */
lg %r3,.LC0-.LT1(%r13)
- lg %r3,0(%r3,%r12):tls_load:sG6
- la %r3,0(%r3,%r9)
+ lg %r4,0(%r3,%r12):tls_load:sG6
+ la %r5,0(%r4,%r9)
/* IE -> LE against global var defined in exec */
lg %r3,.LC1-.LT1(%r13)
diff --git a/ld/testsuite/ld-s390/tlsbinpic.s b/ld/testsuite/ld-s390/tlsbinpic.s
index ad6492cf140a..4a5bdb71022c 100644
--- a/ld/testsuite/ld-s390/tlsbinpic.s
+++ b/ld/testsuite/ld-s390/tlsbinpic.s
@@ -129,8 +129,8 @@ fn2:
/* IE against global var */
l %r3,.LC13-.LT1(%r13)
- l %r3,0(%r3,%r12):tls_load:sG2
- l %r3,0(%r3,%r9)
+ l %r4,0(%r3,%r12):tls_load:sG2
+ l %r5,0(%r4,%r9)
/* IE -> LE against global var defined in exec */
l %r3,.LC14-.LT1(%r13)
diff --git a/ld/testsuite/ld-s390/tlsbinpic_64.s b/ld/testsuite/ld-s390/tlsbinpic_64.s
index 483684a129d1..b337a61b316f 100644
--- a/ld/testsuite/ld-s390/tlsbinpic_64.s
+++ b/ld/testsuite/ld-s390/tlsbinpic_64.s
@@ -125,8 +125,8 @@ fn2:
/* IE against global var */
lg %r3,.LC13-.LT1(%r13)
- lg %r3,0(%r3,%r12):tls_load:sG2
- la %r3,0(%r3,%r9)
+ lg %r4,0(%r3,%r12):tls_load:sG2
+ la %r5,0(%r4,%r9)
/* IE -> LE against global var defined in exec */
lg %r3,.LC14-.LT1(%r13)
@@ -145,8 +145,8 @@ fn2:
/* IE against global var with larl got access */
larl %r3,sG3@indntpoff
- lg %r3,0(%r3,%r12):tls_load:sG3
- la %r3,0(%r3,%r9)
+ lg %r4,0(%r3,%r12):tls_load:sG3
+ la %r5,0(%r4,%r9)
/* IE against global var defined in exec with larl got access */
larl %r3,sg3@indntpoff
--
2.48.1
More information about the Binutils
mailing list