[uClibc-cvs] uClibc/ldso/include dl-elf.h, 1.9, 1.10 dl-hash.h, 1.3, 1.4
Erik Andersen
andersen at uclibc.org
Sat Feb 14 11:30:33 UTC 2004
- Previous message: [uClibc-cvs] uClibc/utils ldd.c,1.10,1.11
- Next message: [uClibc-cvs] uClibc/ldso/ldso dl-elf.c, 1.65, 1.66 dl-hash.c, 1.17, 1.18 dl-startup.c, 1.5, 1.6 ldso.c, 1.92, 1.93
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
Update of /var/cvs/uClibc/ldso/include
In directory nail:/tmp/cvs-serv9702/include
Modified Files:
dl-elf.h dl-hash.h
Log Message:
Joakim Tjernlund writes:
Hi it is me again.
This is the latest ldso patch. the NEW weak symbol handling works now
with a little special handling in _dl_find_hash(). You get to chose
if you want the new or old handling :)
There was 2 missing _dl_check_if_named_library_is_loaded() calls in _dlopen().
I then disabled the _dl_check_if_named_library_is_loaded() in dl-elf.c since
it is rendundant.
Question, why does some _dl_linux_resolver(), like i386, have 2 calls
to _dl_find_hash()? I think that is wrong, isn't it?
I really hope you can check this out soon ...
Index: dl-hash.h
===================================================================
RCS file: /var/cvs/uClibc/ldso/include/dl-hash.h,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -d -r1.3 -r1.4
--- dl-hash.h 10 Feb 2004 11:47:57 -0000 1.3
+++ dl-hash.h 14 Feb 2004 11:30:30 -0000 1.4
@@ -67,9 +67,8 @@
char * loadaddr, unsigned long * dynamic_info,
unsigned long dynamic_addr, unsigned long dynamic_size);
-enum caller_type{symbolrel=0,copyrel=1,resolver=2};
extern char * _dl_find_hash(const char * name, struct dyn_elf * rpnt1,
- struct elf_resolve * f_tpnt, enum caller_type);
+ int type_class);
extern int _dl_linux_dynamic_link(void);
Index: dl-elf.h
===================================================================
RCS file: /var/cvs/uClibc/ldso/include/dl-elf.h,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -d -r1.9 -r1.10
--- dl-elf.h 10 Feb 2004 09:26:46 -0000 1.9
+++ dl-elf.h 14 Feb 2004 11:30:30 -0000 1.10
@@ -92,6 +92,19 @@
# define UNSUPPORTED_RELOC_STR "RELA"
#endif
+/* Reloc type classes as returned by elf_machine_type_class().
+ ELF_RTYPE_CLASS_PLT means this reloc should not be satisfied by
+ some PLT symbol, ELF_RTYPE_CLASS_COPY means this reloc should not be
+ satisfied by any symbol in the executable. Some architectures do
+ not support copy relocations. In this case we define the macro to
+ zero so that the code for handling them gets automatically optimized
+ out. */
+#define ELF_RTYPE_CLASS_PLT 1
+#ifndef DL_NO_COPY_RELOCS
+# define ELF_RTYPE_CLASS_COPY 2
+#else
+# define ELF_RTYPE_CLASS_COPY 0
+#endif
/* Convert between the Linux flags for page protections and the
- Previous message: [uClibc-cvs] uClibc/utils ldd.c,1.10,1.11
- Next message: [uClibc-cvs] uClibc/ldso/ldso dl-elf.c, 1.65, 1.66 dl-hash.c, 1.17, 1.18 dl-startup.c, 1.5, 1.6 ldso.c, 1.92, 1.93
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
More information about the uClibc-cvs
mailing list