public inbox for binutils@sourceware.org
 help / color / mirror / Atom feed
* [PATCH] RISC-V: Always generate R_RISCV_CALL_PLT reloc for call in assembler.
@ 2022-09-14  3:22 Nelson Chu
  2022-09-21  3:48 ` Nelson Chu
  0 siblings, 1 reply; 2+ messages in thread
From: Nelson Chu @ 2022-09-14  3:22 UTC (permalink / raw)
  To: binutils; +Cc: kito.cheng, jrtc27, i, nelson

Since we have the same behaviors of CALL and CALL_PLT relocs in linker for now,
https://github.com/bminor/binutils-gdb/commit/3b1450b38c644f99aa2e211747b428b9f8d15cca

And the psabi already deprecate the CALL reloc,
https://github.com/riscv-non-isa/riscv-elf-psabi-doc/commit/a0dced85018d7a0ec17023c9389cbd70b1dbc1b0

Therefore, we should always generate R_RISCV_CALL_PLT reloc for call, even if
it has @plt postfix.  I believe LLVM (https://reviews.llvm.org/D132530) already
support this, so GNU as should do the same thing.

gas/
	* config/tc-riscv.c (riscv_ip): Always generate CALL_PLT reloc for
	call, even if it has @plt postfix.
	* testsuite/gas/riscv/no-relax-reloc.d: Updated CALL to CALL_PLT.
	* testsuite/gas/riscv/relax-reloc.d: Likewise.
ld/
	* testsuite/ld-riscv-elf/variant_cc-r.d: Updated CALL to CALL_PLT.
---
 gas/config/tc-riscv.c                    |  8 +---
 gas/testsuite/gas/riscv/no-relax-reloc.d |  2 +-
 gas/testsuite/gas/riscv/relax-reloc.d    |  2 +-
 ld/testsuite/ld-riscv-elf/variant_cc-r.d | 56 ++++++++++++------------
 4 files changed, 32 insertions(+), 36 deletions(-)

diff --git a/gas/config/tc-riscv.c b/gas/config/tc-riscv.c
index df2e201fb74..ad51560a670 100644
--- a/gas/config/tc-riscv.c
+++ b/gas/config/tc-riscv.c
@@ -3116,12 +3116,8 @@ riscv_ip (char *str, struct riscv_cl_insn *ip, expressionS *imm_expr,
 	      my_getExpression (imm_expr, asarg);
 	      asarg = expr_end;
 	      if (strcmp (asarg, "@plt") == 0)
-		{
-		  *imm_reloc = BFD_RELOC_RISCV_CALL_PLT;
-		  asarg += 4;
-		}
-	      else
-		*imm_reloc = BFD_RELOC_RISCV_CALL;
+		asarg += 4;
+	      *imm_reloc = BFD_RELOC_RISCV_CALL_PLT;
 	      continue;
 
 	    case 'O':
diff --git a/gas/testsuite/gas/riscv/no-relax-reloc.d b/gas/testsuite/gas/riscv/no-relax-reloc.d
index c2ca1aa6e72..d7269a71037 100644
--- a/gas/testsuite/gas/riscv/no-relax-reloc.d
+++ b/gas/testsuite/gas/riscv/no-relax-reloc.d
@@ -11,4 +11,4 @@ RELOCATION RECORDS FOR .*
 0+c R_RISCV_PCREL_LO12_I.*
 0+10 R_RISCV_GOT_HI20.*
 0+14 R_RISCV_PCREL_LO12_I.*
-0+18 R_RISCV_CALL.*
+0+18 R_RISCV_CALL_PLT.*
diff --git a/gas/testsuite/gas/riscv/relax-reloc.d b/gas/testsuite/gas/riscv/relax-reloc.d
index 623218ec5d1..4a368806066 100644
--- a/gas/testsuite/gas/riscv/relax-reloc.d
+++ b/gas/testsuite/gas/riscv/relax-reloc.d
@@ -16,5 +16,5 @@ RELOCATION RECORDS FOR .*
 0+10 R_RISCV_GOT_HI20.*
 0+14 R_RISCV_PCREL_LO12_I.*
 0+14 R_RISCV_RELAX.*
-0+18 R_RISCV_CALL.*
+0+18 R_RISCV_CALL_PLT.*
 0+18 R_RISCV_RELAX.*
diff --git a/ld/testsuite/ld-riscv-elf/variant_cc-r.d b/ld/testsuite/ld-riscv-elf/variant_cc-r.d
index 5235b8e90d7..7df449bfd2a 100644
--- a/ld/testsuite/ld-riscv-elf/variant_cc-r.d
+++ b/ld/testsuite/ld-riscv-elf/variant_cc-r.d
@@ -6,34 +6,34 @@
 
 Relocation section '.rela.text' at .*
 #...
-[0-9a-f]+[ 	]+[0-9a-f]+[ 	]+R_RISCV_CALL[ 	]+0+0000[ 	]+cc_global_default_def \+ 0
-[0-9a-f]+[ 	]+[0-9a-f]+[ 	]+R_RISCV_CALL[ 	]+0+0000[ 	]+cc_global_default_undef \+ 0
-[0-9a-f]+[ 	]+[0-9a-f]+[ 	]+R_RISCV_CALL[ 	]+0+0000[ 	]+cc_global_hidden_def \+ 0
-[0-9a-f]+[ 	]+[0-9a-f]+[ 	]+R_RISCV_CALL[ 	]+cc_global_default_ifunc\(\)[ 	]+cc_global_default_ifunc \+ 0
-[0-9a-f]+[ 	]+[0-9a-f]+[ 	]+R_RISCV_CALL[ 	]+cc_global_hidden_ifunc\(\)[ 	]+cc_global_hidden_ifunc \+ 0
-[0-9a-f]+[ 	]+[0-9a-f]+[ 	]+R_RISCV_CALL[ 	]+0+0000[ 	]+cc_local \+ 0
-[0-9a-f]+[ 	]+[0-9a-f]+[ 	]+R_RISCV_CALL[ 	]+cc_local_ifunc\(\)[ 	]+cc_local_ifunc \+ 0
-[0-9a-f]+[ 	]+[0-9a-f]+[ 	]+R_RISCV_CALL[ 	]+0+0000[ 	]+nocc_global_default_def \+ 0
-[0-9a-f]+[ 	]+[0-9a-f]+[ 	]+R_RISCV_CALL[ 	]+0+0000[ 	]+nocc_global_default_undef \+ 0
-[0-9a-f]+[ 	]+[0-9a-f]+[ 	]+R_RISCV_CALL[ 	]+0+0000[ 	]+nocc_global_hidden_def \+ 0
-[0-9a-f]+[ 	]+[0-9a-f]+[ 	]+R_RISCV_CALL[ 	]+nocc_global_default_ifunc\(\)[ 	]+nocc_global_default_ifunc \+ 0
-[0-9a-f]+[ 	]+[0-9a-f]+[ 	]+R_RISCV_CALL[ 	]+nocc_global_hidden_ifunc\(\)[ 	]+nocc_global_hidden_ifunc \+ 0
-[0-9a-f]+[ 	]+[0-9a-f]+[ 	]+R_RISCV_CALL[ 	]+0+0000[ 	]+nocc_local \+ 0
-[0-9a-f]+[ 	]+[0-9a-f]+[ 	]+R_RISCV_CALL[ 	]+nocc_local_ifunc\(\)[ 	]+nocc_local_ifunc \+ 0
-[0-9a-f]+[ 	]+[0-9a-f]+[ 	]+R_RISCV_CALL[ 	]+0+0000[ 	]+cc_global_default_def \+ 0
-[0-9a-f]+[ 	]+[0-9a-f]+[ 	]+R_RISCV_CALL[ 	]+0+0000[ 	]+cc_global_default_undef \+ 0
-[0-9a-f]+[ 	]+[0-9a-f]+[ 	]+R_RISCV_CALL[ 	]+0+0000[ 	]+cc_global_hidden_def \+ 0
-[0-9a-f]+[ 	]+[0-9a-f]+[ 	]+R_RISCV_CALL[ 	]+cc_global_default_ifunc\(\)[ 	]+cc_global_default_ifunc \+ 0
-[0-9a-f]+[ 	]+[0-9a-f]+[ 	]+R_RISCV_CALL[ 	]+cc_global_hidden_ifunc\(\)[ 	]+cc_global_hidden_ifunc \+ 0
-[0-9a-f]+[ 	]+[0-9a-f]+[ 	]+R_RISCV_CALL[ 	]+0+0070[ 	]+cc_local2 \+ 0
-[0-9a-f]+[ 	]+[0-9a-f]+[ 	]+R_RISCV_CALL[ 	]+cc_local2_ifunc\(\)[ 	]+cc_local2_ifunc \+ 0
-[0-9a-f]+[ 	]+[0-9a-f]+[ 	]+R_RISCV_CALL[ 	]+0+0000[ 	]+nocc_global_default_def \+ 0
-[0-9a-f]+[ 	]+[0-9a-f]+[ 	]+R_RISCV_CALL[ 	]+0+0000[ 	]+nocc_global_default_undef \+ 0
-[0-9a-f]+[ 	]+[0-9a-f]+[ 	]+R_RISCV_CALL[ 	]+0+0000[ 	]+nocc_global_hidden_def \+ 0
-[0-9a-f]+[ 	]+[0-9a-f]+[ 	]+R_RISCV_CALL[ 	]+nocc_global_default_ifunc\(\)[ 	]+nocc_global_default_ifunc \+ 0
-[0-9a-f]+[ 	]+[0-9a-f]+[ 	]+R_RISCV_CALL[ 	]+nocc_global_hidden_ifunc\(\)[ 	]+nocc_global_hidden_ifunc \+ 0
-[0-9a-f]+[ 	]+[0-9a-f]+[ 	]+R_RISCV_CALL[ 	]+0+0070[ 	]+nocc_local2 \+ 0
-[0-9a-f]+[ 	]+[0-9a-f]+[ 	]+R_RISCV_CALL[ 	]+nocc_local2_ifunc\(\)[ 	]+nocc_local2_ifunc \+ 0
+[0-9a-f]+[ 	]+[0-9a-f]+[ 	]+R_RISCV_CALL_PLT[ 	]+0+0000[ 	]+cc_global_default_def \+ 0
+[0-9a-f]+[ 	]+[0-9a-f]+[ 	]+R_RISCV_CALL_PLT[ 	]+0+0000[ 	]+cc_global_default_undef \+ 0
+[0-9a-f]+[ 	]+[0-9a-f]+[ 	]+R_RISCV_CALL_PLT[ 	]+0+0000[ 	]+cc_global_hidden_def \+ 0
+[0-9a-f]+[ 	]+[0-9a-f]+[ 	]+R_RISCV_CALL_PLT[ 	]+cc_global_default_ifunc\(\)[ 	]+cc_global_default_ifunc \+ 0
+[0-9a-f]+[ 	]+[0-9a-f]+[ 	]+R_RISCV_CALL_PLT[ 	]+cc_global_hidden_ifunc\(\)[ 	]+cc_global_hidden_ifunc \+ 0
+[0-9a-f]+[ 	]+[0-9a-f]+[ 	]+R_RISCV_CALL_PLT[ 	]+0+0000[ 	]+cc_local \+ 0
+[0-9a-f]+[ 	]+[0-9a-f]+[ 	]+R_RISCV_CALL_PLT[ 	]+cc_local_ifunc\(\)[ 	]+cc_local_ifunc \+ 0
+[0-9a-f]+[ 	]+[0-9a-f]+[ 	]+R_RISCV_CALL_PLT[ 	]+0+0000[ 	]+nocc_global_default_def \+ 0
+[0-9a-f]+[ 	]+[0-9a-f]+[ 	]+R_RISCV_CALL_PLT[ 	]+0+0000[ 	]+nocc_global_default_undef \+ 0
+[0-9a-f]+[ 	]+[0-9a-f]+[ 	]+R_RISCV_CALL_PLT[ 	]+0+0000[ 	]+nocc_global_hidden_def \+ 0
+[0-9a-f]+[ 	]+[0-9a-f]+[ 	]+R_RISCV_CALL_PLT[ 	]+nocc_global_default_ifunc\(\)[ 	]+nocc_global_default_ifunc \+ 0
+[0-9a-f]+[ 	]+[0-9a-f]+[ 	]+R_RISCV_CALL_PLT[ 	]+nocc_global_hidden_ifunc\(\)[ 	]+nocc_global_hidden_ifunc \+ 0
+[0-9a-f]+[ 	]+[0-9a-f]+[ 	]+R_RISCV_CALL_PLT[ 	]+0+0000[ 	]+nocc_local \+ 0
+[0-9a-f]+[ 	]+[0-9a-f]+[ 	]+R_RISCV_CALL_PLT[ 	]+nocc_local_ifunc\(\)[ 	]+nocc_local_ifunc \+ 0
+[0-9a-f]+[ 	]+[0-9a-f]+[ 	]+R_RISCV_CALL_PLT[ 	]+0+0000[ 	]+cc_global_default_def \+ 0
+[0-9a-f]+[ 	]+[0-9a-f]+[ 	]+R_RISCV_CALL_PLT[ 	]+0+0000[ 	]+cc_global_default_undef \+ 0
+[0-9a-f]+[ 	]+[0-9a-f]+[ 	]+R_RISCV_CALL_PLT[ 	]+0+0000[ 	]+cc_global_hidden_def \+ 0
+[0-9a-f]+[ 	]+[0-9a-f]+[ 	]+R_RISCV_CALL_PLT[ 	]+cc_global_default_ifunc\(\)[ 	]+cc_global_default_ifunc \+ 0
+[0-9a-f]+[ 	]+[0-9a-f]+[ 	]+R_RISCV_CALL_PLT[ 	]+cc_global_hidden_ifunc\(\)[ 	]+cc_global_hidden_ifunc \+ 0
+[0-9a-f]+[ 	]+[0-9a-f]+[ 	]+R_RISCV_CALL_PLT[ 	]+0+0070[ 	]+cc_local2 \+ 0
+[0-9a-f]+[ 	]+[0-9a-f]+[ 	]+R_RISCV_CALL_PLT[ 	]+cc_local2_ifunc\(\)[ 	]+cc_local2_ifunc \+ 0
+[0-9a-f]+[ 	]+[0-9a-f]+[ 	]+R_RISCV_CALL_PLT[ 	]+0+0000[ 	]+nocc_global_default_def \+ 0
+[0-9a-f]+[ 	]+[0-9a-f]+[ 	]+R_RISCV_CALL_PLT[ 	]+0+0000[ 	]+nocc_global_default_undef \+ 0
+[0-9a-f]+[ 	]+[0-9a-f]+[ 	]+R_RISCV_CALL_PLT[ 	]+0+0000[ 	]+nocc_global_hidden_def \+ 0
+[0-9a-f]+[ 	]+[0-9a-f]+[ 	]+R_RISCV_CALL_PLT[ 	]+nocc_global_default_ifunc\(\)[ 	]+nocc_global_default_ifunc \+ 0
+[0-9a-f]+[ 	]+[0-9a-f]+[ 	]+R_RISCV_CALL_PLT[ 	]+nocc_global_hidden_ifunc\(\)[ 	]+nocc_global_hidden_ifunc \+ 0
+[0-9a-f]+[ 	]+[0-9a-f]+[ 	]+R_RISCV_CALL_PLT[ 	]+0+0070[ 	]+nocc_local2 \+ 0
+[0-9a-f]+[ 	]+[0-9a-f]+[ 	]+R_RISCV_CALL_PLT[ 	]+nocc_local2_ifunc\(\)[ 	]+nocc_local2_ifunc \+ 0
 #...
 Symbol table '.symtab' contains .*
 .*
-- 
2.32.1 (Apple Git-133)


^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [PATCH] RISC-V: Always generate R_RISCV_CALL_PLT reloc for call in assembler.
  2022-09-14  3:22 [PATCH] RISC-V: Always generate R_RISCV_CALL_PLT reloc for call in assembler Nelson Chu
@ 2022-09-21  3:48 ` Nelson Chu
  0 siblings, 0 replies; 2+ messages in thread
