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