summaryrefslogtreecommitdiff
path: root/elf
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>1997-05-24 22:50:15 +0000
committerUlrich Drepper <drepper@redhat.com>1997-05-24 22:50:15 +0000
commitf844eec463e1380106bc4c6376b92882608d6e87 (patch)
tree34e370adf6172fa45c17727ecc411b1f6f3ffa13 /elf
parent0f1f93279becbbe8288dfde699db0148de61fd31 (diff)
(ELF_DYNAMIC_RELOCATE): Let elf_machine_runtime_setup() decide if we
can actually be lazy.
Diffstat (limited to 'elf')
-rw-r--r--elf/dynamic-link.h9
1 files changed, 6 insertions, 3 deletions
diff --git a/elf/dynamic-link.h b/elf/dynamic-link.h
index 1d134ddf2f..da63633361 100644
--- a/elf/dynamic-link.h
+++ b/elf/dynamic-link.h
@@ -97,8 +97,11 @@ elf_get_dynamic_info (ElfW(Dyn) *dyn,
/* This can't just be an inline function because GCC is too dumb
to inline functions containing inlines themselves. */
-#define ELF_DYNAMIC_RELOCATE(map, lazy) \
- do { ELF_DYNAMIC_DO_REL ((map), (lazy)); \
- ELF_DYNAMIC_DO_RELA ((map), (lazy)); } while (0)
+#define ELF_DYNAMIC_RELOCATE(map, lazy) \
+ do { \
+ int edr_lazy = elf_machine_runtime_setup((map), (lazy)); \
+ ELF_DYNAMIC_DO_REL ((map), edr_lazy); \
+ ELF_DYNAMIC_DO_RELA ((map), edr_lazy); \
+ } while (0)
#endif