[PATCH] RISC-V: Add _dl_start_user.

Andrew Waterman andrew@sifive.com
Tue Nov 10 01:06:09 GMT 2020


LGTM.


On Mon, Nov 9, 2020 at 4:53 PM Jim Wilson <jimw@sifive.com> wrote:
>
> This is required for the debugglibc.sh script to work.  Tested by
> successfully using this patched script, and a riscv64-linux testsuite
> run.
>
> We could perhaps call RTLD_EPILOGUE for ENTRY_POINT before calling
> RTLD_PROLOGUE for _dl_start_user, but I don't think it matters.
>
> OK?
>
> Jim
> ---
>  sysdeps/riscv/dl-machine.h | 4 +++-
>  1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/sysdeps/riscv/dl-machine.h b/sysdeps/riscv/dl-machine.h
> index 03db94aeba..511140864e 100644
> --- a/sysdeps/riscv/dl-machine.h
> +++ b/sysdeps/riscv/dl-machine.h
> @@ -105,6 +105,7 @@ elf_machine_load_address (void)
>         " _RTLD_PROLOGUE (ENTRY_POINT) "\
>         mv a0, sp\n\
>         jal _dl_start\n\
> +       " _RTLD_PROLOGUE (_dl_start_user) "\
>         # Stash user entry point in s0.\n\
>         mv s0, a0\n\
>         # See if we were run as a command with the executable file\n\
> @@ -131,7 +132,8 @@ elf_machine_load_address (void)
>         lla a0, _dl_fini\n\
>         # Jump to the user entry point.\n\
>         jr s0\n\
> -       " _RTLD_EPILOGUE (ENTRY_POINT) "\
> +       " _RTLD_EPILOGUE (ENTRY_POINT) \
> +         _RTLD_EPILOGUE (_dl_start_user) "\
>         .previous" \
>  );
>
> --
> 2.25.0
>


More information about the Libc-alpha mailing list