[v5,3/6] LoongArch: opcodes: Add support for linker relaxation.

Message ID 20230526073833.3933735-4-mengqinggang@loongson.cn
State Unresolved
Headers
Series LoongArch linker relaxation support. |

Checks

Context Check Description
snail/binutils-gdb-check warning Git am fail log

Commit Message

mengqinggang May 26, 2023, 7:38 a.m. UTC
  Set gas default to enable relax.

opcodes/ChangeLog:

	* loongarch-opc.c (struct loongarch_ASEs_option): New member relax
	with the default value 1.
---
 bfd/elfnn-loongarch.c   | 6 +++---
 opcodes/loongarch-opc.c | 5 ++++-
 2 files changed, 7 insertions(+), 4 deletions(-)
  

Patch

diff --git a/bfd/elfnn-loongarch.c b/bfd/elfnn-loongarch.c
index d501991e4cf..b16066c5d91 100644
--- a/bfd/elfnn-loongarch.c
+++ b/bfd/elfnn-loongarch.c
@@ -3698,7 +3698,7 @@  loongarch_relax_delete_bytes (bfd *abfd,
 
 /* Relax pcalau12i,addi.d => pcaddi.  */
 static bool
-loongarch_relax_pcala_addi(bfd *abfd, asection *sec,
+loongarch_relax_pcala_addi (bfd *abfd, asection *sec,
 		       Elf_Internal_Rela *rel_hi, bfd_vma symval)
 {
   bfd_byte *contents = elf_section_data (sec)->this_hdr.contents;
@@ -3967,7 +3967,7 @@  loongarch_elf_relax_section (bfd *abfd, asection *sec,
 	    {
 	      if (i + 4 > sec->reloc_count)
 		break;
-	      loongarch_relax_pcala_addi(abfd, sec, rel, symval);
+	      loongarch_relax_pcala_addi (abfd, sec, rel, symval);
 	    }
 	  break;
 	case R_LARCH_GOT_PC_HI20:
@@ -3977,7 +3977,7 @@  loongarch_elf_relax_section (bfd *abfd, asection *sec,
 		break;
 	      if (loongarch_relax_pcala_ld (abfd, sec, rel))
 		{
-		  loongarch_relax_pcala_addi(abfd, sec, rel, symval);
+		  loongarch_relax_pcala_addi (abfd, sec, rel, symval);
 		}
 	    }
 	  break;
diff --git a/opcodes/loongarch-opc.c b/opcodes/loongarch-opc.c
index 39d724a3398..573b691c1fd 100644
--- a/opcodes/loongarch-opc.c
+++ b/opcodes/loongarch-opc.c
@@ -22,7 +22,10 @@ 
 #include "opcode/loongarch.h"
 #include "libiberty.h"
 
-struct loongarch_ASEs_option LARCH_opts;
+struct loongarch_ASEs_option LARCH_opts =
+{
+  .relax = 1
+};
 
 size_t
 loongarch_insn_length (insn_t insn ATTRIBUTE_UNUSED)