[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