public inbox for binutils@sourceware.org
 help / color / mirror / Atom feed
* [PATCH v1] LoongArch: Fix gas and ld test cases
@ 2024-03-08  8:31 Lulu Cai
  0 siblings, 0 replies; only message in thread
From: Lulu Cai @ 2024-03-08  8:31 UTC (permalink / raw)
  To: binutils
  Cc: xuchenghua, chenglulu, liuzhensong, mengqinggang, xry111,
	i.swmail, maskray, luweining, wanglei, hejinyang, Lulu Cai

* After adding the old LE relax, all old LE relocations will have
  an R_LARCH_RELAX relocation. Fix the gas test case failure caused
  by the implementation of the old LE relax.

* loongarch64-elf does not support pie and -z norelro options,
  removed in test files.
---
 gas/testsuite/gas/loongarch/relocs_32.d            | 2 ++
 gas/testsuite/gas/loongarch/relocs_64.d            | 4 ++++
 ld/testsuite/ld-loongarch-elf/desc-le-norelax.d    | 2 +-
 ld/testsuite/ld-loongarch-elf/desc-le-relax.d      | 2 +-
 ld/testsuite/ld-loongarch-elf/ie-le-norelax.d      | 2 +-
 ld/testsuite/ld-loongarch-elf/ie-le-relax.d        | 2 +-
 ld/testsuite/ld-loongarch-elf/ld-loongarch-elf.exp | 5 ++++-
 ld/testsuite/ld-loongarch-elf/macro_op_32.d        | 4 ++++
 8 files changed, 18 insertions(+), 5 deletions(-)

diff --git a/gas/testsuite/gas/loongarch/relocs_32.d b/gas/testsuite/gas/loongarch/relocs_32.d
index 3e1bb62e263..96ef2800a51 100644
--- a/gas/testsuite/gas/loongarch/relocs_32.d
+++ b/gas/testsuite/gas/loongarch/relocs_32.d
@@ -30,8 +30,10 @@ Disassembly of section .text:
 			24: R_LARCH_GOT_LO12	.L1
   28:	14000004 	lu12i.w     	\$a0, 0
 			28: R_LARCH_TLS_LE_HI20	TLSL1
+			28: R_LARCH_RELAX	\*ABS\*
   2c:	03800085 	ori         	\$a1, \$a0, 0x0
 			2c: R_LARCH_TLS_LE_LO12	TLSL1
+			2c: R_LARCH_RELAX	\*ABS\*
   30:	1a000004 	pcalau12i   	\$a0, 0
 			30: R_LARCH_TLS_IE_PC_HI20	TLSL1
   34:	02c00005 	li.d        	\$a1, 0
diff --git a/gas/testsuite/gas/loongarch/relocs_64.d b/gas/testsuite/gas/loongarch/relocs_64.d
index 631137eb174..35dde02f7fc 100644
--- a/gas/testsuite/gas/loongarch/relocs_64.d
+++ b/gas/testsuite/gas/loongarch/relocs_64.d
@@ -48,12 +48,16 @@ Disassembly of section .text:
 			48: R_LARCH_GOT64_HI12	.L1
   4c:	14000004 	lu12i.w     	\$a0, 0
 			4c: R_LARCH_TLS_LE_HI20	TLSL1
+			4c: R_LARCH_RELAX	\*ABS\*
   50:	03800085 	ori         	\$a1, \$a0, 0x0
 			50: R_LARCH_TLS_LE_LO12	TLSL1
+			50: R_LARCH_RELAX	\*ABS\*
   54:	16000004 	lu32i.d     	\$a0, 0
 			54: R_LARCH_TLS_LE64_LO20	TLSL1
+			54: R_LARCH_RELAX	\*ABS\*
   58:	03000085 	lu52i.d     	\$a1, \$a0, 0
 			58: R_LARCH_TLS_LE64_HI12	TLSL1
+			58: R_LARCH_RELAX	\*ABS\*
   5c:	1a000004 	pcalau12i   	\$a0, 0
 			5c: R_LARCH_TLS_IE_PC_HI20	TLSL1
   60:	02c00005 	li.d        	\$a1, 0
diff --git a/ld/testsuite/ld-loongarch-elf/desc-le-norelax.d b/ld/testsuite/ld-loongarch-elf/desc-le-norelax.d
index 5a53245ad7f..43749f1b819 100644
--- a/ld/testsuite/ld-loongarch-elf/desc-le-norelax.d
+++ b/ld/testsuite/ld-loongarch-elf/desc-le-norelax.d
@@ -1,5 +1,5 @@
 #as:
-#ld: -z norelro -e0 --no-relax
+#ld: -e0 --no-relax
 #objdump: -dr
 #skip: loongarch32-*-*
 
