summaryrefslogtreecommitdiff
path: root/ldso/include
diff options
context:
space:
mode:
Diffstat (limited to 'ldso/include')
-rw-r--r--ldso/include/dl-defs.h4
-rw-r--r--ldso/include/dl-hash.h1
2 files changed, 3 insertions, 2 deletions
diff --git a/ldso/include/dl-defs.h b/ldso/include/dl-defs.h
index 21b9c28f0..791d068bb 100644
--- a/ldso/include/dl-defs.h
+++ b/ldso/include/dl-defs.h
@@ -168,8 +168,8 @@ typedef struct {
*/
#ifndef DL_ADDR_IN_LOADADDR
# define DL_ADDR_IN_LOADADDR(ADDR, TPNT, TFROM) \
- ((void*)(TPNT)->loadaddr < (void*)(ADDR) \
- && (!(TFROM) || (TFROM)->loadaddr < (TPNT)->loadaddr))
+ ((void*)(TPNT)->mapaddr < (void*)(ADDR) \
+ && (!(TFROM) || (TFROM)->mapaddr < (TPNT)->mapaddr))
#endif
/* This is called from dladdr() to give targets that use function descriptors
diff --git a/ldso/include/dl-hash.h b/ldso/include/dl-hash.h
index 5bb1f47e1..193ae2d59 100644
--- a/ldso/include/dl-hash.h
+++ b/ldso/include/dl-hash.h
@@ -34,6 +34,7 @@ struct elf_resolve {
struct elf_resolve * next;
struct elf_resolve * prev;
/* Nothing after this address is used by gdb. */
+ DL_LOADADDR_TYPE mapaddr; /* Address at which ELF segments (either main app and DSO) are mapped into */
enum {elf_lib, elf_executable,program_interpreter, loaded_file} libtype;
struct dyn_elf * symbol_scope;
unsigned short usage_count;