bionic: update memmove for 32 bits atomic

When src/dst are 32bits aligned, the updated memmove will guarantee
32bits atomic.

Change-Id: I21cb77451270d061b32e3e2d2fda22e7e373b7ff
Fix build for x86. Remove duplicate mcmchr from Android.mk. Other implemented in arch-x86/x86.mk

Change-Id: I90a562960b214dd02b015d3e2715f711907ae9e8
Remove the dependency on the non-uapi __kernel_nlink_t.

The kernel doesn't have an nlink_t; it just uses the equivalent of
uint32_t. We already had a usable __nlink_t in the C library, so
let's just define our nlink_t in terms of __nlink_t, which is what
__nlink_t was meant for anyway.

Note that our struct stat just follows the kernel, and doesn't refer
to nlink_t anyway.

Change-Id: I6f51188d188fab975e286d6f8945fe746200b8d4
DNS: make the same ip type DNS query as the interface address type

Since dns query happens on non-default interface, only query the
 address type that the interface has;otherwise the dns results
 might not be usable.

CRs-fixed: 694805
Change-Id: I4ce900507bf18a9f60a2971cf496aa7c930d540b
Revert "DNS: make the same ip type DNS query as the interface address type"

This reverts commit 53c2af91d6bc2e44c53aea98a06a76834e59fe09.
The reverted commit broke vpn connect.

Change-Id: I7e80dcf1fa1ba86effbe7716d50a5a08be7898ad
libc: Add cortex-a53 bionic code

Add cortex-a53 makefile. Currently it
uses cortex-a15 bionic code.

Change-Id: I1401b54b6c61d17782dff827d69f92b35a4f5c4f
msm8916: Enable QCOM bionic optimizations

Enable QCOM bionic optimizations for 8916.
Define QCOM_NEON_OPTIMIZATION for using QCOM specific
bionic optimizations.

Change-Id: I77cb7380ed2eed42a94cdf8f2ff04e800ff75092
Use memmove from krait for cortex-a53 target

Other functions are still as from cortex-a15 as originally configured.

Change-Id: If69348fc2c52cd04536e67a6aa650743459d75d4
Separating __set_errno into a different library so we can hook it in hybris

__set_errno is one of the function calls that will end up using TLS, so we
need to isolate it in a separated library to be able to hook it in hybris.

Change-Id: Iee08c7de51eb67188156705d176c4d3abc7b923a
Signed-off-by: Ricardo Salveti de Araujo <ricardo.salveti@canonical.com>
/dev/alog migration

Needed as /dev/log is reserved for Ubuntu.

Change-Id: I01cc15cd5fc44c66f962baa851c174947eaf8772
Signed-off-by: Jani Monoses <jani@ubuntu.com>
Signed-off-by: Ricardo Salveti de Araujo <ricardo.salveti@canonical.com>
_system_properties.h: adding PROP_MSG_GETPROP and PROP_MSG_LISTPROP

Change-Id: I8d586ad20b4e23b5063a745960c7f5a0fdb31283
Signed-off-by: Sergio Schvezov <sergio.schvezov@canonical.com>
Signed-off-by: Ricardo Salveti de Araujo <ricardo.salveti@canonical.com>
bionic_tls.h: shifting TLS slots to avoid conflicts with libc/hybris

Change-Id: Idf503fe8fa0a24edf4dbbabaa8d3a1c2d1f60295
Signed-off-by: Ricardo Salveti de Araujo <ricardo.salveti@canonical.com>
system_properties.c: returning empty value in case it's called from Ubuntu

As it can't access the memory map, and /dev/__properties__ is not
available unless you're inside the Android container.

Change-Id: I1b9e161011d913cc10d6734c8ae7b9991d7fa4cb
Signed-off-by: Ricardo Salveti de Araujo <ricardo.salveti@canonical.com>
netdb.h: also defining android_gethostbyaddrforiface_proxy

Fix:
bionic/libc/netbsd/net/getnameinfo.c:164:4: warning: implicit declaration
of function 'android_gethostbyaddrforiface_proxy' [-Wimplicit-function-declaration]

Change-Id: I0bdedd486698c9ad4edf62d204264c4d23281b18
Signed-off-by: Ricardo Salveti de Araujo <ricardo.salveti@canonical.com>