diff --git a/ld/testsuite/ld-loongarch-elf/desc-le-relax.d b/ld/testsuite/ld-loongarch-elf/desc-le-relax.d
index 03b5535edf8..71a540fda30 100644
--- a/ld/testsuite/ld-loongarch-elf/desc-le-relax.d
+++ b/ld/testsuite/ld-loongarch-elf/desc-le-relax.d
@@ -1,5 +1,5 @@
 #as:
-#ld: -z norelro -e0
+#ld: -e0
 #objdump: -dr -M no-aliases
 #skip: loongarch32-*-*
 
diff --git a/ld/testsuite/ld-loongarch-elf/ie-le-norelax.d b/ld/testsuite/ld-loongarch-elf/ie-le-norelax.d
index 81d78ca3245..0221b495d68 100644
--- a/ld/testsuite/ld-loongarch-elf/ie-le-norelax.d
+++ b/ld/testsuite/ld-loongarch-elf/ie-le-norelax.d
@@ -1,5 +1,5 @@
 #as:
-#ld: -z norelro -e0 --no-relax
+#ld: -e0 --no-relax
 #objdump: -dr
 #skip: loongarch32-*-*
 
diff --git a/ld/testsuite/ld-loongarch-elf/ie-le-relax.d b/ld/testsuite/ld-loongarch-elf/ie-le-relax.d
index 03b5535edf8..71a540fda30 100644
--- a/ld/testsuite/ld-loongarch-elf/ie-le-relax.d
+++ b/ld/testsuite/ld-loongarch-elf/ie-le-relax.d
@@ -1,5 +1,5 @@
 #as:
-#ld: -z norelro -e0
+#ld: -e0
 #objdump: -dr -M no-aliases
 #skip: loongarch32-*-*
 
diff --git a/ld/testsuite/ld-loongarch-elf/ld-loongarch-elf.exp b/ld/testsuite/ld-loongarch-elf/ld-loongarch-elf.exp
index 161cc1a4d10..507b244869c 100644
--- a/ld/testsuite/ld-loongarch-elf/ld-loongarch-elf.exp
+++ b/ld/testsuite/ld-loongarch-elf/ld-loongarch-elf.exp
@@ -133,6 +133,10 @@ if [istarget "loongarch64-*-*"] {
     run_dump_test "desc-relax"
   }
 
+  if [check_pie_support] {
+    run_dump_test "pie_discard"
+  }
+
   run_dump_test "max_imm_b16"
   run_dump_test "max_imm_b21"
   run_dump_test "max_imm_b26"
@@ -145,7 +149,6 @@ if [istarget "loongarch64-*-*"] {
   run_dump_test "underflow_b21"
   run_dump_test "underflow_b26"
   run_dump_test "underflow_pcrel20"
-  run_dump_test "pie_discard"
   run_dump_test "desc-le-norelax"
   run_dump_test "desc-le-relax"
   run_dump_test "ie-le-norelax"
diff --git a/ld/testsuite/ld-loongarch-elf/macro_op_32.d b/ld/testsuite/ld-loongarch-elf/macro_op_32.d
index a7349aa8dc0..8fd69922c14 100644
--- a/ld/testsuite/ld-loongarch-elf/macro_op_32.d
+++ b/ld/testsuite/ld-loongarch-elf/macro_op_32.d
@@ -49,12 +49,16 @@ Disassembly of section .text:
 			3c: R_LARCH_RELAX	\*ABS\*
   40:	14000004 	lu12i.w     	\$a0, 0
 			40: R_LARCH_TLS_LE_HI20	TLS1
+			40: R_LARCH_RELAX	\*ABS\*
   44:	03800084 	ori         	\$a0, \$a0, 0x0
 			44: R_LARCH_TLS_LE_LO12	TLS1
+			44: R_LARCH_RELAX	\*ABS\*
   48:	1a000004 	pcalau12i   	\$a0, 0
 			48: R_LARCH_TLS_IE_PC_HI20	TLS1
+			48: R_LARCH_RELAX	\*ABS\*
   4c:	28800084 	ld.w        	\$a0, \$a0, 0
 			4c: R_LARCH_TLS_IE_PC_LO12	TLS1
+			4c: R_LARCH_RELAX	\*ABS\*
   50:	1a000004 	pcalau12i   	\$a0, 0
 			50: R_LARCH_TLS_LD_PC_HI20	TLS1
 			50: R_LARCH_RELAX	\*ABS\*
-- 
2.36.0


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

only message in thread, other threads:[~2024-03-08  8:31 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-03-08  8:31 [PATCH v1] LoongArch: Fix gas and ld test cases Lulu Cai

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).