Age | Commit message (Collapse) | Author |
|
Also fix warnings, and make mips64 in unsupported arch
Change-Id: I69241bca109b5f835b61235a160c4f02a838d7bc
|
|
|
|
- Add support for aarch64 relocation types, including DT_RELA.
- Refactor relocation application to make handling rel and rela easier.
- Fix a handful types incorrectly sized for 64bit.
- Define ELF_R_TYPE and ELF_R_SYM if not in system headers.
- Strdup() strings passed to putenv() in one unit test.
Change-Id: I295847e6ed8da046a3f785b4a564fc0a1dcd21bf
|
|
Clang builds for arm32 generate calls to isnanf. Android's libm.so isnanf
is weak. Android's dlsym() returns NULL for weak symbols. In libm.so,
isnanf is a synonym for a (strong) __isnanf.
If resolving isnanf from Android libm.so fails, retry __isnanf.
http://code.google.com/p/chromium/issues/detail?id=376828
Change-Id: Ib04f933e6a317e5a65cd2762b02027b0388b0e4a
Signed-off-by: Simon Baldwin <simonb@google.com>
|
|
Change-Id: I7cf19c479b4f9bec3e36d5db8bd958f1d49d2b58
|
|
Change-Id: Idac06d43fe0af3b157b5c702c86282b51fab7d40
|
|
Add support for callbacks and callback posters. Callbacks can execute
code later and/or on different threads. Use callbacks, where enabled,
to update r_map pages used by gdb.
Change-Id: If7e7f565248d8f83095c7bd78f1dd294216ba631
|
|
Use strrchr() instead of strchr() to really find the basename of
the library path.
+ Augment unit test to catch regressions.
Thanks to Wei James for finding this (https://codereview.appspot.com/87480043/)
Change-Id: Iafae4606241324eb2d47007157ced84b780a3ca8
|
|
It's no longer necessary since <elf.h> included from elf_traits.h
will include it for us.
BUG=NONE
Change-Id: Ie36630379b2aa9e580a382d7cacbccd91f07013f
|
|
Change-Id: I798d1993fe1a214ef16bb11a49278f6021451e19
|
|
This patch changes the way shared RELRO section are implemented to
make them less confusing with regards of ashmem region ownership,
and support "relocated RELROs". Now:
- The client explicitely creates the shared RELRO region with
crazy_library_create_shared_relro(), this allocates an Ashmem
region, but does not map it in the address space.
The client becomes the owner of the Ashmem file descriptor and
is now responsible for closing it.
- The client maps a shared RELRO region with
crazy_library_use_shared_relro(), as before, this doesn't transfer
ownership of the Ashmem region file descriptor to the library.
Note that this function does _not_ close the file descriptor,
unlike the previous crazy_library_use_relro_sharing().
- crazy_library_create_shared_relro() also supports "relocated RELRO",
i.e. when one wants to create a RELRO section that will be populated
with data corresponding to a _different_ load address than what the
library is currently using in the current process.
A new unit test (test_relocated_shared_relro) has been added to
test this feature.
+ Some internal refactoring, to prepare for future work (e.g. the ability
to lookup symbols directly into system libraries).
Change-Id: I597b99889115d1d504ec2d172a9d259edbeee823
|
|
This patch adds a new NDK support static library, named crazy_linker,
that implements a custom dynamic linker, to work-around limitations
of the system one.
See sources/android/crazy_linker/README.TXT for all details.
+ Add a new device test (crazy_linker) to run all unit and functional
tests for the linker.
+ Fix a bug in minitest's formatting function and reformat the code
a bit.
This code has been written for Chrome, but could also benefit other
applications that use multiple-processes and large shared libraries
at the same time. For more details, see:
https://code.google.com/p/chromium/issues/detail?id=287739
Change-Id: Ibefbbabedeb68d023b3b4c3b8392bd76b7baa1c2
|