[PATCH] gold: Force a PC-relative reference to .LC0

H.J. Lu hjl.tools@gmail.com
Sun Aug 25 14:13:18 GMT 2024


On Fri, Aug 23, 2024 at 4:02 PM H.J. Lu <hjl.tools@gmail.com> wrote:
>
> Force a PC-relative reference to .LC0 with:
>
> __asm__ (".dc.a .LC0 - .");
>
> for all targets.
>
> Tested on x86, powerpc64le and aarch64.
>
>         * testsuite/discard_locals_relocatable_test.c: Force a PC-relative
>         reference to .LC0.
>
> Signed-off-by: H.J. Lu <hjl.tools@gmail.com>
> ---
>  gold/testsuite/discard_locals_relocatable_test.c | 8 +-------
>  1 file changed, 1 insertion(+), 7 deletions(-)
>
> diff --git a/gold/testsuite/discard_locals_relocatable_test.c b/gold/testsuite/discard_locals_relocatable_test.c
> index 0b36069a1d9..98691e9680a 100644
> --- a/gold/testsuite/discard_locals_relocatable_test.c
> +++ b/gold/testsuite/discard_locals_relocatable_test.c
> @@ -31,14 +31,8 @@
>     in the output object file. */
>  __asm__ (".Lshould_be_discarded:");
>
> -#ifdef __powerpc__
>  /* Test wants to keep one local.  Satisfy it.  */
> -#ifdef __powerpc64__
> -__asm__ (".reloc 0,R_PPC64_NONE,.LC0");
> -#else
> -__asm__ (".reloc 0,R_PPC_NONE,.LC0");
> -#endif
> -#endif
> +__asm__ (".dc.a .LC0 - .");
>
>  extern void print_func (const char* s);
>
> --
> 2.46.0
>

Any comments?

-- 
H.J.


More information about the Binutils mailing list