From: Nelson Chu @ 2022-09-21  3:48 UTC (permalink / raw)
  To: binutils; +Cc: kito.cheng, jrtc27, i

Committed since it seems like there are no objections for now.

Thanks
Nelson

On Wed, Sep 14, 2022 at 11:22 AM Nelson Chu <nelson@rivosinc.com> wrote:
>
> Since we have the same behaviors of CALL and CALL_PLT relocs in linker for now,
> https://github.com/bminor/binutils-gdb/commit/3b1450b38c644f99aa2e211747b428b9f8d15cca
>
> And the psabi already deprecate the CALL reloc,
> https://github.com/riscv-non-isa/riscv-elf-psabi-doc/commit/a0dced85018d7a0ec17023c9389cbd70b1dbc1b0
>
> Therefore, we should always generate R_RISCV_CALL_PLT reloc for call, even if
> it has @plt postfix.  I believe LLVM (https://reviews.llvm.org/D132530) already
> support this, so GNU as should do the same thing.
>
> gas/
>         * config/tc-riscv.c (riscv_ip): Always generate CALL_PLT reloc for
>         call, even if it has @plt postfix.
>         * testsuite/gas/riscv/no-relax-reloc.d: Updated CALL to CALL_PLT.
>         * testsuite/gas/riscv/relax-reloc.d: Likewise.
> ld/
>         * testsuite/ld-riscv-elf/variant_cc-r.d: Updated CALL to CALL_PLT.
> ---
>  gas/config/tc-riscv.c                    |  8 +---
>  gas/testsuite/gas/riscv/no-relax-reloc.d |  2 +-
>  gas/testsuite/gas/riscv/relax-reloc.d    |  2 +-
>  ld/testsuite/ld-riscv-elf/variant_cc-r.d | 56 ++++++++++++------------
>  4 files changed, 32 insertions(+), 36 deletions(-)
>
> diff --git a/gas/config/tc-riscv.c b/gas/config/tc-riscv.c
> index df2e201fb74..ad51560a670 100644
> --- a/gas/config/tc-riscv.c
> +++ b/gas/config/tc-riscv.c
> @@ -3116,12 +3116,8 @@ riscv_ip (char *str, struct riscv_cl_insn *ip, expressionS *imm_expr,
>               my_getExpression (imm_expr, asarg);
>               asarg = expr_end;
>               if (strcmp (asarg, "@plt") == 0)
> -               {
> -                 *imm_reloc = BFD_RELOC_RISCV_CALL_PLT;
> -                 asarg += 4;
> -               }
> -             else
> -               *imm_reloc = BFD_RELOC_RISCV_CALL;
> +               asarg += 4;
> +             *imm_reloc = BFD_RELOC_RISCV_CALL_PLT;
>               continue;
>
>             case 'O':
> diff --git a/gas/testsuite/gas/riscv/no-relax-reloc.d b/gas/testsuite/gas/riscv/no-relax-reloc.d
> index c2ca1aa6e72..d7269a71037 100644
> --- a/gas/testsuite/gas/riscv/no-relax-reloc.d
> +++ b/gas/testsuite/gas/riscv/no-relax-reloc.d
> @@ -11,4 +11,4 @@ RELOCATION RECORDS FOR .*
>  0+c R_RISCV_PCREL_LO12_I.*
>  0+10 R_RISCV_GOT_HI20.*
>  0+14 R_RISCV_PCREL_LO12_I.*
> -0+18 R_RISCV_CALL.*
> +0+18 R_RISCV_CALL_PLT.*
> diff --git a/gas/testsuite/gas/riscv/relax-reloc.d b/gas/testsuite/gas/riscv/relax-reloc.d
> index 623218ec5d1..4a368806066 100644
> --- a/gas/testsuite/gas/riscv/relax-reloc.d
> +++ b/gas/testsuite/gas/riscv/relax-reloc.d
> @@ -16,5 +16,5 @@ RELOCATION RECORDS FOR .*
>  0+10 R_RISCV_GOT_HI20.*
>  0+14 R_RISCV_PCREL_LO12_I.*
>  0+14 R_RISCV_RELAX.*
> -0+18 R_RISCV_CALL.*
> +0+18 R_RISCV_CALL_PLT.*
>  0+18 R_RISCV_RELAX.*
> diff --git a/ld/testsuite/ld-riscv-elf/variant_cc-r.d b/ld/testsuite/ld-riscv-elf/variant_cc-r.d
> index 5235b8e90d7..7df449bfd2a 100644
> --- a/ld/testsuite/ld-riscv-elf/variant_cc-r.d
> +++ b/ld/testsuite/ld-riscv-elf/variant_cc-r.d
> @@ -6,34 +6,34 @@
>
>  Relocation section '.rela.text' at .*
>  #...
> -[0-9a-f]+[     ]+[0-9a-f]+[    ]+R_RISCV_CALL[         ]+0+0000[       ]+cc_global_default_def \+ 0
> -[0-9a-f]+[     ]+[0-9a-f]+[    ]+R_RISCV_CALL[         ]+0+0000[       ]+cc_global_default_undef \+ 0
> -[0-9a-f]+[     ]+[0-9a-f]+[    ]+R_RISCV_CALL[         ]+0+0000[       ]+cc_global_hidden_def \+ 0
> -[0-9a-f]+[     ]+[0-9a-f]+[    ]+R_RISCV_CALL[         ]+cc_global_default_ifunc\(\)[  ]+cc_global_default_ifunc \+ 0
> -[0-9a-f]+[     ]+[0-9a-f]+[    ]+R_RISCV_CALL[         ]+cc_global_hidden_ifunc\(\)[   ]+cc_global_hidden_ifunc \+ 0
> -[0-9a-f]+[     ]+[0-9a-f]+[    ]+R_RISCV_CALL[         ]+0+0000[       ]+cc_local \+ 0
> -[0-9a-f]+[     ]+[0-9a-f]+[    ]+R_RISCV_CALL[         ]+cc_local_ifunc\(\)[   ]+cc_local_ifunc \+ 0
> -[0-9a-f]+[     ]+[0-9a-f]+[    ]+R_RISCV_CALL[         ]+0+0000[       ]+nocc_global_default_def \+ 0
> -[0-9a-f]+[     ]+[0-9a-f]+[    ]+R_RISCV_CALL[         ]+0+0000[       ]+nocc_global_default_undef \+ 0
> -[0-9a-f]+[     ]+[0-9a-f]+[    ]+R_RISCV_CALL[         ]+0+0000[       ]+nocc_global_hidden_def \+ 0
> -[0-9a-f]+[     ]+[0-9a-f]+[    ]+R_RISCV_CALL[         ]+nocc_global_default_ifunc\(\)[        ]+nocc_global_default_ifunc \+ 0
> -[0-9a-f]+[     ]+[0-9a-f]+[    ]+R_RISCV_CALL[         ]+nocc_global_hidden_ifunc\(\)[         ]+nocc_global_hidden_ifunc \+ 0
> -[0-9a-f]+[     ]+[0-9a-f]+[    ]+R_RISCV_CALL[         ]+0+0000[       ]+nocc_local \+ 0
> -[0-9a-f]+[     ]+[0-9a-f]+[    ]+R_RISCV_CALL[         ]+nocc_local_ifunc\(\)[         ]+nocc_local_ifunc \+ 0
> -[0-9a-f]+[     ]+[0-9a-f]+[    ]+R_RISCV_CALL[         ]+0+0000[       ]+cc_global_default_def \+ 0
> -[0-9a-f]+[     ]+[0-9a-f]+[    ]+R_RISCV_CALL[         ]+0+0000[       ]+cc_global_default_undef \+ 0
> -[0-9a-f]+[     ]+[0-9a-f]+[    ]+R_RISCV_CALL[         ]+0+0000[       ]+cc_global_hidden_def \+ 0
> -[0-9a-f]+[     ]+[0-9a-f]+[    ]+R_RISCV_CALL[         ]+cc_global_default_ifunc\(\)[  ]+cc_global_default_ifunc \+ 0
> -[0-9a-f]+[     ]+[0-9a-f]+[    ]+R_RISCV_CALL[         ]+cc_global_hidden_ifunc\(\)[   ]+cc_global_hidden_ifunc \+ 0
> -[0-9a-f]+[     ]+[0-9a-f]+[    ]+R_RISCV_CALL[         ]+0+0070[       ]+cc_local2 \+ 0
> -[0-9a-f]+[     ]+[0-9a-f]+[    ]+R_RISCV_CALL[         ]+cc_local2_ifunc\(\)[  ]+cc_local2_ifunc \+ 0
> -[0-9a-f]+[     ]+[0-9a-f]+[    ]+R_RISCV_CALL[         ]+0+0000[       ]+nocc_global_default_def \+ 0
> -[0-9a-f]+[     ]+[0-9a-f]+[    ]+R_RISCV_CALL[         ]+0+0000[       ]+nocc_global_default_undef \+ 0
> -[0-9a-f]+[     ]+[0-9a-f]+[    ]+R_RISCV_CALL[         ]+0+0000[       ]+nocc_global_hidden_def \+ 0
> -[0-9a-f]+[     ]+[0-9a-f]+[    ]+R_RISCV_CALL[         ]+nocc_global_default_ifunc\(\)[        ]+nocc_global_default_ifunc \+ 0
> -[0-9a-f]+[     ]+[0-9a-f]+[    ]+R_RISCV_CALL[         ]+nocc_global_hidden_ifunc\(\)[         ]+nocc_global_hidden_ifunc \+ 0
> -[0-9a-f]+[     ]+[0-9a-f]+[    ]+R_RISCV_CALL[         ]+0+0070[       ]+nocc_local2 \+ 0
> -[0-9a-f]+[     ]+[0-9a-f]+[    ]+R_RISCV_CALL[         ]+nocc_local2_ifunc\(\)[        ]+nocc_local2_ifunc \+ 0
> +[0-9a-f]+[     ]+[0-9a-f]+[    ]+R_RISCV_CALL_PLT[     ]+0+0000[       ]+cc_global_default_def \+ 0
> +[0-9a-f]+[     ]+[0-9a-f]+[    ]+R_RISCV_CALL_PLT[     ]+0+0000[       ]+cc_global_default_undef \+ 0
> +[0-9a-f]+[     ]+[0-9a-f]+[    ]+R_RISCV_CALL_PLT[     ]+0+0000[       ]+cc_global_hidden_def \+ 0
> +[0-9a-f]+[     ]+[0-9a-f]+[    ]+R_RISCV_CALL_PLT[     ]+cc_global_default_ifunc\(\)[  ]+cc_global_default_ifunc \+ 0
> +[0-9a-f]+[     ]+[0-9a-f]+[    ]+R_RISCV_CALL_PLT[     ]+cc_global_hidden_ifunc\(\)[   ]+cc_global_hidden_ifunc \+ 0
> +[0-9a-f]+[     ]+[0-9a-f]+[    ]+R_RISCV_CALL_PLT[     ]+0+0000[       ]+cc_local \+ 0
> +[0-9a-f]+[     ]+[0-9a-f]+[    ]+R_RISCV_CALL_PLT[     ]+cc_local_ifunc\(\)[   ]+cc_local_ifunc \+ 0
> +[0-9a-f]+[     ]+[0-9a-f]+[    ]+R_RISCV_CALL_PLT[     ]+0+0000[       ]+nocc_global_default_def \+ 0
> +[0-9a-f]+[     ]+[0-9a-f]+[    ]+R_RISCV_CALL_PLT[     ]+0+0000[       ]+nocc_global_default_undef \+ 0
> +[0-9a-f]+[     ]+[0-9a-f]+[    ]+R_RISCV_CALL_PLT[     ]+0+0000[       ]+nocc_global_hidden_def \+ 0
> +[0-9a-f]+[     ]+[0-9a-f]+[    ]+R_RISCV_CALL_PLT[     ]+nocc_global_default_ifunc\(\)[        ]+nocc_global_default_ifunc \+ 0
> +[0-9a-f]+[     ]+[0-9a-f]+[    ]+R_RISCV_CALL_PLT[     ]+nocc_global_hidden_ifunc\(\)[         ]+nocc_global_hidden_ifunc \+ 0
> +[0-9a-f]+[     ]+[0-9a-f]+[    ]+R_RISCV_CALL_PLT[     ]+0+0000[       ]+nocc_local \+ 0
> +[0-9a-f]+[     ]+[0-9a-f]+[    ]+R_RISCV_CALL_PLT[     ]+nocc_local_ifunc\(\)[         ]+nocc_local_ifunc \+ 0
> +[0-9a-f]+[     ]+[0-9a-f]+[    ]+R_RISCV_CALL_PLT[     ]+0+0000[       ]+cc_global_default_def \+ 0
> +[0-9a-f]+[     ]+[0-9a-f]+[    ]+R_RISCV_CALL_PLT[     ]+0+0000[       ]+cc_global_default_undef \+ 0
> +[0-9a-f]+[     ]+[0-9a-f]+[    ]+R_RISCV_CALL_PLT[     ]+0+0000[       ]+cc_global_hidden_def \+ 0
> +[0-9a-f]+[     ]+[0-9a-f]+[    ]+R_RISCV_CALL_PLT[     ]+cc_global_default_ifunc\(\)[  ]+cc_global_default_ifunc \+ 0
> +[0-9a-f]+[     ]+[0-9a-f]+[    ]+R_RISCV_CALL_PLT[     ]+cc_global_hidden_ifunc\(\)[   ]+cc_global_hidden_ifunc \+ 0
> +[0-9a-f]+[     ]+[0-9a-f]+[    ]+R_RISCV_CALL_PLT[     ]+0+0070[       ]+cc_local2 \+ 0
> +[0-9a-f]+[     ]+[0-9a-f]+[    ]+R_RISCV_CALL_PLT[     ]+cc_local2_ifunc\(\)[  ]+cc_local2_ifunc \+ 0
> +[0-9a-f]+[     ]+[0-9a-f]+[    ]+R_RISCV_CALL_PLT[     ]+0+0000[       ]+nocc_global_default_def \+ 0
> +[0-9a-f]+[     ]+[0-9a-f]+[    ]+R_RISCV_CALL_PLT[     ]+0+0000[       ]+nocc_global_default_undef \+ 0
> +[0-9a-f]+[     ]+[0-9a-f]+[    ]+R_RISCV_CALL_PLT[     ]+0+0000[       ]+nocc_global_hidden_def \+ 0
> +[0-9a-f]+[     ]+[0-9a-f]+[    ]+R_RISCV_CALL_PLT[     ]+nocc_global_default_ifunc\(\)[        ]+nocc_global_default_ifunc \+ 0
> +[0-9a-f]+[     ]+[0-9a-f]+[    ]+R_RISCV_CALL_PLT[     ]+nocc_global_hidden_ifunc\(\)[         ]+nocc_global_hidden_ifunc \+ 0
> +[0-9a-f]+[     ]+[0-9a-f]+[    ]+R_RISCV_CALL_PLT[     ]+0+0070[       ]+nocc_local2 \+ 0
> +[0-9a-f]+[     ]+[0-9a-f]+[    ]+R_RISCV_CALL_PLT[     ]+nocc_local2_ifunc\(\)[        ]+nocc_local2_ifunc \+ 0
>  #...
>  Symbol table '.symtab' contains .*
>  .*
> --
> 2.32.1 (Apple Git-133)
>

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2022-09-21  3:48 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-09-14  3:22 [PATCH] RISC-V: Always generate R_RISCV_CALL_PLT reloc for call in assembler Nelson Chu
2022-09-21  3:48 ` Nelson Chu

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