From 6c05ed96f646e20a8ef104d36d260fab30486768 Mon Sep 17 00:00:00 2001 From: Bernd Schmidt Date: Tue, 8 Jan 2008 23:24:30 +0000 Subject: Some more Blackfin/FDPIC ldso merging work. Include dl-inlines.h when it exists, and move some definitions to their proper place. --- ldso/ldso/bfin/dl-sysdep.h | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'ldso/ldso/bfin/dl-sysdep.h') diff --git a/ldso/ldso/bfin/dl-sysdep.h b/ldso/ldso/bfin/dl-sysdep.h index 0376c6151..9d89a9e3e 100644 --- a/ldso/ldso/bfin/dl-sysdep.h +++ b/ldso/ldso/bfin/dl-sysdep.h @@ -34,6 +34,8 @@ USA. */ #define DL_NO_COPY_RELOCS +#define HAVE_DL_INLINES_H + /* * Initialization sequence for a GOT. Copy the resolver function * descriptor and the pointer to the elf_resolve/link_map data @@ -136,6 +138,17 @@ struct funcdesc_ht; #define DL_ADDR_IN_LOADADDR(ADDR, TPNT, TFROM) \ (! (TFROM) && __dl_addr_in_loadaddr ((void*)(ADDR), (TPNT)->loadaddr)) +/* + * Compute the GOT address. On several platforms, we use assembly + * here. on FR-V FDPIC, there's no way to compute the GOT address, + * since the offset between text and data is not fixed, so we arrange + * for the assembly _dl_boot to pass this value as an argument to + * _dl_boot. */ +#define DL_BOOT_COMPUTE_GOT(got) ((got) = dl_boot_got_pointer) + +#define DL_BOOT_COMPUTE_DYN(dpnt, got, load_addr) \ + ((dpnt) = dl_boot_ldso_dyn_pointer) + /* We only support loading FDPIC independently-relocatable shared libraries. It probably wouldn't be too hard to support loading shared libraries that require relocation by the same amount, but we -- cgit v1.2.3