diff options
| author | David 'Digit' Turner <digit@google.com> | 2011-08-22 19:50:51 +0200 |
|---|---|---|
| committer | David 'Digit' Turner <digit@google.com> | 2011-08-22 19:53:10 +0200 |
| commit | 58246b7067b4e1a0b3ce48ccd94331f6fd8fa7cc (patch) | |
| tree | e5f86c8d5a99f7387f28f5b12c06392d381f9dc8 /libc/arch-arm/bionic/libgcc_compat.c | |
| parent | d50225ad20b4510892dc5f2306b64f04bab6e711 (diff) | |
| download | bionic-58246b7067b4e1a0b3ce48ccd94331f6fd8fa7cc.zip bionic-58246b7067b4e1a0b3ce48ccd94331f6fd8fa7cc.tar.gz bionic-58246b7067b4e1a0b3ce48ccd94331f6fd8fa7cc.tar.bz2 | |
libc: Add __aeabi_f2uiz to libgcc_compat.c
This patch ensure that __aeabi_f2uiz is embedded in our C library.
This is needed to avoid breaking certain applications when they are
loaded in ICS. It is likely that the issue is due to mis-linked
binaries generated with the stand-alone toolchain (the problem
should not exist if you use ndk-build), but this fix is easier
than asking all app developers to fix their custom build system.
If you want more technical details, read the comments inside
libgcc_compat.c
Change-Id: I59ac1fc781ecb70b90b5573c5a3c67560ca8f270
Diffstat (limited to 'libc/arch-arm/bionic/libgcc_compat.c')
| -rw-r--r-- | libc/arch-arm/bionic/libgcc_compat.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/libc/arch-arm/bionic/libgcc_compat.c b/libc/arch-arm/bionic/libgcc_compat.c index 886d025..d184566 100644 --- a/libc/arch-arm/bionic/libgcc_compat.c +++ b/libc/arch-arm/bionic/libgcc_compat.c @@ -30,7 +30,7 @@ * dynamic linker to copy their definition into the final libc.so binary. * * They are required to ensure backwards binary compatibility with - * Android 1.5 and Android 1.6 system images. Some applications built + * Android 1.5, 1.6 and even 3.0 system images. Some applications built * using the NDK require them to be here. * * Now, for a more elaborate description of the issue: @@ -68,6 +68,11 @@ * applications that were generated with a previous version of the NDK * still need all 1.5/1.6 helper functions in libc.so and libn.so * + * After 3.2, the toolchain was updated again, adding __aeabi_f2uiz to the + * list of requirements. Technically, this is due to mis-linked NDK libraries + * but it is easier to add a single function here than asking several app + * developers to fix their build. + * * Final note: some of the functions below should really be in libm.so to * completely reflect the state of 1.5/1.6 system images. However, * since libm.so depends on libc.so, it's easier to put all of @@ -96,6 +101,7 @@ XX(__aeabi_dsub) \ XX(__aeabi_f2d) \ XX(__aeabi_f2iz) \ + XX(__aeabi_f2uiz) \ XX(__aeabi_fadd) \ XX(__aeabi_fcmpun) \ XX(__aeabi_fdiv) \ |
